60 TYPE(t_region
),
POINTER :: regions(:)
61 INTEGER,
INTENT(IN) :: nptypes
62 INTEGER,
INTENT(OUT) ::
brbeg,brend
65 INTEGER :: ireg,iptype
68 INTEGER,
PARAMETER :: nstrkeys_max = 5
69 INTEGER,
PARAMETER :: nkeys_max = 20
71 CHARACTER(CHRLEN) :: rcsidentstring
72 CHARACTER(20) :: strkeys(nstrkeys_max),keys(nkeys_max)
73 CHARACTER(CHRLEN) :: strvals(nstrkeys_max)
75 INTEGER :: nkeys,nstrkeys,nptypesused,errorflag,readstatus
76 INTEGER :: istrkeymaterial
77 INTEGER :: ikeyused,ikeydiam,ikeypuff,ikeyinitc
78 INTEGER :: ikeyschm,ikeyk2,ikeyinvk4,ikeysmoocf,ikeyconstinit
79 INTEGER :: ikeynegreport,ikeyclipmodel,ikeymethodv
81 LOGICAL :: strdefined(nstrkeys_max),defined(nkeys_max)
83 REAL(RFREAL) :: vals(nkeys_max)
91 '$RCSfile: PEUL_ReadConPartSection.F90,v $ $Revision: 1.3 $'
93 global => regions(1)%global
96 'PEUL_ReadConPartSection.F90' )
105 IF (nstrkeys > nstrkeys_max) &
106 CALL
errorstop( global,err_exceeds_decl_mem,__line__ )
108 strkeys(istrkeymaterial) =
'MATERIAL'
126 IF (nkeys > nkeys_max) CALL
errorstop( global,err_exceeds_decl_mem,__line__ )
128 keys(ikeyused) =
'USED'
129 keys(ikeydiam) =
'DIAM'
130 keys(ikeypuff) =
'PUFF'
131 keys(ikeyinitc) =
'INITC'
132 keys(ikeyschm) =
'SCHM'
134 keys(ikeyinvk4) =
'1/K4'
135 keys(ikeysmoocf) =
'SMOOCF'
136 keys(ikeyconstinit) =
'CONSTINIT'
137 keys(ikeynegreport) =
'NEGREPORT'
138 keys(ikeyclipmodel) =
'CLIPMODEL'
139 keys(ikeymethodv) =
'METH_VEL'
144 vals(ikeyused) = 1.0_rfreal
145 vals(ikeypuff) = 1.0_rfreal
146 vals(ikeyinitc) = 1.e-9_rfreal
147 vals(ikeyschm) = 1.0_rfreal
148 vals(ikeyk2) = 0.0_rfreal
149 vals(ikeyinvk4) = 128.0_rfreal
150 vals(ikeysmoocf) = -1.0_rfreal
151 vals(ikeyconstinit) = 0.0_rfreal
152 vals(ikeynegreport) = 0.0_rfreal
153 vals(ikeyclipmodel) = 0.0_rfreal
154 vals(ikeymethodv) = 0.0_rfreal
155 nptypesused =
max(nptypes,1)
160 vals,strvals,
brbeg,brend,defined,strdefined )
162 IF (nint(vals(ikeyused)) == 1)
THEN
168 DO ireg =
brbeg,brend
170 input => regions(ireg)%peulInput
172 IF (
input%readStatus == -1)
THEN
173 input%readStatus = readstatus
175 CALL
errorstop( global,err_sec_read_twice,__line__ )
178 IF (
input%readStatus == 0) cycle
182 ALLOCATE(
input%ptypes(nptypesused),stat=errorflag )
183 global%error = errorflag
184 IF (global%error /= 0) CALL
errorstop( global,err_allocate,__line__ )
188 input%nPtypes = nptypesused
190 DO iptype=1,nptypesused
191 nullify(
input%ptypes(iptype)%material)
192 IF (strdefined(istrkeymaterial))
THEN
194 strvals(istrkeymaterial))
198 input%ptypes(:)%diam = vals(ikeydiam)
199 input%ptypes(:)%puff = vals(ikeypuff)
200 input%ptypes(:)%initc = vals(ikeyinitc)
201 input%ptypes(:)%Sc = vals(ikeyschm)
202 input%ptypes(:)%vis2 = vals(ikeyk2)
203 input%ptypes(:)%vis4 = vals(ikeyinvk4)
205 input%smoocf = vals(ikeysmoocf)
206 input%constInit = (nint(vals(ikeyconstinit)) == 1)
207 input%ptypes(:)%negReport = nint(vals(ikeynegreport))
208 input%ptypes(:)%clipModel = nint(vals(ikeyclipmodel))
210 SELECT CASE (nint(vals(ikeynegreport)))
212 input%ptypes(:)%negReport = peul_neg_report_none
214 input%ptypes(:)%negReport = peul_neg_report_used
216 CALL
errorstop( global,err_peul_badval,__line__ )
219 SELECT CASE (nint(vals(ikeyclipmodel)))
221 input%ptypes(:)%clipModel = peul_clip_model_none
223 input%ptypes(:)%clipModel = peul_clip_model_used
225 CALL
errorstop( global,err_peul_badval,__line__ )
228 SELECT CASE (nint(vals(ikeymethodv)))
230 input%ptypes(:)%methodV = peul_methv_fluidvel
232 input%ptypes(:)%methodV = peul_methv_eqeul
234 CALL
errorstop( global,err_peul_badval,__line__ )
subroutine readbothregionsection(global, fileID, nvals, nStrVals, keys, strKeys, vals, strVals, brbeg, brend, defined, strDefined)
Vector_n max(const Array_n_const &v1, const Array_n_const &v2)
subroutine inrt_setmaterial(global, material, name)
subroutine registerfunction(global, funName, fileName)
**********************************************************************Rocstar Simulation Suite Illinois Rocstar LLC All rights reserved ****Illinois Rocstar LLC IL **www illinoisrocstar com **sales illinoisrocstar com WITHOUT WARRANTY OF ANY **EXPRESS OR INCLUDING BUT NOT LIMITED TO THE WARRANTIES **OF FITNESS FOR A PARTICULAR PURPOSE AND **NONINFRINGEMENT IN NO EVENT SHALL THE CONTRIBUTORS OR **COPYRIGHT HOLDERS BE LIABLE FOR ANY DAMAGES OR OTHER WHETHER IN AN ACTION OF TORT OR **Arising OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE **USE OR OTHER DEALINGS WITH THE SOFTWARE **********************************************************************INTERFACE SUBROUTINE brbeg
subroutine peul_readconpartsection(regions, nPtypes, brbeg, brend)
subroutine input(X, NNODE, NDC, NCELL, NFCE, NBPTS, NBFACE, ITYP, NPROP, XBNDY, XFAR, YFAR, ZFAR)
subroutine errorstop(global, errorCode, errorLine, addMessage)
subroutine deregisterfunction(global)