00001 subroutine domainInfo
00002
00003
00004 use global
00005
00006
00007 implicit none
00008
00009
00010 integer,pointer :: minI,minJ,maxI,maxJ
00011
00012 integer,pointer :: nx,ny
00013
00014 integer,pointer :: allBC
00015
00016 real(8),pointer :: relXcoor,relYcoor
00017
00018 minI=>myModel%physics(currentPhysics)%domain(currentDomain)%minI
00019 maxI=>myModel%physics(currentPhysics)%domain(currentDomain)%maxI
00020 minJ=>myModel%physics(currentPhysics)%domain(currentDomain)%minJ
00021 maxJ=>myModel%physics(currentPhysics)%domain(currentDomain)%maxJ
00022
00023
00024 nx=>myModel%physics(currentPhysics)%domain(currentDomain)%nx
00025 ny=>myModel%physics(currentPhysics)%domain(currentDomain)%ny
00026
00027 numberOfGhostCells=>myModel%physics(currentPhysics)%domain(currentDomain)%numberOfGhostCells
00028
00029 allBC=>myModel%physics(currentPhysics)%domain(currentDomain)%allBC
00030
00031 relXcoor=>myModel%physics(currentPhysics)%domain(currentDomain)%relXcoor
00032 relYcoor=>myModel%physics(currentPhysics)%domain(currentDomain)%relYcoor
00033
00034 Lx=>myModel%physics(currentPhysics)%domain(currentDomain)%Lx
00035 Ly=>myModel%physics(currentPhysics)%domain(currentDomain)%Ly
00036
00037
00038
00039
00040
00041 select case(currentPhysics)
00042
00043 case(1)
00044
00045
00046 select case(currentDomain)
00047
00048
00049 case(1)
00050
00051 nx=3
00052 ny=6
00053 allBC=3
00054
00055 relXcoor=0.d0
00056 relYcoor=0.d0
00057
00058 Lx=1.d0
00059 Ly=2.5d0
00060
00061
00062
00063
00064
00065
00066
00067
00068
00069
00070 case(2)
00071
00072
00073 nx=5
00074 ny=5
00075 allBC=4
00076
00077 relXcoor=0.75d0
00078 relYcoor=0.25d0
00079
00080 Lx=2.d0
00081 Ly=2.d0
00082
00083
00084
00085
00086
00087 case default
00088
00089 print*,'!!!!!!!!!!!!!!!!!!!!!!!!!'
00090 print*,'invalid domain definition'
00091 print*,'demona stop:domainInfo'
00092 stop
00093
00094
00095 end select
00096
00097
00098
00099 case(2)
00100
00101
00102 select case(currentDomain)
00103
00104 case(1)
00105
00106 nx=3
00107 ny=6
00108 allBC=5
00109
00110 relXcoor=0.d0
00111 relYcoor=0.d0
00112
00113 Lx=1.d0
00114 Ly=2.5d0
00115
00116
00117
00118
00119
00120
00121 case default
00122
00123 print*,'!!!!!!!!!!!!!!!!!!!!!!!!!'
00124 print*,'invalid domain definition'
00125 print*,'demona stop:domainInfo'
00126 stop
00127
00128
00129
00130
00131 end select
00132
00133
00134
00135
00136
00137
00138
00139
00140
00141
00142
00143 case(3)
00144
00145
00146 select case(currentDomain)
00147
00148 case(1)
00149
00150 nx=5
00151 ny=5
00152 allBC=4
00153
00154 relXcoor=0.d0
00155 relYcoor=0.d0
00156
00157 Lx=2.d0
00158 Ly=2.d0
00159
00160
00161 case(2)
00162
00163 nx=3
00164 ny=6
00165 allBC=3
00166
00167 relXcoor=1.75d0
00168 relYcoor=-0.25d0
00169
00170 Lx=1.d0
00171 Ly=2.5d0
00172
00173
00174 case default
00175
00176 print*,'!!!!!!!!!!!!!!!!!!!!!!!!!'
00177 print*,'invalid domain definition'
00178 print*,'demona stop:domainInfo'
00179 stop
00180
00181
00182 end select
00183
00184
00185
00186
00187
00188
00189
00190
00191 case default
00192
00193 print*,'!!!!!!!!!!!!!!!!!!!!!!!!!'
00194 print*,'invalid physics definition'
00195 print*,'demona stop:domainInfo'
00196 stop
00197
00198 end select
00199
00200
00201 minI=1
00202 minJ=1
00203 maxI=nx
00204 maxJ=ny
00205
00206
00207 if (dFX.eq.dFV) then
00208
00209 minI=minI-numberOfGhostCells
00210 minJ=minJ-numberOfGhostCells
00211
00212 maxI=maxI+numberOfGhostCells
00213 maxJ=maxJ+numberOfGhostCells
00214
00215 end if
00216
00217
00218
00219
00220
00221
00222
00223
00224
00225
00226
00227
00228
00229
00230 end subroutine domainInfo