41 . LSUBMODEL,IDTITL ,ISKN ,ITABM1,DEFAULTS_SOLID )
55#include "implicit_f.inc"
63#include "tablen_c.inc"
68 TYPE (UNIT_TYPE_),
INTENT(IN) ::UNITAB
69 INTEGER IGTYP , IGEO(*) ,ISKN(LISKN,*) ,ITABM1(*)
72 CHARACTER(LEN=NCHARTITLE)::IDTITL
73 TYPE(
prop_tag_) ,
DIMENSION(0:MAXPROP) :: PROP_TAG
74 TYPE(solid_defaults_),
INTENT(IN) :: DEFAULTS_SOLID
78 INTEGER IG, ISMSTR, NIP, J,K ,NPTS ,
79 . ihbe,ish3n,isrot ,i8pt ,isk,ihon ,itu ,irb,
81 INTEGER IHBE_DS,ISST_DS,IPLA_DS,IFRAME_DS
83 my_real angl,pun,cvis,rbid,vx,vy,vz,fac_l,fac_t,fac_m, pthk, an, phi
84 CHARACTER(LEN=NCHARTITLE)::TITR
86 CHARACTER(LEN=NCHARKEY)::KEY
87 LOGICAL IS_AVAILABLE, IS_ENCRYPTED
93 DATA mess/
'PID DEFINITION '
103 ihbe_ds= defaults_solid%ISOLID
104 isst_ds= defaults_solid%ISMSTR
105 iframe_ds= defaults_solid%IFRAME
107 is_encrypted = .false.
108 is_available = .false.
116 CALL hm_get_intv(
'SKEW_CSID',isk,is_available,lsubmodel)
117 CALL hm_get_intv(
'MAT_Iflag',ihon,is_available,lsubmodel)
118 CALL hm_get_intv(
'I_TH',itu,is_available,lsubmodel)
119 CALL hm_get_intv(
'IRBY',irb,is_available,lsubmodel)
124 CALL hm_get_floatv(
'qa_l',geo(14),is_available,lsubmodel,unitab)
126 CALL hm_get_floatv(
'h_l',geo(13),is_available,lsubmodel,unitab)
127 CALL hm_get_floatv(
'MAT_POROS',geo(21),is_available,lsubmodel,unitab)
128 CALL hm_get_floatv(
'MAT_PDIR1',geo(24),is_available,lsubmodel,unitab)
129 CALL hm_get_floatv(
'MAT_PDIR2',geo(25),is_available,lsubmodel,unitab)
130 CALL hm_get_floatv(
'MAT_PDIR3',geo(26),is_available,lsubmodel,unitab)
131 CALL hm_get_floatv(
'ALPHA1',geo(22),is_available,lsubmodel,unitab)
132 CALL hm_get_floatv(
'THICK',geo(23),is_available,lsubmodel,unitab)
141 IF(
ale%GLOBAL%ICAA==0 .AND. igflu==0)
THEN
142 IF(geo(14)==zero) geo(14)=onep1
143 IF(geo(15)==zero) geo(15)=fiveem2
145 IF(geo(13)==zero)geo(13)=em01
151 IF(ismstr==0)ismstr=isst_ds
152 IF (ismstr < 0.OR.isst_ds==-2) ismstr=4
153 IF(ismstr==0)ismstr=4
154 IF(ismstr==3)geo(5)=ep06
166 ELSEIF(ihbe==112)
THEN
168 ELSEIF(ihbe>=222)
THEN
172 IF(n2d==0.AND.i8pt==1) geo(1)=8
173 IF(iabs(ihbe)>=222) geo(1)=ihbe
174 IF(n2d>0.AND.i8pt==1)
THEN
177 . msgtype=msgwarning,
178 . anmode=aninfo_blind_2,
182 IF(n2d>0.AND.ihbe/=0.AND.ihbe/=2)
THEN
186 . msgtype=msgwarning,
187 . anmode=aninfo_blind_2,
193 IF(ihbe>=3.AND.ihbe<13.AND.ihbe/=4) ihbe=1
195 IF(ihbe>1000.AND.ihbe<1050)
THEN
197 ELSEIF(iabs(ihbe)>=222)
THEN
198 npts=iabs(ihbe)/100*mod(iabs(ihbe)/10,10)*mod(iabs(ihbe),10)
205 IF(geo(21)==0.) geo(21)=one
208 IF(geo(22)==zero)geo(22)=em01
209 IF(geo(23)==zero)
THEN
213 .
' MIXING LENGTH REQUIRED IF TURBULENCE',
214 .
' IS IMPOSED BY POROUS MEDIUM'
219 IF(isk == iskn(4,k+1))
THEN
224 CALL ancmsg(msgid=137,anmode=aninfo,msgtype=msgerror,
227 . i1=ig,i2=isk,c3=idtitl)
233 geo(29)=usr2sys(irb,itabm1,mess,ig)+pun
238 IF(geo(24)+geo(25)+geo(26)==zero)geo(20)=onep1
239 WRITE(iout,1800)ig,nint(geo(1)),ihbe,geo(14),geo(15
240 . geo(13),geo(21),(geo(j),j=24,26),iskn(4,isk),
242 IF(itu==1)
WRITE(iout,1850)geo(22),geo(23)
244 IF(geo( 3)/=zero.AND.igeo( 5)== 0)igeo( 5)=nint(geo( 3))
245 IF(geo(39)/=zero.AND.igeo( 9)== 0)igeo( 9)=nint(geo(39))
246 IF(geo(171)/=zero.AND.igeo(10)== 0)
247 . igeo(10)=nint(geo(171))
249 IF (geo(16) /= zero .OR. geo(17) /= zero)
THEN
259 prop_tag(igtyp)%G_SIG = 6
260 prop_tag(igtyp)%G_VOL = 1
261 prop_tag(igtyp)%G_EINT = 1
262 prop_tag(igtyp)%G_QVIS = 1
263 prop_tag(igtyp)%L_SIG = 6
264 prop_tag(igtyp)%L_EINT = 1
265 prop_tag(igtyp)%L_VOL = 1
266 prop_tag(igtyp)%L_QVIS = 1
267 prop_tag(igtyp)%G_FILL = 1
268 prop_tag(igtyp)%L_STRA = 6
273 & 5x,
'POROUS FLUID PROPERTY SET'/,
274 & 5x,
'PROPERTY SET NUMBER . . . . . . . . . .=',i10/,
275 & 5x,
'NUMBER OF GAUSS POINT . . . . . . . . .=',i10/,
276 & 5x,
'HOURGLASS BELYTSHKO . . . . . . . . . .=',i10/,
277 & 5x,
'QUADRATIC BULK VISCOSITY. . . . . . . .=',1pg20.13/,
278 & 5x,
'LINEAR BULK VISCOSITY . . . . . . . . .=',1pg20.13/,
279 & 5x,
'HOURGLASS VISCOSITY . . . . . . . . . .=',1pg20.13/,
280 & 5x,
'POROSITY . . . . . . . . . . . . . . .=',1pg20.13/,
281 & 5x,
'RESISTANCE FACTOR DIR 1 . . . . . . . .=',1pg20.13/,
282 & 5x,
'RESISTANCE FACTOR DIR 2 . . . . . . . .=',1pg20.13/,
283 & 5x,
'RESISTANCE FACTOR DIR 3 . . . . . . . .=',1pg20.13/,
284 & 5x,
'SKEW NUMBER AS REFERENCE FRAME . . . .=',i10/,
285 & 5x,
'FLAG FOR HONEYCOMB IN DIR 1 . . . . . .=',i10/,
286 & 5x,
'RIGID BODY NUMBER TO WHICH',/,
287 & 5x,
' SUBSTRATE REACTION IS APPLIED . .='
289 & 5x,
'TURBULENCE IS IMPOSED BY POROUS MEDIUM'/,
290 & 5x,
'TURBULENT FLUCTUATION COEFF . . . . . .=',1pg20.13/,
291 & 5x,
'MIXING LENGTH . . . . . . . . . . . . .=',1pg20.13/)
subroutine ancmsg(msgid, msgtype, anmode, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10, i11, i12, i13, i14, i15, i16, i17, i18, i19, i20, r1, r2, r3, r4, r5, r6, r7, r8, r9, c1, c2, c3, c4, c5, c6, c7, c8, c9, prmode)