80
81
82
83
84
85
86
87
93 USE multi_fvm_mod
96 USE defaults_mod
98
99
100
101#include "implicit_f.inc"
102
103
104
105#include "units_c.inc"
106#include "com04_c.inc"
107#include "param_c.inc"
108#include "scr17_c.inc"
109#include "tablen_c.inc"
110
111
112
113 TYPE (UNIT_TYPE_),INTENT(IN) ::UNITAB
114 INTEGER IX(*),ITABM1(*),LBUFGEO,ISKN(LISKN,*),
115 . (NPROPGI,*),IPM(NPROPMI,*),NPC(*),
116 . IPART(LIPART1,*),IDRAPEID(*),NUMGEO_STACK(NUMGEO+NUMSTACK),
117 . NPROP_STACK,IADBUF
118 TYPE(SUBMODEL_DATA) LSUBMODEL(NSUBMOD)
119 my_real geo(npropg,numgeo), x(*), pm(npropm,nummat),pld(*),rtrans(ntransf,*),knot(*)
120
121 DOUBLE PRECISION BUFGEO(*)
122
123 TYPE(PROP_TAG_) , DIMENSION(0:MAXPROP) :: PROP_TAG
124 TYPE(STACK_INFO_ ) , DIMENSION (NPROP_STACK) :: STACK_INFO
125 TYPE(MULTI_FVM_STRUCT) :: MULTI_FVM
126 TYPE(DEFAULTS_), INTENT(INOUT) :: DEFAULTS
127
128
129
130 CHARACTER LAW_ID*4
131 INTEGER I, PROP_ID, IGTYP, ISMSTR, NIP, J, IR1X, IR1Y, IR1Z, IREP,
132 . IR2X, IR2Y, IR2Z, ISHEAR, IRX, IROT, IMODE, IP, ISTRAIN,I8PT,
133 . ISK,ITU,IRB,IHON,IHBE,IPLAST,ITHK,IBID,IHBEOUTP,K,N,
134 . IGFLU, IDS, NSHELL, NSHSUP, NSHINF, FLGBADI, NBADI,IUNIT,UID,
135 . NSST_D, NSST_DS, NPSH, ICPRE, ICSTR ,NPTS,ISEN,,
136 . PID1,IPID1, IHGFLU, IHBE_OLD,NSTACK,NN,NUMS
137 INTEGER ISH3N,IFLAGUNIT,ICXFEM, IPPID,,IPANG,IPTHK,
138 . IPPOS, JPID,N1,IPOS,ISROT,MLAWLY,MID,SUB_ID,
139 . PROP_SHELL,PROP_TSHEL,PROP_SOLID,PROP_SPH,PROP_BEAM,
140 . IAD_KNOT,IPDIR,ISTACK,PROP_TRUSS,PROP_SPRING,PROP_NSTRAND,IPINCH
141
142 INTEGER JPID1,JPID2,NISUB,IPISUB,IFRAM,E_TYPE,OFF_DEF(NSUBMOD),CPT,
143 . ,SUB_INDEX
144 my_real fn, ft, dx, angl,pun,htest,hclos,cvis,rbid,vx,vy,vz,
145 . fac_l,fac_t,fac_m, tmin,tmax,dt,thickt,ierrel,dn_p,zshift,pthk
146 CHARACTER(LEN=NCHARLINE) :: IDTITL,KEY,SOLVERKEYWORD
147 CHARACTER MESS*40
148 CHARACTER(LEN=NCHARKEY) :: KEY2
149 CHARACTER(LEN=NCHARFIELD) ::STRING
150 CHARACTER(LEN=NCHARTITLE) :: TITR1
151 CHARACTER CHROT*7
152 DATA nshell /0/, nshsup /0/, nshinf /0/
153
154
155
156 INTEGER USR2SYS
157 DATA mess/'PID DEFINITION '/
158 DATA pun/0.1/
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251 WRITE(iout,1000)
252
253 nbadi = 0
254 nsst_d = 0
255 nsst_ds= 0
256 npsh = 0
257 cvis =zero
258 iad_knot = 0
259
260
261
263
264
265
266
268 i = 0
269
270
271
272 DO cpt=1,hm_numgeo
273 i = i + 1
274 igflu = 0
275 IF(
ale%GLOBAL%ICAA == 1)igflu=1
276 isorth = 0
277 ihgflu = 0
278
279 fac_m = one
280 fac_l = one
281 fac_t = one
282 key = ''
283 solverkeyword = ''
284 idtitl = ''
285 e_type = 2
286
287
288
290 . option_id = prop_id,
291 . unit_id = uid,
292 . submodel_id = sub_id,
293 . submodel_index = sub_index,
294 . option_titr = idtitl,
295 . keyword2 = key)
296
297
298
299 iflagunit = 0
300 DO iunit=1,unitab%NUNITS
301 IF (unitab%UNIT_ID(iunit) == uid) THEN
302 iflagunit = 1
303 EXIT
304 ENDIF
305 ENDDO
306 IF (uid/=0.AND.iflagunit==0) THEN
307 CALL ancmsg(msgid=659,anmode=aninfo,msgtype=msgerror,
308 . i2=uid,i1=prop_id,c1='property',
309 . C2='property',
310 . C3=IDTITL)
311 ENDIF
312
313
314
315 CALL FRETITL(IDTITL,IGEO(NPROPGI-LTITR+1,I),LTITR)
316 WRITE(IOUT,'(a40)') IDTITL
317
318 IGTYP=0
319 IHBE=0
320 ISMSTR=0
321 ISROT=0
322 IPINCH=0
323 PTHK = ZERO
324
325 SELECT CASE(KEY(1:LEN_TRIM(KEY)))
326 CASE ('type0','void')
327
328
329
330 IGTYP=0
331 CALL HM_READ_PROP0(GEO(1,I),IGEO(1,I),PROP_ID,IGTYP,UNITAB,LSUBMODEL)
332
333 CASE ('type1','type01','shell')
334
335
336
337 IGTYP=1
338 CALL HM_READ_PROP01(GEO(1,I),IGEO(1,I),PROP_TAG ,MULTI_FVM,IGTYP,PROP_ID,IDTITL,UNITAB,LSUBMODEL,
339 . DEFAULTS%SHELL)
340
341 CASE ('type2','type02','trus','truss')
342
343
344
345 IGTYP=2
346 CALL HM_READ_PROP02(IGTYP ,PROP_ID , IGEO(1,I) , GEO(1,I) ,PROP_TAG ,UNITAB ,IDTITL,LSUBMODEL )
347
348 CASE ('type3','type03','beam')
349
350
351
352 IGTYP=3
353 CALL HM_READ_PROP03(GEO(1,I),IGEO(1,I),PROP_TAG,IGTYP,PROP_ID,IDTITL,UNITAB,LSUBMODEL)
354
355 CASE ('type4','type04','spring')
356
357
358
359 IGTYP=4
360 CALL HM_READ_PROP04(GEO(1,I),IGEO(1,I),UNITAB,PROP_ID,IGTYP,IDTITL,PROP_TAG,LSUBMODEL,IUNIT)
361
362 CASE ('type6','type06','sol_orth')
363
364
365
366 IGTYP=6
367 CALL HM_READ_PROP06(GEO(1,I),IGEO(1,I),PROP_TAG ,MULTI_FVM,IGTYP ,
368 . PROP_ID ,IDTITL ,UNITAB ,LSUBMODEL,RTRANS ,
369 . SUB_ID ,ISKN ,IPART ,SUB_INDEX,DEFAULTS%SOLID)
370
371 CASE ('type5','type05','rivet')
372
373
374
375 IGTYP=5
376 CALL HM_READ_PROP05(GEO(1,I),IGEO(1,I),PROP_ID ,IGTYP ,IDTITL ,UNITAB ,LSUBMODEL )
377
378 CASE ('type8','type08','spr_gene')
379
380
381
382 IGTYP=8
383 CALL HM_READ_PROP08(GEO(1,I),IGEO(1,I),PROP_TAG ,IGTYP,PROP_ID,
384 . ISKN,UNITAB,IUNIT,IDTITL,LSUBMODEL,SUB_INDEX)
385
386
387 CASE ('type9','type09','sh_orth')
388
389
390
391 IGTYP=9
392 CALL HM_READ_PROP09(IGTYP ,GEO(1,I),IGEO(1,I),PROP_TAG,UNITAB,
393 . RTRANS,LSUBMODEL,IDTITL ,PROP_ID ,SUB_ID,ISKN,DEFAULTS%SHELL)
394 CASE ('type10','sh_comp')
395
396
397
398 IGTYP=10
399 CALL HM_READ_PROP10(IGTYP ,GEO(1,I),IGEO(1,I),PROP_TAG,UNITAB,
400 . RTRANS,LSUBMODEL,IDTITL ,PROP_ID ,SUB_ID,ISKN,DEFAULTS%SHELL )
401 CASE ('type11','sh_sandw')
402
403
404
405 IGTYP=11
406 CALL HM_READ_PROP11(GEO(1,I) ,IGEO(1,I) ,PM ,IPM ,ISKN ,
407 . UNITAB ,RTRANS ,LSUBMODEL,SUB_ID ,IDTITL ,
408 . PROP_TAG ,PROP_ID ,IGTYP ,DEFAULTS%SHELL )
409
410 CASE ('type12','spr_pul')
411
412
413
414 IGTYP=12
415 CALL HM_READ_PROP12(GEO(1,I), IGEO(1,I),UNITAB, IGTYP, PROP_ID,
416 . PROP_TAG, IDTITL, LSUBMODEL)
417
418 CASE ('type13','spr_beam')
419
420
421
422 igtyp=13
424 . idtitl ,igtyp ,prop_tag, lsubmodel,sub_index)
425
426 CASE ('TYPE16','SH_FABR')
427
428
429
430 igtyp=16
432 . unitab ,rtrans ,lsubmodel,sub_id ,prop_tag ,
433 . igtyp ,prop_id ,idtitl,defaults%SHELL )
434
435 CASE ('TYPE17','STACK')
436
437
438
439 igtyp=17
440 nums = numgeo_stack(cpt)
442 . unitab ,rtrans ,lsubmodel,sub_id ,idtitl ,
443 . prop_id ,prop_tag ,stack_info(nums),defaults%SHELL)
444
445 CASE ('TYPE18','INT_BEAM')
446
447
448
449 igtyp=18
451
452 CASE('TYPE19','PLY')
453
454
455
456 igtyp=19
457 istack = 0
458 CALL hm_read_prop19(prop_id, igtyp, istack, geo(1,i),igeo(1,i),pm,ipm,unitab
459 . lsubmodel)
460
461
462
463
464 CASE ('TYPE14','SOLID')
465 igtyp=14
466 IF (
ale%GLOBAL%ICAA == 0 .AND. igflu == 0)
THEN
467 CALL hm_read_prop14(geo(1,i),igeo(1,i),prop_tag ,multi_fvm,igtyp,prop_id,idtitl,unitab,lsubmodel,
468 . ipart ,defaults%SOLID)
469 ELSE
470 CALL hm_read_prop14f(geo(1,i),igeo(1,i),prop_tag ,multi_fvm,igtyp,prop_id,idtitl,unitab,lsubmodel,
471 . defaults%SOLID)
472 END IF
473 CASE ('FLUID')
474 igtyp=14
475 igflu=1
476 CALL hm_read_prop14f(geo(1,i),igeo(1,i),prop_tag ,multi_fvm,igtyp,prop_id,idtitl,unitab,lsubmodel,
477 . defaults%SOLID)
478
479
480
481
482 CASE ('TYPE15','POROUS')
483 igtyp=15
484 CALL hm_read_prop15(prop_id ,igtyp , geo(1,i) , igeo(1,i) ,prop_tag ,unitab ,
485 . lsubmodel,idtitl , iskn ,itabm1 ,defaults%SOLID )
486
487 CASE ('TYPE20','TSHELL')
488
489
490
491 igtyp=20
492 CALL hm_read_prop20(geo(1,i),igeo(1,i),prop_tag ,multi_fvm,igtyp,prop_id,idtitl,unitab,lsubmodel,
493 . defaults%SOLID)
494
495 CASE ('TYPE21','TSH_ORTH')
496
497
498
499
500 igtyp=21
502 . rtrans ,lsubmodel ,sub_id,idtitl ,igtyp ,prop_tag,
503 . defaults%SOLID)
504 CASE ('TYPE22','TSH_COMP')
505
506
507
508
509 igtyp=22
510 CALL hm_read_prop22(geo(1,i) ,igeo(1,i) ,igtyp,prop_id ,idtitl ,unitab ,
511 . lsubmodel ,pm ,ipm ,rtrans ,sub_id ,iskn,prop_tag,
512 . defaults%SOLID)
513
514 CASE ('TYPE23','SPR_MAT')
515
516
517
518
519 igtyp=23
521 . iskn ,idtitl ,lsubmodel , prop_tag,sub_index)
522
523 CASE ('TYPE25','SPR_AXI')
524
525
526
527 igtyp=25
529 . prop_id,prop_tag,idtitl,lsubmodel,sub_index)
530
531 CASE ('TYPE26','SPR_TAB')
532
533
534
535 igtyp=26
537 . prop_tag,idtitl,lsubmodel)
538
539 CASE ('TYPE27','SPR_BDAMP')
540
541
542
543 igtyp=27
544 CALL hm_read_prop27(geo(1,i),igeo(1,i),prop_tag,igtyp,prop_id,unitab,lsubmodel)
545
546 CASE ('INJECT1')
547
548
549
550 igtyp=0
551 CALL hm_read_inject1(geo(1,i),igeo(1,i),prop_tag,igtyp,prop_id,idtitl,unitab,lsubmodel,ipm,pm,npc,pld)
552
553 CASE ('INJECT2')
554
555
556
557 igtyp=0
558 CALL hm_read_inject2(geo(1,i),igeo(1,i),prop_tag,igtyp,prop_id,idtitl,unitab,lsubmodel,ipm,pm,npc,pld)
559
560 CASE ('TYPE51')
561
562
563
564 igtyp= 51
565 nums = numgeo_stack(cpt)
567 . geo(1,i) ,igeo(1,i) ,pm ,ipm ,iskn ,
568 . prop_id ,prop_tag ,rtrans ,sub_id ,stack_info(nums) ,
569 . idtitl ,unitab ,lsubmodel,defaults%SHELL)
570
571 CASE ('PCOMPP')
572
573
574
575 igtyp=52
576
577 igeo( 1,i) = prop_id
578 igeo(11,i)=igtyp
579 geo(12,i) = igtyp
580
581
582 CASE DEFAULT
583
584
585
587 1 igtyp ,prop_id ,idtitl ,key ,geo(1,i),
588 2 igeo(1,i),lbufgeo ,bufgeo ,iadbuf ,unitab,
589 3 iskn ,knot ,iad_knot,prop_tag ,lsubmodel,
590 4 rtrans ,sub_id ,iunit ,sub_index,defaults )
591
592 END SELECT
593
594
595 prop_shell = 0
596 IF (igtyp == 1 .OR. igtyp == 9 .OR. igtyp == 10 .OR. igtyp == 1
597 . igtyp == 16 .OR. igtyp == 17 .OR. igtyp == 1
598 . igtyp == 52 ) prop_shell = 1
599
600 IF (prop_shell == 1) THEN
601
602 prop_tag(igtyp)%G_SIG = 0
603 prop_tag(igtyp)%G_FOR = 5
604 prop_tag(igtyp)%G_MOM = 3
605 prop_tag(igtyp)%G_THK = 1
606 prop_tag(igtyp)%G_EINT= 2
607 prop_tag(igtyp)%G_EINS= 0
608 prop_tag(igtyp)%L_SIG = 5
609 IF (igtyp == 17) prop_tag(igtyp)%L_SIGPLY = 3
610 prop_tag(igtyp)%L_THK = 0
611 prop_tag(igtyp)%L_EINT= 2
612 prop_tag(igtyp)%L_EINS= 0
613 prop_tag(igtyp)%G_VOL = 1
614 prop_tag(igtyp)%L_VOL = 1
615 prop_tag(igtyp)%LY_DMG = 2
616 IF (igtyp == 9 .OR. igtyp == 10 .OR. igtyp == 11 .OR.
617 . igtyp == 17 .OR. igtyp == 51 .OR. igtyp == 52 ) THEN
618 prop_tag(igtyp)%LY_GAMA = 6
619 prop_tag(igtyp)%LY_DIRA = 2
620 ELSEIF (igtyp == 16) THEN
621 prop_tag(igtyp)%LY_GAMA = 6
622 prop_tag(igtyp)%LY_DIRA = 2
623 prop_tag
624 ENDIF
625 prop_tag(igtyp)%LY_PLAPT = 1
626 prop_tag(igtyp)%LY_SIGPT = 5
627 prop_tag(igtyp)%G_FORPG = 5
628 prop_tag(igtyp)%G_MOMPG = 3
629 prop_tag(igtyp)%G_STRPG = 8
630
631 IF((igtyp == 11 .OR. igtyp == 17 ) ) prop_tag(igtyp)%LY_DMG = 2
632 IF (igtyp == 9 .OR. igtyp == 10 .OR. igtyp == 11 .OR.
633 . igtyp == 16 .OR. igtyp == 17 .OR. igtyp == 5
634 . igtyp == 52 ) prop_tag(igtyp)%L_OFF = 1
635 ENDIF
636
637 ENDDO
638
639
640
641
642 nplymax = 0
643 DO cpt = 1, hm_numgeo
644 IF (igeo(11, cpt) == 19) THEN
645 nplymax = nplymax + 1
646 igeo(102, cpt) = nplymax
647 ENDIF
648 ENDDO
649
650
651
652 DO cpt = 1, hm_numgeo
653 igtyp=igeo(11,cpt)
654 nums= numgeo_stack(cpt)
655 IF (igtyp == 17 .OR. igtyp == 51 ) THEN
656
657 geo(1,cpt) = zero
658
659 ipos =igeo(99,cpt)
660 zshift = geo(199, cpt)
661 IF(ipos == 0 )THEN
662 zshift = - half
663 ELSEIF(ipos == 3) THEN
664 zshift = -one
665 ELSEIF(ipos == 4) THEN
666 zshift = zero
667 ENDIF
668 geo(199, cpt) = zshift
669 n1 = igeo(4,cpt)
670 DO 100 j =1 , n1
671
672 jpid = stack_info(nums)%PID(j)
673 IF (jpid > 0) THEN
674 DO k=1,hm_numgeo
675 nstack = 0
676 IF (igeo(1,k) == jpid .AND.igeo(11,k)==19) THEN
677 stack_info(nums)%PID(j) = k
678
679 nstack = igeo(42,k)
680 nstack = nstack + 1
681 igeo(42 ,k) = nstack
682
683 igeo(200 + nstack ,k) = cpt
684
685 geo(1,cpt) = geo(1,cpt) + geo(1,k)
686 GOTO 100
687 ENDIF
688 ENDDO
689 CALL fretitl2(titr1,igeo(npropgi-ltitr+1,cpt),ltitr)
691 . msgtype=msgerror,
692 . anmode=aninfo_blind_1,
693 . i1=igeo(1,cpt),c1=titr1,
694 . c2='PROPERTY',
695 . i2=jpid)
696 ENDIF
697 100 CONTINUE
698
699 nisub = igeo(44,cpt)
700 IF (nisub > 0) THEN
701 DO 110 j =1 , nisub
702 jpid1 = stack_info(nums)%ISUB( 3*(j-1) + 1 )
703 jpid2 = stack_info(nums)%ISUB( 3*(j-1) + 2 )
704 IF (jpid1 > 0 .OR. jpid2 > 0) THEN
705 DO k=1,numgeo
706 nstack = 0
707 IF (igeo(1,k) == jpid1) THEN
708 stack_info(nums)%ISUB (3*(j-1) + 1) = k
709 GOTO 110
710 ELSEIF (igeo(1,k) == jpid2) THEN
711 stack_info(nums)%ISUB (3*(j-1) + 2) = k
712 GOTO 110
713 ENDIF
714 ENDDO
715 CALL fretitl2(titr1,igeo(npropgi-ltitr+1,cpt),ltitr)
717 . msgtype=msgerror,
718 . anmode=aninfo_blind_1,
719 . i1=igeo(1,cpt),c1=titr1,
720 . c2='PROPERTY',
721 . i2=jpid1)
722 CALL fretitl2(titr1,igeo(npropgi-ltitr+1,cpt),ltitr)
724 . msgtype=msgerror,
725 . anmode=aninfo_blind_1,
726 . i1=igeo(1,cpt),c1=titr1,
727 . c2='PROPERTY',
728 . i2=jpid2)
729 ENDIF
730 110 CONTINUE
731 ENDIF
732
733
734 DO j=1,n1
735 jpid = stack_info(nums)%PID(j)
736 stack_info(nums)%THK(j) = geo(1,jpid)
737 stack_info(nums)%DIR(j) = geo(212,jpid)
738 stack_info(nums)%MID(j) = igeo(101,jpid)
739 ENDDO
740
741
742
743 j=stack_info(nums)%MID(1)
744 mlawly = nint(pm(19,j))
745 prop_id = igeo(1,cpt)
746
747 DO 350 n=2,n1
748 j = stack_info(nums)%MID(n)
749 mid = ipm(1,j)
750 IF (igtyp == 51) GOTO 350
751 IF (nint(pm(19,j)) == mlawly) GOTO 350
752 WRITE(law_id,'(I2)')mlawly
753 IF (mlawly==99) law_id='USER'
755 . msgtype=msgerror,
756 . anmode=aninfo_blind_1,
757 . i1=prop_id,
758 . c1=idtitl,
759 . i2=mid,
760 . c2=law_id)
761 350 CONTINUE
762
763
764
765 IF (igtyp == 17) THEN
766 DO 450 n=1,n1
767 j = stack_info(nums)%MID(n)
768 mid = ipm(1,j)
769 jpid = stack_info(nums)%PID(n)
770 mlawly = nint(pm(19,j))
771 IF (mlawly == 15 .OR. mlawly == 25 .OR. mlawly == 27 .OR.
772 . (mlawly >= 29 .AND.mlawly <= 31).OR. mlawly == 36 .OR.
773 . mlawly == 72 .OR. mlawly == 99) GOTO 450
774
775 WRITE(law_id,'(I2)')mlawly
776 CALL fretitl2(idtitl,igeo(npropgi-ltitr+1,jpid),ltitr)
778 . msgtype=msgerror,
779 . anmode=aninfo,
780 . i1=igeo(1,jpid),
781 . c1=idtitl,
782 . i2=mid,
783 . c2=law_id,
784 . i3=mlawly)
785 450 CONTINUE
786 ENDIF
787 ENDIF
788 ENDDO
789
790
791
792 DO i = 1, numgeo
793 geo(100,i) = sqrt(geo(38,i))
794 END DO
795
796
797
798 rbid = zero
799 CALL vdouble(igeo(1,1),npropgi,numgeo,mess,0,rbid)
800
801
802 RETURN
803
804 1000 FORMAT(//
805 & 5x,' PROPERTY SETS'/,
806 & 5x,' -------------'//)
subroutine hm_option_start(entity_type)
subroutine hm_read_inject1(geo, igeo, prop_tag, igtyp, prop_id, idtitl, unitab, lsubmodel, ipm, pm, npc, pld)
subroutine hm_read_inject2(geo, igeo, prop_tag, igtyp, prop_id, idtitl, unitab, lsubmodel, ipm, pm, npc, pld)
subroutine hm_read_prop13(geo, igeo, ig, unitab, iskn, idtitl, igtyp, prop_tag, lsubmodel, sub_index)
subroutine hm_read_prop14(geo, igeo, prop_tag, multi_fvm, igtyp, ig, titr, unitab, lsubmodel, ipart, defaults_solid)
subroutine hm_read_prop14f(geo, igeo, prop_tag, multi_fvm, igtyp, ig, titr, unitab, lsubmodel, defaults_solid)
subroutine hm_read_prop15(ig, igtyp, geo, igeo, prop_tag, unitab, lsubmodel, idtitl, iskn, itabm1, defaults_solid)
subroutine hm_read_prop16(geo, igeo, pm, ipm, iskn, unitab, rtrans, lsubmodel, sub_id, prop_tag, igtyp, ig, idtitl, defaults_shell)
subroutine hm_read_prop17(geo, igeo, pm, ipm, iskn, unitab, rtrans, lsubmodel, sub_id, idtitl, prop_id, prop_tag, stack_info, defaults_shell)
subroutine hm_read_prop18(geo, igeo, prop_tag, igtyp, ig, idtitl, unitab, lsubmodel)
subroutine hm_read_prop19(ig, igtyp, istack, geo, igeo, pm, ipm, unitab, idrapeid, lsubmodel)
subroutine hm_read_prop20(geo, igeo, prop_tag, multi_fvm, igtyp, ig, titr, unitab, lsubmodel, defaults_solid)
subroutine hm_prop_read21(geo, igeo, ig, iskn, unitab, rtrans, lsubmodel, sub_id, idtitl, igtyp, prop_tag, defaults_solid)
subroutine hm_read_prop22(geo, igeo, igtyp, ig, titr, unitab, lsubmodel, pm, ipm, rtrans, sub_id, iskn, prop_tag, defaults_solid)
subroutine hm_read_prop23(geo, igeo, ig, igtyp, unitab, iskn, titr, lsubmodel, prop_tag, sub_index)
subroutine hm_read_prop25(geo, igeo, unitab, iskn, igtyp, ig, prop_tag, idtitl, lsubmodel, sub_id)
subroutine hm_read_prop26(geo, igeo, unitab, ig, igtyp, prop_tag, idtitl, lsubmodel)
subroutine hm_read_prop27(geo, igeo, prop_tag, igtyp, ig, unitab, lsubmodel)
subroutine hm_read_prop51(geo, igeo, pm, ipm, iskn, prop_id, prop_tag, rtrans, sub_id, stack_info, titr, unitab, lsubmodel, defaults_shell)
subroutine hm_read_prop_generic(igtyp, ig, idtitl, keytype, geo, igeo, lbufgeo, bufgeo, iadbuf, unitab, iskn, knot, iad_knot, prop_tag, lsubmodel, rtrans, sub_id, iunit, sub_index, defaults)
subroutine ini_prop_vars(prop_tag)
integer, parameter nchartitle
integer, parameter ncharkey
integer, parameter ncharfield
integer, parameter ncharline
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)
subroutine vdouble(list, ilist, nlist, mess, ir, rlist)