43 . PROP_TAG, IDTITL, LSUBMODEL)
53#include "implicit_f.inc"
60#include "tablen_c.inc"
64 TYPE (UNIT_TYPE_),
INTENT(IN) ::
65 INTEGER IGEO(NPROPGI),IG,IGTYP,FLAG_FMT
69 CHARACTER(LEN=NCHARTITLE)::IDTITL
70 TYPE(
prop_tag_) ,
DIMENSION(0:MAXPROP) :: PROP_TAG
75 INTEGER ,J,NFUNC,NFUND,IFUN,IAD,ISENS,IFL,ILENG,IRTYP
78 . mass,kmax,dmax,xfac,yfac,rate,
alpha,dmin,
79 . pun,yfac_dim,xfac_dim
80 CHARACTER(LEN=NCHARTITLE) :: TITR
81 LOGICAL IS_AVAILABLE, IS_ENCRYPTED
85 is_encrypted = .false.
86 is_available = .false.
99 CALL hm_get_intv(
'ISFLAG',ifl,is_available,lsubmodel)
100 CALL hm_get_intv(
'ISENSOR',isens,is_available,lsubmodel)
101 CALL hm_get_intv(
'Ileng',ileng,is_available,lsubmodel)
103 CALL hm_get_intv('nfunc
',NFUNC,IS_AVAILABLE,LSUBMODEL)
104 CALL HM_GET_INTV('nraten
',NFUND,IS_AVAILABLE,LSUBMODEL)
105 CALL HM_GET_FLOATV('dmin
',DMIN,IS_AVAILABLE,LSUBMODEL,UNITAB)
109 CALL HM_GET_FLOATV('m_coeff
',MASS,IS_AVAILABLE,LSUBMODEL,UNITAB)
110 CALL HM_GET_FLOATV('scale
',XFAC,IS_AVAILABLE,LSUBMODEL,UNITAB)
111 CALL HM_GET_FLOATV_DIM('scale
',XFAC_DIM,IS_AVAILABLE,LSUBMODEL,UNITAB)
112 CALL HM_GET_FLOATV('stiff0
',KMAX,IS_AVAILABLE,LSUBMODEL,UNITAB)
113 CALL HM_GET_FLOATV('dmax
',DMAX,IS_AVAILABLE,LSUBMODEL,UNITAB)
114 CALL HM_GET_FLOATV('alpha1
',ALPHA,IS_AVAILABLE,LSUBMODEL,UNITAB)
117 CALL FRETITL2(TITR,IGEO(NPROPGI-LTITR+1),LTITR)
119 ! Check if at least one loading curve is defined
121 CALL ANCMSG(MSGID=2078,
123 . ANMODE=ANINFO_BLIND_1,
128 IF (ALPHA == ZERO) ALPHA = ONE
129 IF (XFAC == ZERO) XFAC = ONE * XFAC_DIM
132 IF (DMIN == ZERO) DMIN = -INFINITY
133 IF (DMAX == ZERO) DMAX = INFINITY
134 IF (ILENG == 1) XFAC = ONE
139 CALL HM_GET_INT_ARRAY_INDEX('fun_load
',IFUN,I,IS_AVAILABLE,LSUBMODEL)
140 CALL HM_GET_FLOAT_ARRAY_INDEX('scale_load',yfac,i,is_available,lsubmodel,unitab)
147 . anmode=aninfo_blind_1,
155 . anmode=aninfo_blind_1,
160 IF (yfac == zero) yfac = one * yfac_dim
163 geo(iad+100+i) = rate
164 geo(iad+200+i) = yfac
179 . anmode=aninfo_blind_1,
184 IF(i > 1 .AND. rate < geo(iad+100+i-1))
THEN
187 . anmode=aninfo_blind_1,
192 IF (yfac == zero) yfac = one * yfac_dim
195 geo(iad+100+i) = rate
196 geo(iad+200+i) = yfac
201 . msgtype=msgwarning,
202 . anmode=aninfo_blind_1,
207 igeo(iad+i) = igeo(100+i)
208 geo(iad+100+i) = geo(200+i)
209 geo(iad+200+i) = geo(300+i)
219 geo(8) = irtyp + em20
226 . anmode=aninfo_blind_1,
232 ELSEIF (ifl == 1)
THEN
234 ELSEIF (ifl == 2)
THEN
243 WRITE(iout,1500)ig,mass,kmax,nfunc,nfund,dmin,dmax,
alpha,xfac,ileng
246 WRITE(iout,1700) igeo(iad+i),geo(iad+200+i),geo(iad+100+i)
250 WRITE(iout,1800) igeo(iad+i),geo(iad+200+i),geo(iad+100+i)
254 prop_tag(igtyp)%G_EINT = 1
255 prop_tag(igtyp)%G_FOR = 1
256 prop_tag(igtyp)%G_LENGTH = 1
257 prop_tag(igtyp)%G_TOTDEPL = 1
258 prop_tag(igtyp)%G_FOREP = 1
259 prop_tag(igtyp)%G_DEP_IN_COMP = 1
260 prop_tag(igtyp)%G_POSX = 5
261 prop_tag(igtyp)%G_LENGTH_ERR = 1
262 prop_tag(igtyp)%G_DV = 1
263 prop_tag(igtyp)%G_RUPTCRIT = 1
269 & 5x,
'TABULATED ELASTO-PLASTIC SPRING PROPERTY SET'/,
270 & 5x,
'-------------------'/,
271 & 5x,
'PROPERTY SET NUMBER . . . . . . . . . .=',i10/,
272 & 5x,
'CONFIDENTIAL DATA'//)
274 & 5x,
'TABULATED ELASTIC SPRING PROPERTY SET'/,
275 & 5x,
'-------------------------------------'/,
276 & 5x,
'PROPERTY SET NUMBER . . . . . . . . . .=',i10/,
277 & 5x,
'SPRING MASS . . . . . . . . . . . . . .=',1pg20.13/,
278 & 5x,
'MAXIMUM STIFFNESS . . . . . . . . . . .=',1pg20.13/,
279 & 5x,
'NUMBER OF LOADING CURVES . . . . . . .=',i10/,
280 & 5x,
'NUMBER OF UNLOADING CURVES. . . . . . .=',i10/,
281 & 5x,
'FAILURE DISPLACEMENT IN COMPRESSION . .=',1pg20.13/,
282 & 5x,
'FAILURE DISPLACEMENT IN TENSION . . . .=',1pg20.13/,
283 & 5x,
'STRAIN RATE FILTERING FACTOR . . . . .=',1pg20.13/,
284 & 5x,
'ABSCISSA SCALE FACTOR . . . . .=',1pg20.13/,
285 & 5x,
'UNIT LENGTH FLAG. . . . . . . . . . . .=',i10
286 & 5x,
'IF=1 UNIT LENGTH MASS,STIFFNESS AND INPUT',/,
287 & 5x,
' CURVE ARE STRAIN DEPENDING',/)
289 & 5x,
'YIELD STRESS FUNCTION NUMBER . . . . . =',i10/
290 & 7x,
'SCALE FACTOR. . . . . . . . . . . . . . =',1pg20.13/
291 & 7x,
'STRAIN RATE . . . . . . . . . . . . . . ='
293 & 5x,
'UNLOADING FUNCTION NUMBER . . . . . . . =',i10/
294 & 7x,
'SCALE FACTOR. . . . . . . . . . . . . . =',1pg20.13/
295 & 7x,
'STRAIN RATE . . . . . . . . . . . . . . =',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)