New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
modlinktomodel.F in trunk/NEMOGCM/EXTERNAL/AGRIF/AGRIF_FILES – NEMO

source: trunk/NEMOGCM/EXTERNAL/AGRIF/AGRIF_FILES/modlinktomodel.F @ 2715

Last change on this file since 2715 was 2715, checked in by rblod, 13 years ago

First attempt to put dynamic allocation on the trunk

  • Property svn:keywords set to Id
File size: 8.7 KB
RevLine 
[1901]1C     AGRIF (Adaptive Grid Refinement In Fortran)
2C
3C     Copyright (C) 2003 Laurent Debreu (Laurent.Debreu@imag.fr)
4C                        Christophe Vouland (Christophe.Vouland@imag.fr)   
5C
6C     This program is free software; you can redistribute it and/or modify
7C     it under the terms of the GNU General Public License as published by
8C     the Free Software Foundation; either version 2 of the License, or
9C     (at your option) any later version.
10C
11C     This program is distributed in the hope that it will be useful,
12C     but WITHOUT ANY WARRANTY; without even the implied warranty of
13C     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14C     GNU General Public License for more details.
15C
16C     You should have received a copy of the GNU General Public License
17C     along with this program; if not, write to the Free Software
18C     Foundation, Inc., 59 Temple Place -  Suite 330, Boston, MA 02111-1307, USA.
19C
20C
21      Module Agrif_link
22C
23CCC   Description:
24CCC   This module is used to link AGRIF files to the model
25C
26C     Modules used: 
27C
28c        external Agrif_InitValues
29c        external Agrif_InitWorkspace
30c        external Agrif_detect
31C
32        external Agrif_probdim_modtype_def
33        external Agrif_clustering_def
34C     Interface                       
35      Interface
36         Subroutine Agrif_Set_numberofcells(Agrif_Gr)
37         Use Agrif_Types, Only : Agrif_grid
38         TYPE(Agrif_Grid), Pointer :: Agrif_Gr   ! Pointer on the current grid 
39         End Subroutine Agrif_Set_numberofcells
40      End interface
41      Interface
42         Subroutine Agrif_Get_numberofcells(Agrif_Gr)
43         Use Agrif_Types, Only : Agrif_grid
44         TYPE(Agrif_Grid), Pointer :: Agrif_Gr   ! Pointer on the current grid 
45         End Subroutine Agrif_Get_numberofcells
46      End interface
47      Interface
48         Subroutine Agrif_Allocationcalls(Agrif_Gr)
49         Use Agrif_Types, Only : Agrif_grid
50         TYPE(Agrif_Grid), Pointer :: Agrif_Gr   ! Pointer on the current grid 
51         End Subroutine Agrif_Allocationcalls
52      End interface
53C   
54      End Module Agrif_link
55C     **************************************************************************
56CCC   Function Agrif_parent
57C        modify by conv. To use : un_parent = Agrif_Parent(un)
58C     **************************************************************************
59CCC   Function Agrif_Get_Coarse_Grid
60C        modify by conv. To use : un_Mygrid = Agrif_Get_Coarse_grid(un)
61C     **************************************************************************
62CCC   Function Agrif_Rhox
63C        modify by conv. To use : var = Agrif_Rhox()
64C                    REAL(Agrif_Curgrid % spaceref(1))
65C     **************************************************************************
66CCC   Function Agrif_Parent_Rhox
67C        modify by conv. To use : var = Agrif_Parent_Rhox()
68C                    REAL(Agrif_Curgrid % parent % spaceref(1))
69C     **************************************************************************
70CCC   Function Agrif_Irhox
71C        modify by conv. To use : var = Agrif_Parent_IRhox()
72C                    Agrif_Curgrid % spaceref(1)
73C     **************************************************************************
74CCC   Function Agrif_Parent_Irhox
75C        modify by conv. To use : var = Agrif_Parent_IRhox()
76C                    Agrif_Curgrid % parent % spaceref(1)
77C     **************************************************************************
78CCC   Function Agrif_Rhoy
79C        modify by conv. To use : var = Agrif_Rhoy()
80C                    REAL(Agrif_Curgrid % spaceref(2))
81C     **************************************************************************
82CCC   Function Agrif_Parent_Rhoy
83C        modify by conv. To use : var = Agrif_Parent_Rhoy()
84C                    REAL(Agrif_Curgrid % parent % spaceref(2))
85C     **************************************************************************
86CCC   Function Agrif_Irhoy
87C        modify by conv. To use : var = Agrif_Parent_IRhoy()
88C                    Agrif_Curgrid % spaceref(2)
89C     **************************************************************************
90CCC   Function Agrif_Parent_Irhoy
91C        modify by conv. To use : var = Agrif_Parent_IRhoy()
92C                    Agrif_Curgrid % parent % spaceref(2)
93C     **************************************************************************
94CCC   Function Agrif_Rhoz
95C        modify by conv. To use : var = Agrif_Rhoz()
96C                    REAL(Agrif_Curgrid % spaceref(3))
97C     **************************************************************************
98CCC   Function Agrif_Parent_Rhoz
99C        modify by conv. To use : var = Agrif_Parent_Rhoz()
100C                    REAL(Agrif_Curgrid % parent % spaceref(3))
101C     **************************************************************************
102CCC   Function Agrif_Irhoz
103C        modify by conv. To use : var = Agrif_Parent_IRhoz()
104C                    Agrif_Curgrid % spaceref(3)
105C     **************************************************************************
106CCC   Function Agrif_Parent_Irhoz
107C        modify by conv. To use : var = Agrif_Parent_IRhoz()
108C                    Agrif_Curgrid % parent % spaceref(3)
109C     **************************************************************************
110CCC   Function Agrif_NearCommonBorderX
111C        modify by conv. To use : var = Agrif_NearCommonBorderX()
112C                       AGRIF_CURGRID % NearRootBorder(1)
113C     **************************************************************************
114CCC   Function Agrif_NearCommonBorderY
115C        modify by conv. To use : var = Agrif_NearCommonBorderY()
116C                       AGRIF_CURGRID % NearRootBorder(2)
117C     **************************************************************************
118CCC   Function Agrif_NearCommonBorderZ
119C        modify by conv. To use : var = Agrif_NearCommonBorderZ()
120C                       AGRIF_CURGRID % NearRootBorder(3)
121C     **************************************************************************
122CCC   Function Agrif_DistantCommonBorderX
123C        modify by conv. To use : var = Agrif_DistantCommonBorderX()
124C                       AGRIF_CURGRID % DistantRootBorder(1)
125C     **************************************************************************
126CCC   Function Agrif_DistantCommonBorderY
127C        modify by conv. To use : var = Agrif_DistantCommonBorderY()
128C                       AGRIF_CURGRID % DistantRootBorder(2)
129C     **************************************************************************
130CCC   Function Agrif_DistantCommonBorderZ
131C        modify by conv. To use : var = Agrif_DistantCommonBorderZ()
132C                       AGRIF_CURGRID % DistantRootBorder(3)
133C     **************************************************************************
134CCC   Function Agrif_Nb_Step
135C        modify by conv. To use : var = Agrif_Nb_Step()
136C                          AGRIF_CURGRID % ngridstep
137C     **************************************************************************
138CCC   Function Agrif_Nb_Fine_Grids
139C        modify by conv. To use : var = Agrif_Nb_Fine_Grids()
140C                         Agrif_nbfixedgrids 
141C     **************************************************************************
142CCC   Function Agrif_Ix
143C        modify by conv. To use : var = Agrif_Ix()
144C                         Agrif_CURGRID % ix(1) 
145C     **************************************************************************
146CCC   Function Agrif_Parent_Ix
147C        modify by conv. To use : var = Agrif_Parent_Ix()
148C                        Agrif_CURGRID % parent % ix(1) 
149C     **************************************************************************
150CCC   Function Agrif_Iy
151C        modify by conv. To use : var = Agrif_Iy()
152C                        AGRIF_CURGRID % ix(2) 
153C     **************************************************************************
154CCC   Function Agrif_Parent_Iy
155C        modify by conv. To use : var = Agrif_Parent_Iy()
156C                       Agrif_CURGRID % parent % ix(2) 
157C     **************************************************************************
158CCC   Function Agrif_Iz
159C        modify by conv. To use : var = Agrif_Iz()
160C                      AGRIF_CURGRID % ix(3) 
161C     **************************************************************************
162CCC   Function Agrif_Parent_Iz
163C        modify by conv. To use : var = Agrif_Parent_Iz()
164C                     Agrif_CURGRID % parent % ix(3) 
165C     **************************************************************************
166CCC   Function Agrif_Get_grid_id
167C        modify by conv. To use : var = Agrif_Get_grid_id()
168C                    Agrif_CURGRID % grid_id
169C     **************************************************************************
170CCC   Function Agrif_Get_parent_id
171C        modify by conv. To use : var = Agrif_Get_parent_id()
172C                    Agrif_CURGRID % parent % grid_id
173C     **************************************************************************
Note: See TracBrowser for help on using the repository browser.