OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
hm_read_prop44.F File Reference
#include "implicit_f.inc"
#include "com04_c.inc"
#include "param_c.inc"
#include "sphcom.inc"
#include "tablen_c.inc"

Go to the source code of this file.

Functions/Subroutines

subroutine hm_read_prop44 (iout, ig, nuvar, pargeo, unitab, iskn, igeo, titr, igtyp, prop_tag, lsubmodel, sub_id, iunit)

Function/Subroutine Documentation

◆ hm_read_prop44()

subroutine hm_read_prop44 ( integer iout,
integer ig,
integer nuvar,
pargeo,
type (unit_type_), intent(in) unitab,
integer, dimension(liskn,*) iskn,
integer, dimension(npropgi) igeo,
character(len=nchartitle) titr,
integer igtyp,
type(prop_tag_), dimension(0:maxprop) prop_tag,
type(submodel_data), dimension(*), intent(in) lsubmodel,
integer sub_id,
integer iunit )

Definition at line 40 of file hm_read_prop44.F.

43C-----------------------------------------------
44 USE unitab_mod
45 USE message_mod
46 USE elbuftag_mod
47 USE submodel_mod
49C----------+---------+---+---+--------------------------------------------
50C Crushable frame spring property (old uer type spring)
51C----------+---------+---+---+--------------------------------------------
52C VAR | SIZE |TYP| RW| DEFINITION
53C----------+---------+---+---+--------------------------------------------
54C IOUT | 1 | I | R | OUTPUT FILE UNIT (L00 file)
55C IG | 1 | I | R | PROPERTY NUMBER
56C NUVAR | 1 | I | W | NUMBER OF USER ELEMENT VARIABLES
57C----------+---------+---+---+--------------------------------------------
58C PARGEO | * | F | W | 1)SKEW NUMBER
59C | | | | 2)STIFNESS FOR INTERFACE
60C | | | | 3)FRONT WAVE OPTION
61C | | | | 4)... not yet used
62C-----------------------------------------------
63C I m p l i c i t T y p e s
64C-----------------------------------------------
65#include "implicit_f.inc"
66C-----------------------------------------------
67C C o m m o n B l o c k s
68C-----------------------------------------------
69#include "com04_c.inc"
70#include "param_c.inc"
71#include "sphcom.inc"
72#include "tablen_c.inc"
73C----------+---------+---+---+--------------------------------------------
74C D u m m y A r g u m e n t s
75C-----------------------------------------------
76 TYPE (UNIT_TYPE_),INTENT(IN) ::UNITAB
77 INTEGER IOUT,IG,NUVAR,IGEO(NPROPGI),ISKN(LISKN,*),
78 . IGTYP,SUB_ID,IUNIT
79 my_real
80 . pargeo(*)
81 TYPE(PROP_TAG_) , DIMENSION(0:MAXPROP) :: PROP_TAG
82 CHARACTER(LEN=NCHARTITLE) :: TITR
83 TYPE(SUBMODEL_DATA),INTENT(IN)::LSUBMODEL(*)
84C-----------------------------------------------
85C L o c a l V a r i a b l e s
86C-----------------------------------------------
87 INTEGER IERROR,ISK,
88 . IFUN_XP,IFUN_XMI,IFUN_XXPI,IFUN_XXMI,IFUN_YY1PI,
89 . IFUN_YY1MI,IFUN_YY2PI,IFUN_YY2MI,IFUN_ZZ1PI,
90 . IFUN_ZZ1MI,IFUN_ZZ2PI,IFUN_ZZ2MI,
91 . IFUN_XMR,IFUN_XXPR,IFUN_XXMR,IFUN_YY1PR,
92 . IFUN_YY1MR,IFUN_YY2PR,IFUN_YY2MR,IFUN_ZZ1PR,
93 . IFUN_ZZ1MR,IFUN_ZZ2PR,IFUN_ZZ2MR,ICO,K,
94 . IFUN_DAMP_X,IFUN_DAMP_Y,IFUN_DAMP_Z,IFUN_DAMP_XX,
95 . IFUN_DAMP_YY,IFUN_DAMP_ZZ,NC_FILTER,IDAMP
96 my_real
97 . fscal_x,fscal_rx,fscal_ry1,fscal_ry2 ,fscal_rz1,fscal_rz2,
98 . amas,iner,xk,xco,k11,k44,k55,k66,k5b,k6c,
99 . xlimg,xlim,xxlim,yy1lim,yy2lim,zz1lim,zz2lim,
100 . fscal_damp_x,fscal_damp_y,fscal_damp_z,
101 . fscal_damp_xx,fscal_damp_yy,fscal_damp_zz,
102 . f_x,f_y,f_z,f_xx,f_yy,f_zz,rnc_filter,rdamp,
103 . fscal_x_dim,fscal_rx_dim,fscal_ry1_dim,
104 . fscal_ry2_dim,fscal_rz1_dim,fscal_rz2_dim,
105 . iner_dim,
106 . fscal_damp_x_dim,fscal_damp_y_dim,fscal_damp_z_dim,
107 . fscal_damp_xx_dim,fscal_damp_yy_dim,fscal_damp_zz_dim,
108 . f_x_dim,f_y_dim,f_z_dim,f_xx_dim,f_yy_dim,f_zz_dim
109 LOGICAL IS_AVAILABLE, IS_ENCRYPTED
110C-----------------------------------------------
111 INTEGER KFUNC
112 parameter(kfunc=29)
113C-----------------------------------------------
114C E x t e r n a l F u n c t i o n s
115C-----------------------------------------------
116 INTEGER SET_U_PNU,SET_U_GEO
117 EXTERNAL set_u_pnu,set_u_geo
118C=======================================================================
119C
120 is_encrypted = .false.
121 is_available = .false.
122C--------------------------------------------------
123C EXTRACT DATA (IS OPTION CRYPTED)
124C--------------------------------------------------
125 CALL hm_option_is_encrypted(is_encrypted)
126C--------------------------------------------------
127C
128 nuvar = 42 ! damping (linear or function) + strain rate filtering
129 rnc_filter = zero
130 idamp = 0
131 rdamp = zero
132 ifun_damp_x = 0
133 ifun_damp_y = 0
134 ifun_damp_z = 0
135 ifun_damp_xx = 0
136 ifun_damp_yy = 0
137 ifun_damp_zz = 0
138 fscal_damp_x = 0
139 fscal_damp_y = 0
140 fscal_damp_z = 0
141 fscal_damp_xx = zero
142 fscal_damp_yy = zero
143 fscal_damp_zz = zero
144 f_x = zero
145 f_y = zero
146 f_z = zero
147 f_xx = zero
148 f_yy = zero
149 f_zz = zero
150C
151Card1
152C--------------------------------------------------
153C EXTRACT DATAS (INTEGER VALUES)
154C--------------------------------------------------
155 CALL hm_get_intv('SKEW_CSID',isk,is_available,lsubmodel)
156 IF(isk == 0 .AND. sub_id /= 0 ) isk = lsubmodel(sub_id)%SKEW
157 CALL hm_get_intv('Icoupling',ico,is_available,lsubmodel)
158 CALL hm_get_intv('Ifiltr',nc_filter,is_available,lsubmodel)
159C--------------------------------------------------
160C EXTRACT DATAS (REAL VALUES)
161C--------------------------------------------------
162 CALL hm_get_floatv('MASS',amas,is_available,lsubmodel,unitab)
163 CALL hm_get_floatv('INERTIA',iner,is_available,lsubmodel,unitab)
164 CALL hm_get_floatv_dim('INERTIA',iner_dim,is_available,lsubmodel,unitab)
165 CALL hm_get_floatv('STIFF1',xk,is_available,lsubmodel,unitab)
166Card2 - stiffness in traction, torsion, flex_y, flex_z
167C--------------------------------------------------
168C EXTRACT DATAS (INTEGER VALUES)
169C--------------------------------------------------
170 CALL hm_get_intv('IDAMP',idamp,is_available,lsubmodel)
171C--------------------------------------------------
172C EXTRACT DATAS (REAL VALUES)
173C--------------------------------------------------
174 CALL hm_get_floatv('K11',k11,is_available,lsubmodel,unitab)
175 CALL hm_get_floatv('K44',k44,is_available,lsubmodel,unitab)
176 CALL hm_get_floatv('K55',k55,is_available,lsubmodel,unitab)
177 CALL hm_get_floatv('K66',k66,is_available,lsubmodel,unitab)
178Card3 stiffness in flexion yy and zz (off diagonal)
179C--------------------------------------------------
180C EXTRACT DATAS (REAL VALUES)
181C--------------------------------------------------
182 CALL hm_get_floatv('K5b',k5b,is_available,lsubmodel,unitab)
183 CALL hm_get_floatv('K6c',k6c,is_available,lsubmodel,unitab)
184Card4 trans_x (traction)
185C--------------------------------------------------
186C EXTRACT DATAS (INTEGER VALUES)
187C--------------------------------------------------
188 CALL hm_get_intv('FUN_A1',ifun_xp,is_available,lsubmodel)
189 CALL hm_get_intv('FUN_B1',ifun_xmi,is_available,lsubmodel)
190 CALL hm_get_intv('FUN_A2',ifun_xmr,is_available,lsubmodel)
191C--------------------------------------------------
192C EXTRACT DATAS (REAL VALUES)
193C--------------------------------------------------
194 CALL hm_get_floatv('FScale11',fscal_x,is_available,lsubmodel,unitab)
195 CALL hm_get_floatv_dim('FScale11',fscal_x_dim,is_available,lsubmodel,unitab)
196Card5 rot_x (torsion)
197C--------------------------------------------------
198C EXTRACT DATAS (INTEGER VALUES)
199C--------------------------------------------------
200 CALL hm_get_intv('FUN_B2',ifun_xxpi,is_available,lsubmodel)
201 CALL hm_get_intv('FUN_A3',ifun_xxmi,is_available,lsubmodel)
202 CALL hm_get_intv('FUN_B3',ifun_xxpr,is_available,lsubmodel)
203 CALL hm_get_intv('FUN_A4',ifun_xxmr,is_available,lsubmodel)
204C--------------------------------------------------
205C EXTRACT DATAS (REAL VALUES)
206C--------------------------------------------------
207 CALL hm_get_floatv('FScale22',fscal_rx,is_available,lsubmodel,unitab)
208 CALL hm_get_floatv_dim('FScale22',fscal_rx_dim,is_available,lsubmodel,unitab)
209Card6 rot_y1 (flexion, torsion)
210C--------------------------------------------------
211C EXTRACT DATAS (INTEGER VALUES)
212C--------------------------------------------------
213 CALL hm_get_intv('FUN_B4',ifun_yy1pi,is_available,lsubmodel)
214 CALL hm_get_intv('FUN_A5',ifun_yy1mi,is_available,lsubmodel)
215 CALL hm_get_intv('FUN_B5',ifun_yy1pr,is_available,lsubmodel)
216 CALL hm_get_intv('FUN_A6',ifun_yy1mr,is_available,lsubmodel)
217C--------------------------------------------------
218C EXTRACT DATAS (REAL VALUES)
219C--------------------------------------------------
220 CALL hm_get_floatv('FScale33',fscal_ry1,is_available,lsubmodel,unitab)
221 CALL hm_get_floatv_dim('FScale33',fscal_ry1_dim,is_available,lsubmodel,unitab)
222Card7 rot_z1 (flexion, torsion)
223C--------------------------------------------------
224C EXTRACT DATAS (INTEGER VALUES)
225C--------------------------------------------------
226 CALL hm_get_intv('FUN_B6',ifun_zz1pi,is_available,lsubmodel)
227 CALL hm_get_intv('FUN_C1',ifun_zz1mi,is_available,lsubmodel)
228 CALL hm_get_intv('FUN_C2',ifun_zz1pr,is_available,lsubmodel)
229 CALL hm_get_intv('FUN_C3',ifun_zz1mr,is_available,lsubmodel)
230C--------------------------------------------------
231C EXTRACT DATAS (REAL VALUES)
232C--------------------------------------------------
233 CALL hm_get_floatv('FScale12',fscal_rz1,is_available,lsubmodel,unitab)
234 CALL hm_get_floatv_dim('FScale12',fscal_rz1_dim,is_available,lsubmodel,unitab)
235Card8 rot_y2 (flexion, torsion)
236C--------------------------------------------------
237C EXTRACT DATAS (INTEGER VALUES)
238C--------------------------------------------------
239 CALL hm_get_intv('FUN_C4',ifun_yy2pi,is_available,lsubmodel)
240 CALL hm_get_intv('FUN_C5',ifun_yy2mi,is_available,lsubmodel)
241 CALL hm_get_intv('FUN_C6',ifun_yy2pr,is_available,lsubmodel)
242 CALL hm_get_intv('FUN_D1',ifun_yy2mr,is_available,lsubmodel)
243C--------------------------------------------------
244C EXTRACT DATAS (REAL VALUES)
245C--------------------------------------------------
246 CALL hm_get_floatv('FScale23',fscal_ry2,is_available,lsubmodel,unitab)
247 CALL hm_get_floatv_dim('FScale23',fscal_ry2_dim,is_available,lsubmodel,unitab)
248Card9 rot_z2 (flexion, torsion)
249C--------------------------------------------------
250C EXTRACT DATAS (INTEGER VALUES)
251C--------------------------------------------------
252 CALL hm_get_intv('FUN_D2',ifun_zz2pi,is_available,lsubmodel)
253 CALL hm_get_intv('FUN_D3',ifun_zz2mi,is_available,lsubmodel)
254 CALL hm_get_intv('FUN_D4',ifun_zz2pr,is_available,lsubmodel)
255 CALL hm_get_intv('FUN_D5',ifun_zz2mr,is_available,lsubmodel)
256C--------------------------------------------------
257C EXTRACT DATAS (REAL VALUES)
258C--------------------------------------------------
259 CALL hm_get_floatv('FScale13',fscal_rz2,is_available,lsubmodel,unitab)
260 CALL hm_get_floatv_dim('FScale13',fscal_rz2_dim,is_available,lsubmodel,unitab)
261Card10
262C--------------------------------------------------
263C EXTRACT DATAS (REAL VALUES)
264C--------------------------------------------------
265 CALL hm_get_floatv('STRAIN1',xlimg,is_available,lsubmodel,unitab)
266 CALL hm_get_floatv('STRAIN2',xlim,is_available,lsubmodel,unitab)
267 CALL hm_get_floatv('STRAIN3',xxlim,is_available,lsubmodel,unitab)
268Card11
269C--------------------------------------------------
270C EXTRACT DATAS (REAL VALUES)
271C--------------------------------------------------
272 CALL hm_get_floatv('STRAIN4',yy1lim,is_available,lsubmodel,unitab)
273 CALL hm_get_floatv('STRAIN5',zz1lim,is_available,lsubmodel,unitab)
274 CALL hm_get_floatv('STRAIN6',yy2lim,is_available,lsubmodel,unitab)
275 CALL hm_get_floatv('STRAIN7',zz2lim,is_available,lsubmodel,unitab)
276!-----------------------------------------------------------------------
277 IF (idamp > 0) THEN
278Card12
279C--------------------------------------------------
280C EXTRACT DATAS (INTEGER VALUES)
281C--------------------------------------------------
282 CALL hm_get_intv('FCT_D_X',ifun_damp_x,is_available,lsubmodel)
283C--------------------------------------------------
284C EXTRACT DATAS (REAL VALUES)
285C--------------------------------------------------
286 CALL hm_get_floatv('DSCALE_X',fscal_damp_x,is_available,lsubmodel,unitab)
287 CALL hm_get_floatv('F_X',f_x,is_available,lsubmodel,unitab)
288 CALL hm_get_floatv_dim('DSCALE_X',fscal_damp_x_dim,is_available,lsubmodel,unitab)
289 CALL hm_get_floatv_dim('F_X',f_x_dim,is_available,lsubmodel,unitab)
290Card13
291C--------------------------------------------------
292C EXTRACT DATAS (INTEGER VALUES)
293C--------------------------------------------------
294 CALL hm_get_intv('FCT_D_Y',ifun_damp_y,is_available,lsubmodel)
295C--------------------------------------------------
296C EXTRACT DATAS (REAL VALUES)
297C--------------------------------------------------
298 CALL hm_get_floatv('DSCALE_Y',fscal_damp_y,is_available,lsubmodel,unitab)
299 CALL hm_get_floatv('F_Y',f_y,is_available,lsubmodel,unitab)
300 CALL hm_get_floatv_dim('DSCALE_Y',fscal_damp_y_dim,is_available,lsubmodel,unitab)
301 CALL hm_get_floatv_dim('F_Y',f_y_dim,is_available,lsubmodel,unitab)
302Card14
303C--------------------------------------------------
304C EXTRACT DATAS (INTEGER VALUES)
305C--------------------------------------------------
306 CALL hm_get_intv('FCT_D_Z',ifun_damp_z,is_available,lsubmodel)
307C--------------------------------------------------
308C EXTRACT DATAS (REAL VALUES)
309C--------------------------------------------------
310 CALL hm_get_floatv('DSCALE_Z',fscal_damp_z,is_available,lsubmodel,unitab)
311 CALL hm_get_floatv('F_Z',f_z,is_available,lsubmodel,unitab)
312 CALL hm_get_floatv_dim('DSCALE_Z',fscal_damp_z_dim,is_available,lsubmodel,unitab)
313 CALL hm_get_floatv_dim('F_Z',f_z_dim,is_available,lsubmodel,unitab)
314Card15
315C--------------------------------------------------
316C EXTRACT DATAS (INTEGER VALUES)
317C--------------------------------------------------
318 CALL hm_get_intv('FCT_D_XX',ifun_damp_xx,is_available,lsubmodel)
319C--------------------------------------------------
320C EXTRACT DATAS (REAL VALUES)
321C--------------------------------------------------
322 CALL hm_get_floatv('DSCALE_XX',fscal_damp_xx,is_available,lsubmodel,unitab)
323 CALL hm_get_floatv('F_XX',f_xx,is_available,lsubmodel,unitab)
324 CALL hm_get_floatv_dim('DSCALE_XX',fscal_damp_xx_dim,is_available,lsubmodel,unitab)
325 CALL hm_get_floatv_dim('F_XX',f_xx_dim,is_available,lsubmodel,unitab)
326Card16
327C--------------------------------------------------
328C EXTRACT DATAS (INTEGER VALUES)
329C--------------------------------------------------
330 CALL hm_get_intv('FCT_D_YY',ifun_damp_yy,is_available,lsubmodel)
331C--------------------------------------------------
332C EXTRACT DATAS (REAL VALUES)
333C--------------------------------------------------
334 CALL hm_get_floatv('DSCALE_YY',fscal_damp_yy,is_available,lsubmodel,unitab)
335 CALL hm_get_floatv('F_YY',f_yy,is_available,lsubmodel,unitab)
336 CALL hm_get_floatv_dim('DSCALE_YY',fscal_damp_yy_dim,is_available,lsubmodel,unitab)
337 CALL hm_get_floatv_dim('F_YY',f_yy_dim,is_available,lsubmodel,unitab)
338Card17
339C--------------------------------------------------
340C EXTRACT DATAS (INTEGER VALUES)
341C--------------------------------------------------
342 CALL hm_get_intv('FCT_D_ZZ',ifun_damp_zz,is_available,lsubmodel)
343C--------------------------------------------------
344C EXTRACT DATAS (REAL VALUES)
345C--------------------------------------------------
346 CALL hm_get_floatv('DSCALE_ZZ',fscal_damp_zz,is_available,lsubmodel,unitab)
347 CALL hm_get_floatv('F_ZZ',f_zz,is_available,lsubmodel,unitab)
348 CALL hm_get_floatv_dim('DSCALE_ZZ',fscal_damp_zz_dim,is_available,lsubmodel,unitab)
349 CALL hm_get_floatv_dim('F_ZZ',f_zz_dim,is_available,lsubmodel,unitab)
350!
351 ENDIF ! IF (IDAMP > 0)
352!-----------------------------------------------------------------------
353 IF (fscal_x == zero) fscal_x = one * fscal_x_dim
354 IF (fscal_rx == zero) fscal_rx = one * fscal_rx_dim
355 IF (fscal_ry1 == zero) fscal_ry1 = one * fscal_ry1_dim
356 IF (fscal_ry2 == zero) fscal_ry2 = one * fscal_ry2_dim
357 IF (fscal_rz1 == zero) fscal_rz1 = one * fscal_rz1_dim
358 IF (fscal_rz2 == zero) fscal_rz2 = one * fscal_rz2_dim
359!
360 IF(iner < em20) THEN
361 iner = em20 * iner_dim
362 CALL ancmsg(msgid=445,
363 . msgtype=msgwarning,
364 . anmode=aninfo_blind_1,
365 . i1=ig,
366 . c1=titr)
367 ENDIF
368C--------------------------------------------
369! strain rate filtering (by default = 12 cycles):
370 IF (nc_filter > 0) nc_filter = 12
371C--------------------------------------------
372 DO k=0,numskw+min(1,nspcond)*numsph+nsubmod
373 IF(isk == iskn(4,k+1)) THEN
374 isk=k+1
375 GO TO 100
376 ENDIF
377 ENDDO
378 CALL ancmsg(msgid=137,anmode=aninfo,msgtype=msgerror,
379 . c1='PROPERTY',
380 . c2='PROPERTY',
381 . i1=igeo(1),i2=isk,c3=titr)
382100 CONTINUE
383 pargeo(1) = isk
384 pargeo(2) = xk
385C front wave = 1
386 pargeo(3) = 1
387C--------------------------------------------
388 IF (ifun_xp <= 0)WRITE(iout,*)
389 . ' **ERROR ZERO FUNCTION NUMBER X+'
390 IF (ifun_xmi <= 0)WRITE(iout,*)
391 . ' **ERROR ZERO FUNCTION NUMBER Xi-'
392 IF (ifun_xxpi <= 0)WRITE(iout,*)
393 . ' **ERROR ZERO FUNCTION NUMBER XXi+'
394 IF (ifun_xxmi <= 0)WRITE(iout,*)
395 . ' **ERROR ZERO FUNCTION NUMBER XXi-'
396 IF (ifun_yy1pi <= 0)WRITE(iout,*)
397 . ' **ERROR ZERO FUNCTION NUMBER YY1i+'
398 IF (ifun_yy1mi <= 0)WRITE(iout,*)
399 . ' **ERROR ZERO FUNCTION NUMBER YY1i-'
400!
401 IF (idamp > 0) THEN
402 IF (ifun_damp_x <= 0)WRITE(iout,*)
403 . ' **ERROR ZERO FUNCTION NUMBER DAMP_X ---> Linear damping is used'
404 IF (ifun_damp_y <= 0)WRITE(iout,*)
405 . ' **ERROR ZERO FUNCTION NUMBER DAMP_Y ---> Linear damping is used'
406 IF (ifun_damp_z <= 0)WRITE(iout,*)
407 . ' **ERROR ZERO FUNCTION NUMBER DAMP_Z ---> Linear damping is used'
408 IF (ifun_damp_xx <= 0)WRITE(iout,*)
409 . ' **ERROR ZERO FUNCTION NUMBER DAMP_XX ---> Linear damping is used'
410 IF (ifun_damp_yy <= 0)WRITE(iout,*)
411 . ' **ERROR ZERO FUNCTION NUMBER DAMP_YY ---> Linear damping is used'
412 IF (ifun_damp_zz <= 0)WRITE(iout,*)
413 . ' **ERROR ZERO FUNCTION NUMBER DAMP_ZZ ---> Linear damping is used'
414 ENDIF ! IF (IDAMP > 0)
415!
416 IF (ifun_xmr <= 0)ifun_xmr =ifun_xmi
417 IF (ifun_xxpr <= 0)ifun_xxpr =ifun_xxpi
418 IF (ifun_xxmr <= 0)ifun_xxmr =ifun_xxmi
419 IF (ifun_yy1pr <= 0)ifun_yy1pr=ifun_yy1pi
420 IF (ifun_yy2pi <= 0)ifun_yy2pi=ifun_yy1pi
421 IF (ifun_yy2pr <= 0)ifun_yy2pr=ifun_yy1pr
422 IF (ifun_zz1pi <= 0)ifun_zz1pi=ifun_yy1pi
423 IF (ifun_zz1pr <= 0)ifun_zz1pr=ifun_zz1pi
424 IF (ifun_zz2pi <= 0)ifun_zz2pi=ifun_zz1pi
425 IF (ifun_zz2pr <= 0)ifun_zz2pr=ifun_zz1pr
426 IF (ifun_yy1mr <= 0)ifun_yy1mr=ifun_yy1mi
427 IF (ifun_yy2mi <= 0)ifun_yy2mi=ifun_yy1mi
428 IF (ifun_yy2mr <= 0)ifun_yy2mr=ifun_yy1mr
429 IF (ifun_zz1mi <= 0)ifun_zz1mi=ifun_yy1mi
430 IF (ifun_zz1mr <= 0)ifun_zz1mr=ifun_zz1mi
431 IF (ifun_zz2mi <= 0)ifun_zz2mi=ifun_zz1mi
432 IF (ifun_zz2mr <= 0)ifun_zz2mr=ifun_zz1mr
433C---
434 ierror = set_u_geo(1,xlimg)
435 ierror = set_u_geo(2,xlim)
436 ierror = set_u_geo(3,xxlim)
437 ierror = set_u_geo(4,yy1lim)
438 ierror = set_u_geo(5,zz1lim)
439 ierror = set_u_geo(6,yy2lim)
440 ierror = set_u_geo(7,zz2lim)
441 ierror = set_u_geo(8,amas)
442 ierror = set_u_geo(9,iner)
443 ierror = set_u_geo(10,k11)
444 ierror = set_u_geo(11,k44)
445 ierror = set_u_geo(12,k55)
446 ierror = set_u_geo(13,k66)
447 ierror = set_u_geo(14,k5b)
448 ierror = set_u_geo(15,k6c)
449 xco = ico
450 ierror = set_u_geo(16,xco)
451 ierror = set_u_geo(17,fscal_x)
452 ierror = set_u_geo(18,fscal_rx)
453 ierror = set_u_geo(19,fscal_ry1)
454 ierror = set_u_geo(20,fscal_ry2)
455 ierror = set_u_geo(21,fscal_rz1)
456 ierror = set_u_geo(22,fscal_rz2)
457C
458 ierror = set_u_pnu(1,ifun_xmi,kfunc)
459 ierror = set_u_pnu(2,ifun_xxmi,kfunc)
460 ierror = set_u_pnu(3,ifun_yy1mi,kfunc)
461 ierror = set_u_pnu(4,ifun_zz1mi,kfunc)
462 ierror = set_u_pnu(5,ifun_yy2mi,kfunc)
463 ierror = set_u_pnu(6,ifun_zz2mi,kfunc)
464 ierror = set_u_pnu(7,ifun_xp,kfunc)
465 ierror = set_u_pnu(8,ifun_xxpi,kfunc)
466 ierror = set_u_pnu(9,ifun_yy1pi,kfunc)
467
468 ierror = set_u_pnu(10,ifun_zz1pi,kfunc)
469 ierror = set_u_pnu(11,ifun_yy2pi,kfunc)
470 ierror = set_u_pnu(12,ifun_zz2pi,kfunc)
471 ierror = set_u_pnu(13,ifun_xmr,kfunc)
472 ierror = set_u_pnu(14,ifun_xxmr,kfunc)
473 ierror = set_u_pnu(15,ifun_yy1mr,kfunc)
474 ierror = set_u_pnu(16,ifun_zz1mr,kfunc)
475 ierror = set_u_pnu(17,ifun_yy2mr,kfunc)
476 ierror = set_u_pnu(18,ifun_zz2mr,kfunc)
477 ierror = set_u_pnu(19,ifun_xxpr,kfunc)
478 ierror = set_u_pnu(20,ifun_yy1pr,kfunc)
479 ierror = set_u_pnu(21,ifun_zz1pr,kfunc)
480 ierror = set_u_pnu(22,ifun_yy2pr,kfunc)
481 ierror = set_u_pnu(23,ifun_zz2pr,kfunc)
482!--------------------------------------------
483 IF (idamp > 0) THEN
484! function damping
485 ierror = set_u_pnu(24,ifun_damp_x,kfunc)
486 ierror = set_u_pnu(25,ifun_damp_y,kfunc)
487 ierror = set_u_pnu(26,ifun_damp_z,kfunc)
488 ierror = set_u_pnu(27,ifun_damp_xx,kfunc)
489 ierror = set_u_pnu(28,ifun_damp_yy,kfunc)
490 ierror = set_u_pnu(29,ifun_damp_zz,kfunc)
491! damping
492 IF (f_x == zero) f_x = one * f_x_dim
493 IF (f_y == zero) f_y = one * f_y_dim
494 IF (f_z == zero) f_z = one * f_z_dim
495 IF (f_xx == zero) f_xx = one * f_xx_dim
496 IF (f_yy == zero) f_yy = one * f_yy_dim
497 IF (f_zz == zero) f_zz = one * f_zz_dim
498!
499 IF (fscal_damp_x == zero) fscal_damp_x = one * fscal_damp_x_dim
500 IF (fscal_damp_y == zero) fscal_damp_y = one * fscal_damp_y_dim
501 IF (fscal_damp_z == zero) fscal_damp_z = one * fscal_damp_z_dim
502 IF (fscal_damp_xx == zero) fscal_damp_xx = one * fscal_damp_xx_dim
503 IF (fscal_damp_yy == zero) fscal_damp_yy = one * fscal_damp_yy_dim
504 IF (fscal_damp_zz == zero) fscal_damp_zz = one * fscal_damp_zz_dim
505!
506 ierror = set_u_geo(23,fscal_damp_x)
507 ierror = set_u_geo(24,fscal_damp_y)
508 ierror = set_u_geo(25,fscal_damp_z)
509 ierror = set_u_geo(26,fscal_damp_xx)
510 ierror = set_u_geo(27,fscal_damp_yy)
511 ierror = set_u_geo(28,fscal_damp_zz)
512!
513 ierror = set_u_geo(29,f_x)
514 ierror = set_u_geo(30,f_y)
515 ierror = set_u_geo(31,f_z)
516 ierror = set_u_geo(32,f_xx)
517 ierror = set_u_geo(33,f_yy)
518 ierror = set_u_geo(34,f_zz)
519 ENDIF ! IF (IDAMP > 0)
520!
521 rnc_filter = nc_filter
522 ierror = set_u_geo(35,rnc_filter)
523 rdamp = idamp
524 ierror = set_u_geo(36,rdamp)
525C--------------------------------------------
526 IF(is_encrypted)THEN
527 WRITE(iout,'(5X,A,//)')'CONFIDENTIAL DATA'
528 ELSE
529 WRITE(iout,1000)
530 . amas,iner,xk,isk,ico,k11,k44,k55,k66,k5b,k6c,
531 . ifun_xp,ifun_xmi,ifun_xmr,
532 . ifun_xxpi,ifun_xxmi,ifun_xxpr,ifun_xxmr,
533 . ifun_yy1pi,ifun_yy1mi,ifun_yy1pr,ifun_yy1mr,
534 . ifun_zz1pi,ifun_zz1mi,ifun_zz1pr,ifun_zz1mr,
535 . ifun_yy2pi,ifun_yy2mi,ifun_yy2pr,ifun_yy2mr,
536 . ifun_zz2pi,ifun_zz2mi,ifun_zz2pr,ifun_zz2mr,
537 . fscal_x,fscal_rx,fscal_ry1,fscal_ry2 ,fscal_rz1,fscal_rz2,
538 . xlimg,xlim,xxlim,yy1lim,zz1lim,yy2lim,zz2lim,
539 . nc_filter,ifun_damp_x,ifun_damp_y,ifun_damp_z,
540 . ifun_damp_xx,ifun_damp_yy,ifun_damp_zz,
541 . fscal_damp_x,fscal_damp_y,fscal_damp_z,
542 . fscal_damp_xx,fscal_damp_yy,fscal_damp_zz,
543 . f_x,f_y,f_z,f_xx,f_yy,f_zz
544 ENDIF
545C
546 prop_tag(igtyp)%G_EINT = 1
547 prop_tag(igtyp)%G_FOR = 3
548 prop_tag(igtyp)%G_MOM = 5
549 prop_tag(igtyp)%G_SKEW = 6
550 prop_tag(igtyp)%G_MASS = 1
551 prop_tag(igtyp)%G_V_REPCVT = 3 ! -- VITESSES REPERE CONVECTEE (V_REPCVT)
552 prop_tag(igtyp)%G_VR_REPCVT = 3 ! -- VITESSES REPERE CONVECTEE (VR_REPCVT)
553 prop_tag(igtyp)%G_NUVAR = nuvar
554C
555C-----
556 1000 FORMAT(
557 & 5x,'MASS PER UNIT LENGTH. . . . . . . . . .=',e12.4/,
558 & 5x,'INERTIA PER UNIT LENGTH . . . . . . . .=',e12.4/,
559 & 5x,'STIFFNESS FOR INTERFACE K=E*A/L . . . .=',e12.4/,
560 & 5x,'SKEW FRAME ID . . . . . . . . . . . . .=',i8/,
561 & 5x,'COUPLING FLAG . . . . . . . . . . . . .=',i8/,
562 & 5x,'STIFFNESS K11=E*A (TENSION COMPRESSION)=',e12.4/,
563 & 5x,'STIFFNESS K44=G*Ix (TORSION). . . . . .=',e12.4/,
564 & 5x,'STIFFNESS K55=4*E*Iy (Y11 BENDING). . .=',e12.4/,
565 & 5x,'STIFFNESS K66=4*E*Iz (Z11 BENDING). . .=',e12.4/,
566 & 5x,'STIFFNESS K5B=2*E*Iy (Y12 BENDING). . .=',e12.4/,
567 & 5x,'STIFFNESS K6C=2*E*Iz (Z12 BENDING). . .=',e12.4/,
568 & 5x,'TRACTION USER FUNCTION ID . . . . . . .=',i8/,
569 & 5x,'INITIAL COMPRESSION USER FUNCTION ID. .=',i8/,
570 & 5x,'FINAL COMPRESSION USER FUNCTION ID. . .=',i8/,
571 & 5x,'INITIAL MAX TORSION USER FUNCTION ID. .=',i8/,
572 & 5x,'INITIAL MIN TORSION USER FUNCTION ID. .=',i8/,
573 & 5x,'FINAL MAX TORSION USER FUNCTION ID. . .=',i8/,
574 & 5x,'FINAL MIN TORSION USER FUNCTION ID. . .=',i8/,
575 & 5x,'INITIAL MAX Y BENDING NODE 1 FUNC. ID .=',i8/,
576 & 5x,'INITIAL MIN Y BENDING NODE 1 FUNC. ID .=',i8/,
577 & 5x,'FINAL MAX Y BENDING NODE 1 FUNC. ID . .=',i8/,
578 & 5x,'FINAL MIN Y BENDING NODE 1 FUNC. ID . .=',i8/,
579 & 5x,'INITIAL MAX Z BENDING NODE 1 FUNC. ID .=',i8/,
580 & 5x,'INITIAL MIN Z BENDING NODE 1 FUNC. ID .=',i8/,
581 & 5x,'FINAL MAX Z BENDING NODE 1 FUNC. ID . .=',i8/,
582 & 5x,'FINAL MIN Z BENDING NODE 1 FUNC. ID . .=',i8/,
583 & 5x,'INITIAL MAX Y BENDING NODE 2 FUNC. ID .=',i8/,
584 & 5x,'INITIAL MIN Y BENDING NODE 2 FUNC. ID .=',i8/,
585 & 5x,'FINAL MAX Y BENDING NODE 2 FUNC. ID . .=',i8/,
586 & 5x,'FINAL MIN Y BENDING NODE 2 FUNC. ID . .=',i8/,
587 & 5x,'INITIAL MAX Z BENDING NODE 2 FUNC. ID .=',i8/,
588 & 5x,'INITIAL MIN Z BENDING NODE 2 FUNC. ID .=',i8/,
589 & 5x,'FINAL MAX Z BENDING NODE 2 FUNC. ID . .=',i8/,
590 & 5x,'FINAL MIN Z BENDING NODE 2 FUNC. ID . .=',i8/,
591 & 5x,'SCALE FACTOR FOR TRACTION FUNCTIONS . .=',e12.4/,
592 & 5x,'SCALE FACTOR FOR TORSION X FUNCTIONS. .=',e12.4/,
593 & 5x,'SCALE FACTOR FOR BENDING Y AT NODE 1. .=',e12.4/,
594 & 5x,'SCALE FACTOR FOR BENDING Z AT NODE 1. .=',e12.4/,
595 & 5x,'SCALE FACTOR FOR BENDING Y AT NODE 2. .=',e12.4/,
596 & 5x,'SCALE FACTOR FOR BENDING Z AT NODE 2. .=',e12.4/,
597 & 5x,'GLOBAL COMPRESSION TRANSITION DEF.. . .=',e12.4/,
598 & 5x,'LOCAL COMPRESSION TRANSITION DEF. . . .=',e12.4/,
599 & 5x,'LOCAL TORSION TRANSITION DEFORMATION. .=',e12.4/,
600 & 5x,'LOCAL Y BENDING NODE 1 TRANSITION DEF..=',e12.4/,
601 & 5x,'LOCAL Z BENDING NODE 1 TRANSITION DEF..=',e12.4/,
602 & 5x,'LOCAL Y BENDING NODE 2 TRANSITION DEF..=',e12.4/,
603 & 5x,'LOCAL Z BENDING NODE 2 TRANSITION DEF..=',e12.4/,
604!---
605! filtering
606 & 5x,'SMOOTH STRAIN RATE FILTERING. .. . . . =',i10/,
607! damping
608 & 5x,'DAMPING FORCE-ELONGATION RATE CURVE FOR X DOF . . . .=',i10/,
609 & 5x,'DAMPING FORCE-ELONGATION RATE CURVE FOR Y DOF . . . .=',i10/,
610 & 5x,'DAMPING FORCE-ELONGATION RATE CURVE FOR Z DOF . . . .=',i10/,
611 & 5x,'DAMPING MOMENT-ROTATION RATE CURVE FOR XX DOF . . . .=',i10/,
612 & 5x,'DAMPING MOMENT-ROTATION RATE CURVE FOR YY DOF . . . .=',i10/,
613 & 5x,'DAMPING MOMENT-ROTATION RATE CURVE FOR ZZ DOF . . . .=',i10/,
614 & 5x,'LINEAR/FUNCTION DAMPING SCALE FACTOR FOR X DOF. . . .=',1pg20.13/,
615 & 5x,'LINEAR/FUNCTION DAMPING SCALE FACTOR FOR Y DOF. . . .=',1pg20.13/,
616 & 5x,'LINEAR/FUNCTION DAMPING SCALE FACTOR FOR Z DOF. . . .=',1pg20.13/,
617 & 5x,'LINEAR/FUNCTION DAMPING SCALE FACTOR FOR XX DOF. . . .=',1pg20.13/,
618 & 5x,'LINEAR/FUNCTION DAMPING SCALE FACTOR FOR YY DOF. . . .=',1pg20.13/,
619 & 5x,'LINEAR/FUNCTION DAMPING SCALE FACTOR FOR ZZ DOF. . . .=',1pg20.13/,
620 & 5x,'ABSCISSA SCALE FACTOR ON FORCE-ELONGATION RATE CURVE X DOF. . =',1pg20.13/,
621 & 5x,'ABSCISSA SCALE FACTOR ON FORCE-ELONGATION RATE CURVE Y DOF. . =',1pg20.13/,
622 & 5x,'ABSCISSA SCALE FACTOR ON FORCE-ELONGATION RATE CURVE Z DOF. . =',1pg20.13/,
623 & 5x,'ABSCISSA SCALE FACTOR ON MOMENT-ROTATION RATE CURVE XX DOF. . =',1pg20.13/,
624 & 5x,'ABSCISSA SCALE FACTOR ON MOMENT-ROTATION RATE CURVE YY DOF. . =',1pg20.13/,
625 & 5x,'ABSCISSA SCALE FACTOR ON MOMENT-ROTATION RATE CURVE ZZ DOF. . =',1pg20.13//)
626!---
627C-----------
628 RETURN
#define my_real
Definition cppsort.cpp:32
subroutine hm_get_floatv(name, rval, is_available, lsubmodel, unitab)
subroutine hm_get_floatv_dim(name, dim_fac, is_available, lsubmodel, unitab)
subroutine hm_get_intv(name, ival, is_available, lsubmodel)
subroutine hm_option_is_encrypted(is_encrypted)
#define min(a, b)
Definition macros.h:20
integer, parameter nchartitle
integer nsubmod
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)
Definition message.F:889
integer function set_u_pnu(ivar, ip, k)
Definition uaccess.F:127
integer function set_u_geo(ivar, a)
Definition uaccess.F:64