40 . IDTITL, PROP_TAG,LSUBMODEL,IUNIT)
52#include "implicit_f.inc"
59#include "tablen_c.inc"
63 TYPE (UNIT_TYPE_),
INTENT(IN) ::UNITAB
64 INTEGER IGEO(NPROPGI),IGTYP,IUNIT
68 TYPE(
prop_tag_) ,
DIMENSION(0:MAXPROP) :: PROP_TAG
73 INTEGER J, IFUNC, IFUNC2, IFUNC3, IECROU, IFV, IG,ISENS,
77 . a0, a, b, d, e, f, xm, xin, xk, xc, dn, dx, pun,
78 . lscale,gf3,a_unit,b_unit,d_unit,e_unit,f_unit,lscale_unit,gf3_unit
79 CHARACTER(LEN=NCHARTITLE) :: TITR
80 CHARACTER(LEN=NCHARTITLE)::IDTITL
81 LOGICAL IS_AVAILABLE, IS_ENCRYPTED
87 is_available = .false.
103 CALL hm_get_intv(
'ISENSOR',isens,is_available,lsubmodel)
104 CALL hm_get_intv(
'ISFLAG',ifl,is_available,lsubmodel)
105 CALL hm_get_intv(
'Ileng',ileng,is_available,lsubmodel)
106 CALL hm_get_intv(
'FUN_A1',ifunc,is_available,lsubmodel)
107 CALL hm_get_intv(
'HFLAG1',iecrou,is_available,lsubmodel)
108 CALL hm_get_intv(
'FUN_B1',ifv,is_available,lsubmodel)
109 CALL hm_get_intv(
'FUN_C1',ifunc2,is_available,lsubmodel)
110 CALL hm_get_intv(
'FUN_D1',ifunc3,is_available,lsubmodel)
114 CALL hm_get_floatv(
'MASS',geo(1),is_available,lsubmodel,unitab)
115 CALL hm_get_floatv(
'STIFF1',geo(2),is_available,lsubmodel,unitab)
116 CALL hm_get_floatv(
'DAMP1',geo(3),is_available,lsubmodel,unitab)
117 CALL hm_get_floatv(
'Acoeft1',a,is_available,lsubmodel,unitab)
118 CALL hm_get_floatv(
'Bcoeft1',b,is_available,lsubmodel,unitab)
119 CALL hm_get_floatv(
'Dcoeft1',d,is_available,lsubmodel,unitab)
120 CALL hm_get_floatv(
'MIN_RUP1',dn,is_available,lsubmodel,unitab)
121 CALL hm_get_floatv(
'MAX_RUP1',dx,is_available,lsubmodel,unitab)
122 CALL hm_get_floatv(
'Prop_FScale',f,is_available,lsubmodel,unitab)
123 CALL hm_get_floatv(
'Prop_EScale',e,is_available,lsubmodel,unitab)
124 CALL hm_get_floatv(
'scale1',lscale,is_available,lsubmodel,unitab)
136 CALL fretitl2(titr,igeo(npropgi-ltitr+1),ltitr)
140 . anmode=aninfo_blind_1,
151 IF(iecrou == 4.AND.(ifunc == 0.OR.ifunc2 == 0))
THEN
154 . anmode=aninfo_blind_1,
158 IF(iecrou == 4.AND.geo(2) == zero)
THEN
161 . anmode=aninfo_blind_1,
165 IF(iecrou == 5.AND.(ifunc == 0.OR.ifunc2 == 0))
THEN
168 . anmode=aninfo_blind_1,
172 IF(iecrou==6.AND.(ifunc==0.OR.ifunc2==0))
THEN
175 . anmode=aninfo_blind_1,
179 IF(iecrou==7.AND.ifunc==0)
THEN
182 . anmode=aninfo_blind_1,
186 ELSEIF(iecrou==7.AND.ifunc2==0)
THEN
188 . msgtype=msgwarning,
189 . anmode=aninfo_blind_1,
196 IF(iecrou == 8.AND. ifunc == 0)
THEN
199 . anmode=aninfo_blind_1,
203 IF (ifunc == 0 .AND. a /= zero .AND. a /= one)
THEN
205 . msgtype=msgwarning,
206 . anmode=aninfo_blind_1,
211 IF (a == zero) a = one * a_unit
212 IF (d == zero) d = one * d_unit
213 IF (e == zero) e = one * e_unit
214 IF (f == zero) f = one * f_unit
215 IF (gf3 == zero) gf3 = one * gf3_unit
216 IF (lscale == zero)
THEN
218 lscale = one * lscale_unit
228 IF (dn == zero)dn=-ep30
229 IF (dx == zero)dx= ep30
230 IF (ifl == 1) isens=-isens
235 IF(.NOT. is_encrypted)
THEN
237 WRITE(iout,1400)ig,(geo(j),j=1,3),ifunc,lscale,ifunc2,
238 . f,iecrou,a,b,d,e,ifv,gf3,ifunc3,dn,dx,abs(isens),
241 WRITE(iout,1500)ig,(geo(j),j=1,3),ifunc,lscale,ifunc2,
242 . f,iecrou,a,b,d,e,ifv,gf3,ifunc3,dn,dx,abs(isens),
266 IF (iecrou == 6)
THEN
279 IF(geo(39)/=zero.AND.igeo( 9)== 0)igeo( 9)=nint
280 IF(geo(171)/=zero.AND.igeo(10)== 0)igeo(10)=nint(geo(171))
283 prop_tag(igtyp)%G_EINT = 1
284 prop_tag(igtyp)%G_FOR = 1
285 prop_tag(igtyp)%G_LENGTH = 1
286 prop_tag(igtyp)%G_TOTDEPL = 1
287 prop_tag(igtyp)%G_FOREP = 1
288 prop_tag(igtyp)%G_DEP_IN_TENS = 1
289 prop_tag(igtyp)%G_DEP_IN_COMP = 1
290 prop_tag(igtyp)%G_POSX = 5
291 prop_tag(igtyp)%G_YIELD = 1
292 prop_tag(igtyp)%G_LENGTH_ERR = 1
293 prop_tag(igtyp)%G_NUVAR =
max(prop_tag(igtyp)%G_NUVAR,nint(geo(25)))
294 prop_tag(igtyp)%G_DEFINI = 1
295 prop_tag(igtyp)%G_FORINI = 1
301 & 5x,
'SPRING PROPERTY SET'/,
302 & 5x,
'-------------------'/,
303 & 5x,
'PROPERTY SET NUMBER . . . . . . . . . .=',i10/,
304 & 5x,
'CONFIDENTIAL DATA'//)
306 & 5x,
'SPRING PROPERTY SET'/,
307 & 5x,
'PROPERTY SET NUMBER . . . . . . . . . .=',i10/,
308 & 5x,
'SPRING MASS . . . . . . . . . . . . . .=',1pg20.13/,
309 & 5x,
'SPRING STIFFNESS. . . . . . . . . . . .=',1pg20.
310 & 5x,
'SPRING DAMPING. . . . . . . . . . . . .=',1pg20.13/,
311 & 5x,
'FUNCTION IDENTIFIER FOR LOADING ',/,
312 & 5x,
'FORCE-DISPLACEMENT CURVE. . . . . . . .=',i10/,
313 & 5x,
'ABSCISSA SCALE FACTOR ON CURVE . . . . =',1pg20.13/,
314 & 5x,
'FUNCTION IDENTIFIER FOR UNLOADING ',/,
315 & 5x,
'FORCE-DISPLACEMENT CURVE (H=4,5,7). . .='
316 & 5x,
'ABSCISSA SCALE FACTOR ON CURVE . . . . =',1pg20.13/,
317 & 5x,
'HARDENING FLAG H. . . . . . . . . . . .=',i10/,
318 & 5x,
'0:ELASTIC 1:ISOTROPIC 2:UNCOUPLED',/,
319 & 5x,
'4:KINEMATIC 5:UNCOUPLED NL (UN/RE)LOADING',/,
320 & 5x,
'6:ELASTO PLASTIC WITH HARDENING 7: ELASTIC HYSTERESIS',/,
321 & 5x,
'8:ELASTIC, TOTAL LENGTH FUNCTION',/,
322 & 5x,
'DYNAMIC AMPLIFICATION FACTOR A. . . . .=',1pg20.13/,
323 & 5x,
'DYNAMIC AMPLIFICATION FACTOR B. . . . .=',1pg20.13/,
324 & 5x,
'DYNAMIC AMPLIFICATION FACTOR D. . . . .=',1pg20.13/,
325 & 5x,
'DYNAMIC AMPLIFICATION FACTOR E. . . . .=',1pg20.13/,
326 & 5x,
'FUNCTION IDENTIFIER FOR ',/,
327 & 5x,
'FORCE-VELOCITY CURVE. . . . . . . . . .=',i10/,
328 & 5x,
'DYNAMIC AMPLIFICATION FACTOR GF3. . . .=',1pg20.13/,
329 & 5x,
'FUNCTION IDENTIFIER FOR THE ADDITIONAL ',/,
330 & 5x,
'FORCE-VELOCITY CURVE. . . . . . . . . .=',i10/,
331 & 5x,
'NEGATIVE FAILURE DISPLACEMENT . . . . .=',1pg20.13/,
332 & 5x,
'POSITIVE FAILURE DISPLACEMENT . . . . .=',1pg20.13/,
333 & 5x,
'SENSOR NUMBER (0:NOT USED). . . . . . .=',i10/,
334 & 5x,
'SENSOR FLAG (0:ACTIV 1:DISACT 2:BOTH) .=',i10/,
335 & 5x,
'UNIT LENGTH FLAG. . . . . . . . . . . .=',i10/,
336 & 5x,
'IF=1 UNIT LENGTH MASS,STIFFNESS AND INPUT',/,
337 & 5x,
' CURVE ARE STRAIN DEPENDING',/)
339 & 5x,
'SPRING PROPERTY SET'/,
340 & 5x,
'PROPERTY SET NUMBER . . . . . . . . . .=',i10/,
341 & 5x,
'SPRING MASS . . . . . . . . . . . . . .=',1pg20.13/,
342 & 5x,
'SPRING STIFFNESS. . . . . . . . . . . .=',1pg20.13/,
343 & 5x,
'SPRING DAMPING. . . . . . . . . . . . .=',1pg20.13/,
344 & 5x,
'FUNCTION IDENTIFIER FOR LOADING ',/,
345 & 5x,
'FORCE-DISPLACEMENT CURVE. . . . . . . .=',i10/,
346 & 5x,
'ABSCISSA SCALE FACTOR ON CURVE . . . . =',1pg20.13/,
347 & 5x,
'PERMANENT DISPL./MAX. DISPL. CURVE(H=5)=',i10/,
348 & 5x,
'ABSCISSA SCALE FACTOR ON CURVE . . . . =',1pg20.13/,
349 & 5x,
'HARDENING FLAG H. . . . . . . . . . . .=',i10/,
350 & 5x,
'0:ELASTIC 1:ISOTROPIC 2:UNCOUPLED',/,
351 & 5x,'4:kinematic 5:uncoupled
nl(un/re)loading
',/,
352 & 5X,'6:elasto plastic with hardening 7: elastic hysteresis
',/,
353 & 5X,'8:elastic, total length function. . . .
',/,
354 & 5X,'dynamic amplification factor a. . . . .=
',1PG20.13/,
355 & 5X,'dynamic amplification factor b. . . . .=
',1PG20.13/,
356 & 5X,'dynamic amplification
',1PG20.13/,
357 & 5X,'dynamic amplification factor e. . . . .=
',1PG20.13/,
358 & 5X,'FUNCTION identifier
for ',/,
359 & 5X,'force-velocity curve. . . . . . . . . .=
',I10/,
360 & 5X,'dynamic amplification factor gf3. . . .=
',1PG20.13/,
361 & 5X,'function identifier
for the additional
',/,
362 & 5X,'force-velocity curve. . . . . . . . . .=
',I10/,
363 & 5X,'negative failure displacement . . . . .=
',1PG20.13/,
364 & 5X,'positive failure displacement . . . . .=
',1PG20.13/,
365 & 5X,'sensor number (0:NOT USED). . . . . . .=
',I10/,
366 & 5X,'sensor flag (0:ACTIV 1:DISACT 2:BOTH) .=
',I10/,
367 & 5X,'unit length flag. . . . . . . . . . . .=
',I10/,
368 & 5X,'if=1 unit length mass,stiffness and input
',/,
369 & 5X,' curve are strain depending
',/)
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)