41 . UNITAB ,LSUBMODEL,DEFAULTS_SHELL)
57#include "implicit_f.inc"
64#include "tablen_c.inc"
70 INTEGER IGTYP,IG,UID,SUB_ID
73 CHARACTER(LEN=NCHARTITLE)::IDTITL
74 TYPE(PROP_TAG_) ,
DIMENSION(0:MAXPROP) :: PROP_TAG
75 TYPE(multi_fvm_struct) :: MULTI_FVM
77 TYPE(shell_defaults_),
INTENT(IN) :: DEFAULTS_SHELL
81 INTEGER I, ISMSTR, NIP, J,
82 . ISHEAR, IP, ISTRAIN,
83 . ihbe,iplast,ithk,ibid,ihbeoutp,k,n,
84 . nshell, nshsup, nshinf,
85 . nsst_d, nsst_ds, npsh,isen,isorth,
86 . ihbe_old, ish3n,isrot,ipinch,i1,i2,ipos
87 INTEGER IHBE_D,IPLA_D,ISTR_D,ITHK_D,ISHEA_D,ISST_D,
88 . ISH3N_D, ISTRA_D,NPTS_D,IDRIL_D
91 . pun,cvis,dn_p,pthk,zshift
92 LOGICAL IS_AVAILABLE, IS_ENCRYPTED
93 DATA NSHELL /0/, NSHSUP /0/, NSHINF /0/
97 is_encrypted = .false.
98 is_available = .false.
112 ihbe_d = defaults_shell%ishell
113 ish3n_d= defaults_shell%ish3n
114 isst_d = defaults_shell%ismstr
115 ipla_d = defaults_shell%iplas
116 ithk_d = defaults_shell%ithick
117 idril_d= defaults_shell%idrill
141 CALL hm_get_intv(
'Ishell',ihbe,is_available,lsubmodel)
142 CALL hm_get_intv(
'Ismstr',ismstr,is_available,lsubmodel)
143 CALL hm_get_intv(
'Ish3',ish3n,is_available,lsubmodel)
144 CALL hm_get_intv(
'Idrill',isrot,is_available,lsubmodel)
145 CALL hm_get_intv(
'Ipinch',ipinch,is_available,lsubmodel)
148 CALL hm_get_intv(
'ITHICK',ithk,is_available,lsubmodel)
149 CALL hm_get_intv('iplas
',IPLAST,IS_AVAILABLE,LSUBMODEL)
150 CALL HM_GET_INTV('ipos
',IPOS,IS_AVAILABLE,LSUBMODEL)
154 CALL HM_GET_FLOATV('p_thick_fail
',PTHK,IS_AVAILABLE,LSUBMODEL,UNITAB)
155 CALL HM_GET_FLOATV('hm
',GEO(13),IS_AVAILABLE,LSUBMODEL,UNITAB)
156 CALL HM_GET_FLOATV('hf',geo(14),is_available,lsubmodel,unitab)
157 CALL hm_get_floatv(
'Hr',geo(15),is_available,lsubmodel,unitab)
158 CALL hm_get_floatv(
'Dm',geo(16),is_available,lsubmodel,unitab)
159 CALL hm_get_floatv(
'Dn',geo(17),is_available,lsubmodel,unitab)
160 CALL hm_get_floatv(
'THICK',geo(1),is_available,lsubmodel,unitab)
161 CALL hm_get_floatv(
'AREA_SHEAR',geo(38),is_available,lsubmodel,unitab)
169 IF (pthk == zero) pthk = one-em06
170 pthk =
min(pthk, one)
171 pthk =
max(pthk,-one)
176 IF(ihbe==0)ihbe=ihbe_d
178 IF (ihbe == 4 .AND. ish3n==0 .AND. ish3n_d == 1)
THEN
180 . msgtype=msgwarning,
181 . anmode=aninfo_blind_1,
185 IF (ihbe==22.OR.ihbe==23)
THEN
187 . msgtype=msgwarning,
188 . anmode=aninfo_blind_1,
193 IF(ish3n==0) ish3n = ish3n_d
195 IF (geo(16) == zero) igeo(31) = 1
198 IF (cvis==zero) cvis=one
199 IF (geo(17)==zero) geo(17)=zep015
202 IF(ismstr==0)ismstr=isst_d
203 IF (isst_d == -2) ismstr = -1
205 IF(geo(13)==zero)geo(13)=em01
206 IF(geo(14)==zero)geo(14)=em01
207 IF(geo(15)==zero)geo(15)=em02
209 IF(geo(13)==zero)geo(13)=em02
210 IF(geo(14)==zero)geo(14)=em02
211 IF(geo(15)==zero)geo(15)=em02
213 IF(isrot==0)isrot=idril_d
214 IF(isrot==2) isrot = 0
217 IF(ipinch /= 1 .AND. ipinch /=0)
THEN
218 CALL ancmsg(msgid=1700,anmode=aninfo,msgtype=msgerror,
219 . i1=ig, c1=idtitl, i2=ipinch)
225 IF (ismstr==10.AND.isrot>0.AND.idrot==0) idrot = 1
227 IF (ihbe>11.AND.ihbe<29)
THEN
232 IF(ismstr==0)ismstr=2
233 IF(ismstr==3.AND.ihbe/=0.AND.ihbe/=2)
THEN
236 . msgtype=msgwarning,
237 . anmode=aninfo_blind_2,
244 IF(geo(38)==zero) geo(38)=five_over_6
245 IF(nip==-1)nip=npts_d
247 IF(ihbe==0.OR.ihbe==2)
THEN
251 . msgtype=msgwarning,
252 . anmode=aninfo_blind_2,
268 IF(ithk==0) ithk=ithk_d
269 IF(ithk_d==-2) ithk=-1
270 IF(ishear==0) ishear=ishea_d
271 IF(iplast==0) iplast=ipla_d
272 IF(ipla_d==-2) iplast=-1
274 IF(.NOT. is_encrypted)
THEN
275 IF (ihbe>11.AND.ihbe<29.OR.
276 . (ihbe==0.AND.(ish3n==1.OR.ish3n==2)))
THEN
279 IF (ihbe==12.AND.dn_p==zero) dn_p=em03
280 WRITE(iout,1112)ig,nip,istrain,geo(1),ismstr,ihbeoutp,
281 . ish3n,isrot,ipinch,geo(16),dn_p,geo(38),
282 . pthk,ishear,ithk,iplast,ipos
284 WRITE(iout,1110)ig,nip,istrain,geo(1),ismstr,ihbeoutp,
286 . geo(13),geo(14),geo(15),geo(16),geo(38),
287 . pthk,ishear,ithk,iplast,ipos
293 IF (geo(1)>=9) nshsup = nshsup +1
294 IF (geo(1)<fourth) nshinf = nshinf +1
313 ELSEIF(ihbe>=3.AND.ihbe<100.AND.ihbe/=4)
THEN
322 ELSEIF(ishear==1)
THEN
324 ELSEIF(ishear==2)
THEN
333 ELSEIF (ipos==4)
THEN
339 igeo( 5)=nint(geo( 3))
340 igeo( 9)=nint(geo(39))
344 prop_tag(igtyp)%G_SIG = 0
345 prop_tag(igtyp)%G_FOR = 5
346 prop_tag(igtyp)%G_MOM = 3
347 prop_tag(igtyp)%G_THK = 1
348 prop_tag(igtyp)%G_EINT= 2
349 prop_tag(igtyp)%G_EINS= 0
350 prop_tag(igtyp)%G_AREA= 1
351 prop_tag(igtyp)%L_SIG = 5
352 prop_tag(igtyp)%L_THK = 0
354 prop_tag(igtyp)%L_EINS= 0
355 prop_tag(igtyp)%G_VOL = 0
356 prop_tag(igtyp)%L_VOL = 0
357 prop_tag(igtyp)%LY_DMG = 2
358 prop_tag(igtyp)%LY_PLAPT = 1
359 prop_tag(igtyp)%LY_SIGPT = 5
360 prop_tag(igtyp)%G_FORPG = 5
361 prop_tag(igtyp)%G_MOMPG = 3
362 prop_tag(igtyp)%G_STRPG = 8
364 IF (igtyp == 1 .AND. ihbe == 12 .AND. ipinch ==
THEN
365 prop_tag(igtyp)%G_FORPGPINCH = 1
366 prop_tag(igtyp)%G_MOMPGPINCH = 2
367 prop_tag(igtyp)%G_EPGPINCHXZ = 1
368 prop_tag(igtyp)%G_EPGPINCHYZ = 1
369 prop_tag(igtyp)%G_EPGPINCHZZ = 1
375 & 5x,
'ISOTROPIC SHELL PROPERTY SET'/,
376 & 5x,
'PROPERTY SET NUMBER . . . . . . . . . .=',i10/,
377 & 5x,
'NUMBER OF INTEGRATION POINTS. . . . . .=',i10/,
378 & 5x,
'POST PROCESSING STRAIN FLAG . . . . . .=',i10/,
379 & 5x,
'SHELL THICKNESS . . . . . . . . . . . .=',1pg20.13/,
380 & 5x,
'SMALL STRAIN FLAG . . . . . . . . . . .=',i10
381 & 5x,
'SHELL FORMULATION FLAG. . . . . . . . .=',i10/,
382 & 5x,
'3NODE SHELL FORMULATION FLAG. . . . . .=',i10/,
383 & 5x,
'SHELL HOURGLASS MEMBRANE DAMPING. . . .=',1pg20.13/,
384 & 5x,
'SHELL HOURGLASS FLEXURAL DAMPING. . . .=',1pg20.13/,
385 & 5x,
'SHELL HOURGLASS ROTATIONAL DAMPING. . .=',1pg20.13/,
386 & 5x,
'SHELL MEMBRANE DAMPING. . . . . . . . .=',1pg20.13/,
387 & 5x,
'SHEAR AREA REDUCTION FACTOR . . . . . .=',1pg20.13/,
388 & 5x,
'ELEMENT DELETION PARAMETER. . . . . . .=',1pg20.13/,
389 & 5x,
' > 0.0 : FRACTION OF FAILED THICKNESS ',/,
390 & 5x,
' < 0.0 : FRACTION OF FAILED INTG. POINTS',/,
391 & 5x,
'SHEAR FORMULATION FLAG. . . . . . . . .=',i10/,
392 & 5x,
'THICKNESS VARIATION FLAG. . . . . . . .=',i10/,
393 & 5x,
'PLASTICITY FORMULATION FLAG . . . . . .=',i10/,
394 & 5x,
'SHELL OFFSET POSITION FLAG . . . . . . =',i10//)
396 & 5x,
'ISOTROPIC SHELL PROPERTY SET'/,
397 & 5x,
'PROPERTY SET NUMBER . . . . . . . . . .=',i10/,
398 & 5x,
'NUMBER OF INTEGRATION POINTS. . . . . .=',i10/,
399 & 5x,
'POST PROCESSING STRAIN FLAG . . . . . .=',i10/,
400 & 5x,
'SHELL THICKNESS . . . . . . . . . . . .=',1pg20.13/,
401 & 5x,
'SMALL STRAIN FLAG . . . . . . . . . . .='
402 & 5x,
'SHELL FORMULATION FLAG. . . . . . . . .=',i10/,
403 & 5x,
'3NODE SHELL FORMULATION FLAG. . . . . .=',i10/,
404 & 5x,
'DRILLING D.O.F. FLAG . . . . . . . . .=',i10/,
405 & 5x,
'PINCHING D.O.F. FLAG . . . . . . . . .=',i10/,
406 & 5x,
'SHELL MEMBRANE DAMPING. . . . . . . . .=',1pg20
407 & 5x,
'SHELL NUMERICAL DAMPING . . . . . . . .=',1pg20.13/,
408 & 5x,
'SHEAR AREA REDUCTION FACTOR . . . . . .=',1pg20.13/,
409 & 5x,
'ELEMENT DELETION PARAMETER. . . . . . .=',1pg20.13/,
410 & 5x,
' > 0.0 : FRACTION OF FAILED THICKNESS ',/,
411 & 5x,
' < 0.0 : FRACTION OF FAILED INTG. POINTS'
412 & 5x,'shear formulation flag. . . . . . . . .=
',I10/,
413 & 5X,'thickness variation flag. . . . . . . .=
',I10/,
414 & 5X,'plasticity formulation flag . . . . . .=
',I10/,
415 & 5X,'shell offset position flag . . . . . . =
',I10//)
417 & 5X,'isotropic shell property set
'/,
418 & 5X,'property set number . . . . .
',I10/,
419 & 5X,'confidential data
'//)
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)