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

Last change on this file since 2731 was 2731, checked in by rblod, 10 years ago

Changes for Agrif in MPI

  • Property svn:keywords set to Id
File size: 9.1 KB
Line 
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_detect
30C
31        external Agrif_InitWorkspace
32        external Agrif_probdim_modtype_def
33        external Agrif_clustering_def
34        external Agrif_comm_def
35C     Interface                       
36      INTERFACE
37      SUBROUTINE  Sub_Loop_Agrif_InvLoc(indloc,nprocloc,i,
38     &            indglob,njmppt,nimppt)
39      INTEGER :: indglob
40      INTEGER :: indloc
41      INTEGER :: nprocloc
42      INTEGER :: i
43
44      INTEGER, ALLOCATABLE, Dimension(:) :: njmppt
45      INTEGER, ALLOCATABLE, Dimension(:) :: nimppt
46      END SUBROUTINE
47      END INTERFACE
48      Interface
49         Subroutine Agrif_Set_numberofcells(Agrif_Gr)
50         Use Agrif_Types, Only : Agrif_grid
51         TYPE(Agrif_Grid), Pointer :: Agrif_Gr   ! Pointer on the current grid 
52         End Subroutine Agrif_Set_numberofcells
53      End interface
54      Interface
55         Subroutine Agrif_Get_numberofcells(Agrif_Gr)
56         Use Agrif_Types, Only : Agrif_grid
57         TYPE(Agrif_Grid), Pointer :: Agrif_Gr   ! Pointer on the current grid 
58         End Subroutine Agrif_Get_numberofcells
59      End interface
60      Interface
61         Subroutine Agrif_Allocationcalls(Agrif_Gr)
62         Use Agrif_Types, Only : Agrif_grid
63         TYPE(Agrif_Grid), Pointer :: Agrif_Gr   ! Pointer on the current grid 
64         End Subroutine Agrif_Allocationcalls
65      End interface
66C   
67      End Module Agrif_link
68C     **************************************************************************
69CCC   Function Agrif_parent
70C        modify by conv. To use : un_parent = Agrif_Parent(un)
71C     **************************************************************************
72CCC   Function Agrif_Get_Coarse_Grid
73C        modify by conv. To use : un_Mygrid = Agrif_Get_Coarse_grid(un)
74C     **************************************************************************
75CCC   Function Agrif_Rhox
76C        modify by conv. To use : var = Agrif_Rhox()
77C                    REAL(Agrif_Curgrid % spaceref(1))
78C     **************************************************************************
79CCC   Function Agrif_Parent_Rhox
80C        modify by conv. To use : var = Agrif_Parent_Rhox()
81C                    REAL(Agrif_Curgrid % parent % spaceref(1))
82C     **************************************************************************
83CCC   Function Agrif_Irhox
84C        modify by conv. To use : var = Agrif_Parent_IRhox()
85C                    Agrif_Curgrid % spaceref(1)
86C     **************************************************************************
87CCC   Function Agrif_Parent_Irhox
88C        modify by conv. To use : var = Agrif_Parent_IRhox()
89C                    Agrif_Curgrid % parent % spaceref(1)
90C     **************************************************************************
91CCC   Function Agrif_Rhoy
92C        modify by conv. To use : var = Agrif_Rhoy()
93C                    REAL(Agrif_Curgrid % spaceref(2))
94C     **************************************************************************
95CCC   Function Agrif_Parent_Rhoy
96C        modify by conv. To use : var = Agrif_Parent_Rhoy()
97C                    REAL(Agrif_Curgrid % parent % spaceref(2))
98C     **************************************************************************
99CCC   Function Agrif_Irhoy
100C        modify by conv. To use : var = Agrif_Parent_IRhoy()
101C                    Agrif_Curgrid % spaceref(2)
102C     **************************************************************************
103CCC   Function Agrif_Parent_Irhoy
104C        modify by conv. To use : var = Agrif_Parent_IRhoy()
105C                    Agrif_Curgrid % parent % spaceref(2)
106C     **************************************************************************
107CCC   Function Agrif_Rhoz
108C        modify by conv. To use : var = Agrif_Rhoz()
109C                    REAL(Agrif_Curgrid % spaceref(3))
110C     **************************************************************************
111CCC   Function Agrif_Parent_Rhoz
112C        modify by conv. To use : var = Agrif_Parent_Rhoz()
113C                    REAL(Agrif_Curgrid % parent % spaceref(3))
114C     **************************************************************************
115CCC   Function Agrif_Irhoz
116C        modify by conv. To use : var = Agrif_Parent_IRhoz()
117C                    Agrif_Curgrid % spaceref(3)
118C     **************************************************************************
119CCC   Function Agrif_Parent_Irhoz
120C        modify by conv. To use : var = Agrif_Parent_IRhoz()
121C                    Agrif_Curgrid % parent % spaceref(3)
122C     **************************************************************************
123CCC   Function Agrif_NearCommonBorderX
124C        modify by conv. To use : var = Agrif_NearCommonBorderX()
125C                       AGRIF_CURGRID % NearRootBorder(1)
126C     **************************************************************************
127CCC   Function Agrif_NearCommonBorderY
128C        modify by conv. To use : var = Agrif_NearCommonBorderY()
129C                       AGRIF_CURGRID % NearRootBorder(2)
130C     **************************************************************************
131CCC   Function Agrif_NearCommonBorderZ
132C        modify by conv. To use : var = Agrif_NearCommonBorderZ()
133C                       AGRIF_CURGRID % NearRootBorder(3)
134C     **************************************************************************
135CCC   Function Agrif_DistantCommonBorderX
136C        modify by conv. To use : var = Agrif_DistantCommonBorderX()
137C                       AGRIF_CURGRID % DistantRootBorder(1)
138C     **************************************************************************
139CCC   Function Agrif_DistantCommonBorderY
140C        modify by conv. To use : var = Agrif_DistantCommonBorderY()
141C                       AGRIF_CURGRID % DistantRootBorder(2)
142C     **************************************************************************
143CCC   Function Agrif_DistantCommonBorderZ
144C        modify by conv. To use : var = Agrif_DistantCommonBorderZ()
145C                       AGRIF_CURGRID % DistantRootBorder(3)
146C     **************************************************************************
147CCC   Function Agrif_Nb_Step
148C        modify by conv. To use : var = Agrif_Nb_Step()
149C                          AGRIF_CURGRID % ngridstep
150C     **************************************************************************
151CCC   Function Agrif_Nb_Fine_Grids
152C        modify by conv. To use : var = Agrif_Nb_Fine_Grids()
153C                         Agrif_nbfixedgrids 
154C     **************************************************************************
155CCC   Function Agrif_Ix
156C        modify by conv. To use : var = Agrif_Ix()
157C                         Agrif_CURGRID % ix(1) 
158C     **************************************************************************
159CCC   Function Agrif_Parent_Ix
160C        modify by conv. To use : var = Agrif_Parent_Ix()
161C                        Agrif_CURGRID % parent % ix(1) 
162C     **************************************************************************
163CCC   Function Agrif_Iy
164C        modify by conv. To use : var = Agrif_Iy()
165C                        AGRIF_CURGRID % ix(2) 
166C     **************************************************************************
167CCC   Function Agrif_Parent_Iy
168C        modify by conv. To use : var = Agrif_Parent_Iy()
169C                       Agrif_CURGRID % parent % ix(2) 
170C     **************************************************************************
171CCC   Function Agrif_Iz
172C        modify by conv. To use : var = Agrif_Iz()
173C                      AGRIF_CURGRID % ix(3) 
174C     **************************************************************************
175CCC   Function Agrif_Parent_Iz
176C        modify by conv. To use : var = Agrif_Parent_Iz()
177C                     Agrif_CURGRID % parent % ix(3) 
178C     **************************************************************************
179CCC   Function Agrif_Get_grid_id
180C        modify by conv. To use : var = Agrif_Get_grid_id()
181C                    Agrif_CURGRID % grid_id
182C     **************************************************************************
183CCC   Function Agrif_Get_parent_id
184C        modify by conv. To use : var = Agrif_Get_parent_id()
185C                    Agrif_CURGRID % parent % grid_id
186C     **************************************************************************
Note: See TracBrowser for help on using the repository browser.