1 | C AGRIF (Adaptive Grid Refinement In Fortran) |
---|
2 | C |
---|
3 | C Copyright (C) 2003 Laurent Debreu (Laurent.Debreu@imag.fr) |
---|
4 | C Christophe Vouland (Christophe.Vouland@imag.fr) |
---|
5 | C |
---|
6 | C This program is free software; you can redistribute it and/or modify |
---|
7 | C it under the terms of the GNU General Public License as published by |
---|
8 | C the Free Software Foundation; either version 2 of the License, or |
---|
9 | C (at your option) any later version. |
---|
10 | C |
---|
11 | C This program is distributed in the hope that it will be useful, |
---|
12 | C but WITHOUT ANY WARRANTY; without even the implied warranty of |
---|
13 | C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
---|
14 | C GNU General Public License for more details. |
---|
15 | C |
---|
16 | C You should have received a copy of the GNU General Public License |
---|
17 | C along with this program; if not, write to the Free Software |
---|
18 | C Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
---|
19 | C |
---|
20 | C |
---|
21 | Module Agrif_link |
---|
22 | C |
---|
23 | CCC Description: |
---|
24 | CCC This module is used to link AGRIF files to the model |
---|
25 | C |
---|
26 | C Modules used: |
---|
27 | C |
---|
28 | c external Agrif_InitValues |
---|
29 | c external Agrif_detect |
---|
30 | C |
---|
31 | external Agrif_InitWorkspace |
---|
32 | external Agrif_probdim_modtype_def |
---|
33 | external Agrif_clustering_def |
---|
34 | external Agrif_comm_def |
---|
35 | C 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 |
---|
66 | C |
---|
67 | End Module Agrif_link |
---|
68 | C ************************************************************************** |
---|
69 | CCC Function Agrif_parent |
---|
70 | C modify by conv. To use : un_parent = Agrif_Parent(un) |
---|
71 | C ************************************************************************** |
---|
72 | CCC Function Agrif_Get_Coarse_Grid |
---|
73 | C modify by conv. To use : un_Mygrid = Agrif_Get_Coarse_grid(un) |
---|
74 | C ************************************************************************** |
---|
75 | CCC Function Agrif_Rhox |
---|
76 | C modify by conv. To use : var = Agrif_Rhox() |
---|
77 | C REAL(Agrif_Curgrid % spaceref(1)) |
---|
78 | C ************************************************************************** |
---|
79 | CCC Function Agrif_Parent_Rhox |
---|
80 | C modify by conv. To use : var = Agrif_Parent_Rhox() |
---|
81 | C REAL(Agrif_Curgrid % parent % spaceref(1)) |
---|
82 | C ************************************************************************** |
---|
83 | CCC Function Agrif_Irhox |
---|
84 | C modify by conv. To use : var = Agrif_Parent_IRhox() |
---|
85 | C Agrif_Curgrid % spaceref(1) |
---|
86 | C ************************************************************************** |
---|
87 | CCC Function Agrif_Parent_Irhox |
---|
88 | C modify by conv. To use : var = Agrif_Parent_IRhox() |
---|
89 | C Agrif_Curgrid % parent % spaceref(1) |
---|
90 | C ************************************************************************** |
---|
91 | CCC Function Agrif_Rhoy |
---|
92 | C modify by conv. To use : var = Agrif_Rhoy() |
---|
93 | C REAL(Agrif_Curgrid % spaceref(2)) |
---|
94 | C ************************************************************************** |
---|
95 | CCC Function Agrif_Parent_Rhoy |
---|
96 | C modify by conv. To use : var = Agrif_Parent_Rhoy() |
---|
97 | C REAL(Agrif_Curgrid % parent % spaceref(2)) |
---|
98 | C ************************************************************************** |
---|
99 | CCC Function Agrif_Irhoy |
---|
100 | C modify by conv. To use : var = Agrif_Parent_IRhoy() |
---|
101 | C Agrif_Curgrid % spaceref(2) |
---|
102 | C ************************************************************************** |
---|
103 | CCC Function Agrif_Parent_Irhoy |
---|
104 | C modify by conv. To use : var = Agrif_Parent_IRhoy() |
---|
105 | C Agrif_Curgrid % parent % spaceref(2) |
---|
106 | C ************************************************************************** |
---|
107 | CCC Function Agrif_Rhoz |
---|
108 | C modify by conv. To use : var = Agrif_Rhoz() |
---|
109 | C REAL(Agrif_Curgrid % spaceref(3)) |
---|
110 | C ************************************************************************** |
---|
111 | CCC Function Agrif_Parent_Rhoz |
---|
112 | C modify by conv. To use : var = Agrif_Parent_Rhoz() |
---|
113 | C REAL(Agrif_Curgrid % parent % spaceref(3)) |
---|
114 | C ************************************************************************** |
---|
115 | CCC Function Agrif_Irhoz |
---|
116 | C modify by conv. To use : var = Agrif_Parent_IRhoz() |
---|
117 | C Agrif_Curgrid % spaceref(3) |
---|
118 | C ************************************************************************** |
---|
119 | CCC Function Agrif_Parent_Irhoz |
---|
120 | C modify by conv. To use : var = Agrif_Parent_IRhoz() |
---|
121 | C Agrif_Curgrid % parent % spaceref(3) |
---|
122 | C ************************************************************************** |
---|
123 | CCC Function Agrif_NearCommonBorderX |
---|
124 | C modify by conv. To use : var = Agrif_NearCommonBorderX() |
---|
125 | C AGRIF_CURGRID % NearRootBorder(1) |
---|
126 | C ************************************************************************** |
---|
127 | CCC Function Agrif_NearCommonBorderY |
---|
128 | C modify by conv. To use : var = Agrif_NearCommonBorderY() |
---|
129 | C AGRIF_CURGRID % NearRootBorder(2) |
---|
130 | C ************************************************************************** |
---|
131 | CCC Function Agrif_NearCommonBorderZ |
---|
132 | C modify by conv. To use : var = Agrif_NearCommonBorderZ() |
---|
133 | C AGRIF_CURGRID % NearRootBorder(3) |
---|
134 | C ************************************************************************** |
---|
135 | CCC Function Agrif_DistantCommonBorderX |
---|
136 | C modify by conv. To use : var = Agrif_DistantCommonBorderX() |
---|
137 | C AGRIF_CURGRID % DistantRootBorder(1) |
---|
138 | C ************************************************************************** |
---|
139 | CCC Function Agrif_DistantCommonBorderY |
---|
140 | C modify by conv. To use : var = Agrif_DistantCommonBorderY() |
---|
141 | C AGRIF_CURGRID % DistantRootBorder(2) |
---|
142 | C ************************************************************************** |
---|
143 | CCC Function Agrif_DistantCommonBorderZ |
---|
144 | C modify by conv. To use : var = Agrif_DistantCommonBorderZ() |
---|
145 | C AGRIF_CURGRID % DistantRootBorder(3) |
---|
146 | C ************************************************************************** |
---|
147 | CCC Function Agrif_Nb_Step |
---|
148 | C modify by conv. To use : var = Agrif_Nb_Step() |
---|
149 | C AGRIF_CURGRID % ngridstep |
---|
150 | C ************************************************************************** |
---|
151 | CCC Function Agrif_Nb_Fine_Grids |
---|
152 | C modify by conv. To use : var = Agrif_Nb_Fine_Grids() |
---|
153 | C Agrif_nbfixedgrids |
---|
154 | C ************************************************************************** |
---|
155 | CCC Function Agrif_Ix |
---|
156 | C modify by conv. To use : var = Agrif_Ix() |
---|
157 | C Agrif_CURGRID % ix(1) |
---|
158 | C ************************************************************************** |
---|
159 | CCC Function Agrif_Parent_Ix |
---|
160 | C modify by conv. To use : var = Agrif_Parent_Ix() |
---|
161 | C Agrif_CURGRID % parent % ix(1) |
---|
162 | C ************************************************************************** |
---|
163 | CCC Function Agrif_Iy |
---|
164 | C modify by conv. To use : var = Agrif_Iy() |
---|
165 | C AGRIF_CURGRID % ix(2) |
---|
166 | C ************************************************************************** |
---|
167 | CCC Function Agrif_Parent_Iy |
---|
168 | C modify by conv. To use : var = Agrif_Parent_Iy() |
---|
169 | C Agrif_CURGRID % parent % ix(2) |
---|
170 | C ************************************************************************** |
---|
171 | CCC Function Agrif_Iz |
---|
172 | C modify by conv. To use : var = Agrif_Iz() |
---|
173 | C AGRIF_CURGRID % ix(3) |
---|
174 | C ************************************************************************** |
---|
175 | CCC Function Agrif_Parent_Iz |
---|
176 | C modify by conv. To use : var = Agrif_Parent_Iz() |
---|
177 | C Agrif_CURGRID % parent % ix(3) |
---|
178 | C ************************************************************************** |
---|
179 | CCC Function Agrif_Get_grid_id |
---|
180 | C modify by conv. To use : var = Agrif_Get_grid_id() |
---|
181 | C Agrif_CURGRID % grid_id |
---|
182 | C ************************************************************************** |
---|
183 | CCC Function Agrif_Get_parent_id |
---|
184 | C modify by conv. To use : var = Agrif_Get_parent_id() |
---|
185 | C Agrif_CURGRID % parent % grid_id |
---|
186 | C ************************************************************************** |
---|