40 . UPARAM ,MAXUPARAM,NUPARAM ,NUVAR ,NTABL ,
41 . MTAG ,PARMAT ,UNITAB ,PM ,LSUBMODEL,
42 . ISRATE ,MAT_ID ,TITR ,ITABLE ,MAXTABL ,
56#include "implicit_f.inc"
65 TYPE (UNIT_TYPE_),
INTENT(IN) ::UNITAB
66 INTEGER,
INTENT(IN) :: MAT_ID,MAXUPARAM,MAXTABL
67 my_real,
DIMENSION(NPROPM) ,
INTENT(INOUT) :: PM
68 CHARACTER(LEN=NCHARTITLE) ,
INTENT(IN) :: TITR
69 INTEGER,
INTENT(INOUT) :: ISRATE,ITABLE(MAXTABL)
70 INTEGER,
INTENT(INOUT) :: NUPARAM,NUVAR,NTABL,NVARTMP
71 my_real,
DIMENSION(MAXUPARAM) ,
INTENT(INOUT) :: uparam
72 my_real,
DIMENSION(100),
INTENT(INOUT) :: parmat
75 TYPE(matparam_struct_) ,
INTENT(INOUT) :: MATPARAM
80 INTEGER I, J, ILAW, Ires, Itab, Ismooth
81 INTEGER TAB_YLD1,TAB_TEMP1,TAB_YLD2,TAB_TEMP2,TAB_YLD3,TAB_TEMP3,
82 . TAB_YLD4,TAB_TEMP4,TAB_YLD5,TAB_TEMP5,TAB_YLD1C,TAB_TEMP1C,
83 . TAB_YLD2C,TAB_TEMP2C,TAB_YLDT,TAB_TEMPT,TAB_YLDC,TAB_TEMPC,
88 . young1,young2,young3,nu12,nu21,g12,g23,g31,
89 . k1,k2,k3,k4,k5,k6,g1c,d1,d2,sigy1,
90 . cini1,s1,sigy2,cini2,s2,sigy1c,cini1c,
91 . s1c,sigy2c,cini2c,s2c,sigyt,cinit,st,
92 . fcut,c1,ssp,a11,a12,a21,a22,xi1,xi2,
94 . k,e3c,cc,nu1p,nu2p,nu4p,nu5p,
95 . s01,a01,b01,c01,s02,a02,b02,c02,
96 . s03,a03,b03,c03,s04,a04,b04,c04,
97 . s05,a05,b05,c05,asig,bsig,csig,
99 . xscale1,yscale1,xscale2,yscale2,xscale3,yscale3,
100 . xscale4,yscale4,xscale5,yscale5,xscalec,yscalec,
101 . xscales,yscales,xscale1c,yscale1c,xscale2c,yscale2c,
102 . xscalet,yscalet,xscale_unit,yscale_unit,asrate,tref
104 LOGICAL :: IS_AVAILABLE,IS_ENCRYPTED
106 IS_ENCRYPTED = .false.
107 is_available = .false.
114 CALL hm_get_floatv(
'MAT_RHO' ,rho0 ,is_available, lsubmodel, unitab)
115 CALL hm_get_floatv(
'Refer_Rho' ,rhor ,is_available, lsubmodel, unitab)
117 CALL hm_get_floatv(
'MAT_E1' ,young1 ,is_available, lsubmodel, unitab)
118 CALL hm_get_floatv(
'MAT_E2' ,young2 ,is_available, lsubmodel, unitab)
119 CALL hm_get_floatv(
'MAT_E3' ,young3 ,is_available, lsubmodel, unitab)
120 CALL hm_get_intv (
'MAT_IRES' ,ires ,is_available, lsubmodel)
121 CALL hm_get_intv (
'MAT_ITAB' ,itab ,is_available, lsubmodel)
122 CALL hm_get_intv ('mat_smooth
',Ismooth ,IS_AVAILABLE, LSUBMODEL)
123 IF (Ismooth == 0) Ismooth = 1
125 CALL HM_GET_FLOATV('mat_nu21
' ,NU21 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
126 CALL HM_GET_FLOATV('mat_g12
' ,G12 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
127 CALL HM_GET_FLOATV('mat_g23
' ,G23 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
128 CALL HM_GET_FLOATV('mat_g13
' ,G31 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
130 CALL HM_GET_FLOATV('mat_xi1
' ,XI1 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
131 CALL HM_GET_FLOATV('mat_xi2
' ,XI2 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
132 CALL HM_GET_FLOATV('mat_g1c
' ,G1C ,IS_AVAILABLE, LSUBMODEL, UNITAB)
133 CALL HM_GET_FLOATV('mat_d1
' ,D1 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
134 CALL HM_GET_FLOATV('mat_d2
' ,D2 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
136 CALL HM_GET_FLOATV('mat_k1
' ,K1 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
137 CALL HM_GET_FLOATV('mat_k2
' ,K2 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
138 CALL HM_GET_FLOATV('mat_k3
' ,K3 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
140 CALL HM_GET_FLOATV('mat_k4
' ,K4 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
141 CALL HM_GET_FLOATV('mat_k5
' ,K5 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
142 CALL HM_GET_FLOATV('mat_k6
' ,K6 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
143 ! Choice in yield stresses input
146 CALL HM_GET_FLOATV('mat_sigy1
',SIGY1 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
147 IF (SIGY1 == ZERO) SIGY1 = INFINITY
148 CALL HM_GET_FLOATV('mat_cini1
',CINI1 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
149 IF (CINI1 == ZERO) CINI1 = INFINITY
150 CALL HM_GET_FLOATV('mat_s1
' ,S1 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
152 CALL HM_GET_FLOATV('mat_sigy2
',SIGY2 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
153 IF (SIGY2 == ZERO) SIGY2 = INFINITY
154 CALL HM_GET_FLOATV('mat_cini2
',CINI2 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
155 IF (CINI2 == ZERO) CINI2 = INFINITY
156 CALL HM_GET_FLOATV('mat_s2
' ,S2 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
158 CALL HM_GET_FLOATV('mat_sigy1c
',SIGY1C ,IS_AVAILABLE, LSUBMODEL, UNITAB)
159 IF (SIGY1C == ZERO) SIGY1C = INFINITY
160 CALL HM_GET_FLOATV('mat_cini1c
',CINI1C ,IS_AVAILABLE, LSUBMODEL, UNITAB)
161 IF (CINI1C == ZERO) CINI1C = INFINITY
162 CALL HM_GET_FLOATV('mat_s1c
' ,S1C ,IS_AVAILABLE, LSUBMODEL, UNITAB)
164 CALL HM_GET_FLOATV('mat_sigy2c
',SIGY2C ,IS_AVAILABLE, LSUBMODEL, UNITAB)
165 IF (SIGY2C == ZERO) SIGY2C = INFINITY
166 CALL HM_GET_FLOATV('mat_cini2c
',CINI2C ,IS_AVAILABLE, LSUBMODEL, UNITAB)
167 IF (CINI2C == ZERO) CINI2C = INFINITY
168 CALL HM_GET_FLOATV('mat_s2c
' ,S2C ,IS_AVAILABLE, LSUBMODEL, UNITAB)
170 CALL HM_GET_FLOATV('mat_sigyt
',SIGYT ,IS_AVAILABLE, LSUBMODEL, UNITAB)
171 IF (SIGYT == ZERO) SIGYT = INFINITY
172 CALL HM_GET_FLOATV('mat_cinit
',CINIT ,IS_AVAILABLE, LSUBMODEL, UNITAB)
173 IF (CINIT == ZERO) CINIT = INFINITY
174 CALL HM_GET_FLOATV('mat_st
' ,ST ,IS_AVAILABLE, LSUBMODEL, UNITAB)
177 CALL HM_GET_INTV ('tab_yld1
' ,TAB_YLD1 ,IS_AVAILABLE, LSUBMODEL)
178 CALL HM_GET_FLOATV('mat_xscale1
' ,XSCALE1 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
179 IF (XSCALE1 == ZERO) THEN
180 CALL HM_GET_FLOATV_DIM('mat_xscale1
' ,XSCALE_UNIT ,IS_AVAILABLE, LSUBMODEL, UNITAB)
181 XSCALE1 = ONE * XSCALE_UNIT
183 CALL HM_GET_FLOATV('mat_yscale1
' ,YSCALE1 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
184 IF (YSCALE1 == ZERO) THEN
185 CALL HM_GET_FLOATV_DIM('mat_yscale1
' ,YSCALE_UNIT ,IS_AVAILABLE, LSUBMODEL, UNITAB)
186 YSCALE1 = ONE * YSCALE_UNIT
189 CALL HM_GET_INTV ('tab_yld2
' ,TAB_YLD2 ,IS_AVAILABLE, LSUBMODEL)
190 CALL HM_GET_FLOATV('mat_xscale2
' ,XSCALE2 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
191 IF (XSCALE2 == ZERO) THEN
192 CALL HM_GET_FLOATV_DIM('mat_xscale2
' ,XSCALE_UNIT ,IS_AVAILABLE, LSUBMODEL, UNITAB)
193 XSCALE2 = ONE * XSCALE_UNIT
195 CALL HM_GET_FLOATV('mat_yscale2
' ,YSCALE2 ,IS_AVAILABLE, LSUBMODEL, UNITAB)
196 IF (YSCALE2 == ZERO) THEN
197 CALL HM_GET_FLOATV_DIM('mat_yscale2
' ,YSCALE_UNIT ,IS_AVAILABLE, LSUBMODEL, UNITAB)
198 YSCALE2 = ONE * YSCALE_UNIT
201 CALL HM_GET_INTV ('tab_yld1c
' ,TAB_YLD1C ,IS_AVAILABLE, LSUBMODEL)
202 CALL HM_GET_FLOATV('mat_xscale1c
',XSCALE1C ,IS_AVAILABLE, LSUBMODEL, UNITAB)
203 IF (XSCALE1C == ZERO) THEN
204 CALL HM_GET_FLOATV_DIM('mat_xscale1c
' ,XSCALE_UNIT ,IS_AVAILABLE, LSUBMODEL, UNITAB)
205 XSCALE1C = ONE * XSCALE_UNIT
207 CALL HM_GET_FLOATV('mat_yscale1c
',YSCALE1C ,IS_AVAILABLE, LSUBMODEL, UNITAB)
208 IF (YSCALE1C == ZERO) THEN
209 CALL HM_GET_FLOATV_DIM('mat_yscale1c
' ,YSCALE_UNIT ,IS_AVAILABLE, LSUBMODEL, UNITAB)
210 YSCALE1C = ONE * YSCALE_UNIT
213 CALL HM_GET_INTV ('tab_yld2c
' ,TAB_YLD2C ,IS_AVAILABLE, LSUBMODEL)
214 CALL HM_GET_FLOATV('mat_xscale2c
',XSCALE2C ,IS_AVAILABLE, LSUBMODEL, UNITAB)
215 IF (XSCALE2C == ZERO) THEN
216 CALL HM_GET_FLOATV_DIM('mat_xscale2c
' ,XSCALE_UNIT ,IS_AVAILABLE, LSUBMODEL, UNITAB)
217 XSCALE2C = ONE * XSCALE_UNIT
219 CALL HM_GET_FLOATV('mat_yscale2c
',YSCALE2C ,IS_AVAILABLE, LSUBMODEL, UNITAB)
220 IF (YSCALE2C == ZERO) THEN
221 CALL HM_GET_FLOATV_DIM('mat_yscale2c
' ,YSCALE_UNIT ,IS_AVAILABLE, LSUBMODEL, UNITAB)
222 YSCALE2C = ONE * YSCALE_UNIT
225 CALL HM_GET_INTV ('tab_yldt
' ,TAB_YLDT ,IS_AVAILABLE, LSUBMODEL)
226 CALL HM_GET_FLOATV('mat_xscalet
' ,XSCALET ,IS_AVAILABLE, LSUBMODEL, UNITAB)
227 IF (XSCALET == ZERO) THEN
228 CALL HM_GET_FLOATV_DIM('mat_xscalet
' ,XSCALE_UNIT ,IS_AVAILABLE, LSUBMODEL, UNITAB)
229 XSCALET = ONE * XSCALE_UNIT
231 CALL HM_GET_FLOATV('mat_yscalet
' ,YSCALET ,IS_AVAILABLE, LSUBMODEL, UNITAB)
232 IF (YSCALET == ZERO) THEN
233 CALL HM_GET_FLOATV_DIM('mat_yscalet
' ,YSCALE_UNIT ,IS_AVAILABLE, LSUBMODEL, UNITAB)
234 YSCALET = ONE * YSCALE_UNIT
240 ! Default algorithm : Cutting plane
241 IF (Ires == 0) Ires = 2
243 nu12 = nu21*young1/young2
245 IF(nu12*nu21 >= one )
then
248 . anmode=aninfo_blind_2,
256 . anmode=aninfo_blind_2,
263 . anmode=aninfo_blind_2,
270 . anmode=aninfo_blind_2,
277 . anmode=aninfo_blind_2,
284 . anmode=aninfo_blind_2,
291 . anmode=aninfo_blind_2,
295 IF (abs(k1)<=abs(k2))
THEN
298 . anmode=aninfo_blind_2,
302 IF (abs(k2)<=abs(k4))
THEN
305 . anmode=aninfo_blind_2,
315 IF (itab > 0) asrate = 10000.0d0*unitab%FAC_T_WORK
319 a11 = young1/(one - nu12*nu21)
320 a12 = nu12*young2/(one - nu12*nu21)
321 a21 = nu21*young1/(one - nu12*nu21)
322 a22 = young2/(one - nu12*nu21)
338 itable(3) = tab_yld1c
339 itable(4) = tab_yld2c
392 IF (xscale1 /= zero)
THEN
393 uparam(24) = one/xscale1
398 IF (xscale2 /= zero)
THEN
399 uparam(26) = one/xscale2
404 IF (xscale1c /= zero)
THEN
405 uparam(28) = one/xscale1c
409 uparam(29) = yscale1c
410 IF (xscale2c /= zero)
THEN
411 uparam(30) = one/xscale2c
415 uparam(31) = yscale2c
416 IF (xscalet /= zero)
THEN
417 uparam(32) = one/xscalet
427 parmat(1) =
max(young1,young2,young3,g12,g23,g31)
428 parmat(2) =
max(young1,young2,young3)
429 parmat(3) =
max(nu12,nu21)
432 dmax =
max(young1,young2)
433 parmat(17) = dmin/dmax/dmax
438 ssp = sqrt(
max(a11,a12,a22,a21,young3,g12,g23,g31)/ rho0)
459 WRITE(iout,1000) trim(titr),mat_id,ilaw
461 IF (is_encrypted)
THEN
462 WRITE(iout,
'(5X,A,//)')
'CONFIDENTIAL DATA'
464 WRITE(iout,1200) rho0
465 WRITE(iout,1300) young1,young2,young3,nu12,nu21,g12,g23,g31
466 WRITE(iout,1350) ires
467 WRITE(iout,1450) xi1,xi2,k1,k2,k3,k4,k5,k6,g1c,d1,d2
469 WRITE(iout,1550) sigy1,cini1,s1,sigy2,cini2,s2,sigy1c,cini1c,s1c
470 . sigy2c,cini2c,s2c,sigyt,cinit,st
472 WRITE(iout,1575) tab_yld1,xscale1,yscale1,tab_yld2,xscale2,yscale2,
473 . tab_yld1c,xscale1c,yscale1c,tab_yld2c,xscale2c,yscale2c,
474 . tab_yldt,xscalet,yscalet,ismooth
480 & 5x,
'MATERIAL NUMBER. . . . . . . . . . . . =',i10/,
481 & 5x,
'MATERIAL LAW . . . . . . . . . . . . . =',i10/)
483 &(5x,
'MATERIAL MODEL : PAPERBOARD LIGHT (PFEIFFER,2019)',/,
484 & 5x,
'-------------------------------------------------',/)
486 & 5x,
'INITIAL DENSITY . . . . . . . . . . . .=',1pg20.13/)
488 & 5x,
'YOUNG MODULUS IN DIRECTION 1. . . . . .=',1pg20.13/
489 & 5x,
'YOUNG MODULUS IN DIRECTION 2. . . . . .=',1pg20.13/
490 & 5x,
'YOUNG MODULUS IN DIRECTION 3. . . . . .=',1pg20.13/
491 & 5x,
'POISSON RATIO NU12 . . . . . . . . . .=',1pg20.13/
492 & 5x,'poisson ratio nu21 . . . . . . . . . .=
',1PG20.13/
493 & 5X,'shear modulus in 12 . . . . . . . . . .=
',1PG20.13/
494 & 5X,'shear modulus in 23 . . . . . . . . . .=
',1PG20.13/
495 & 5X,'shear modulus in 13 . . . . . . . . . .=
',1PG20.13/)
497 & 5X,'RETURN mapping algorithm flag . . . . .=
',I3/
498 & 5X,' ires=1 nice explicit
'/
499 & 5X,' ires=2 newton-iteration implicit(cutting plane)
'/)
501 & 5X,'xi1 coupling
PARAMETER in direction 1 .=
',1PG20.13/
502 & 5X,'xi2 coupling
PARAMETER in direction 2 .=
',1PG20.13/
503 & 5X,'plastic potential
PARAMETER k1 . . . .=
',1PG20.13/
504 & 5X,'plastic potential
PARAMETER k2 . . . .=',1pg20.13/
505 & 5x,
'PLASTIC POTENTIAL PARAMETER K3 . . . .=',1pg20.13/
506 & 5x,
'PLASTIC POTENTIAL PARAMETER K4 . . . .=',1pg20.13/
507 & 5x,
'PLASTIC POTENTIAL PARAMETER K5 . . . .=',1pg20.13/
508 & 5x,
'PLASTIC POTENTIAL PARAMETER K6 . . . .=',1pg20.13/
509 & 5x,
'G1C CORRECTION PARAMETER FOR R1C. . . .=',1pg20.13/
510 & 5x,
'D1 SHEAR YIELD STRESS PARAMETER . . . .=',1pg20.13/
511 & 5x,
'D2 SHEAR YIELD STRESS PARAMETER . . . .=',1pg20.13/)
513 & 5x,
'-----------------------------------------------',/,
514 & 5x,
'YIELD STRESS IN TENSION IN DIRECTION 1 (MD) ',/,
515 & 5x,
'-----------------------------------------------',/,
516 & 5x,
'INITIAL YIELD STRESS SIGY1 . . . . . .=',1pg20.13/
517 & 5x,
'VALUE AT ORDINATE AXIS CINI1. . . . . .=',1pg20.13/
518 & 5x,
'YIELD STRESS SLOPE S1 . . . . . . . . .=',1pg20.13/
519 & 5x,
'-----------------------------------------------',/,
520 & 5x,
'YIELD STRESS IN TENSION IN DIRECTION 2 (CD) ',/,
521 & 5x,
'-----------------------------------------------',/,
522 & 5x,
'INITIAL YIELD STRESS SIGY2 . . . . . .=',1pg20.13/
523 & 5x,
'VALUE AT ORDINATE AXIS CINI2. . . . . .=',1pg20.13/
524 & 5x,
'YIELD STRESS SLOPE S2 . . . . . . . . .=',1pg20.13/
525 & 5x,
'-----------------------------------------------',/,
526 & 5x,
'YIELD STRESS IN COMPRESSION IN DIRECTION 1 (MD)',/,
527 & 5x,
'-----------------------------------------------',/,
528 & 5x,
'INITIAL YIELD STRESS SIGY1C . . . . . .=',1pg20.13/
529 & 5x,
'VALUE AT ORDINATE AXIS CINI1C . . . . .=',1pg20.13/
530 & 5x,
'YIELD STRESS SLOPE S1C . . . . . . . .=',1pg20.13/
531 & 5x,
'-----------------------------------------------',/,
532 & 5x,
'YIELD STRESS IN COMPRESSION IN DIRECTION 2 (CD)',/,
533 & 5x,
'-----------------------------------------------',/,
534 & 5x,
'INITIAL YIELD STRESS SIGY2C . . . . . .=',1pg20.13/
535 & 5x,
'VALUE AT ORDINATE AXIS CINI2C . . . . .=',1pg20.13/
536 & 5x,
'YIELD STRESS SLOPE S2C . . . . . . . .=',1pg20.13/
537 & 5x,
'-----------------------------------------------',/,
538 & 5x,
'YIELD STRESS IN SHEAR ',/,
539 & 5x,
'-----------------------------------------------',/,
540 & 5x,
'INITIAL YIELD STRESS SIGYT . . . . . .=',1pg20.13/
541 & 5x,
'VALUE AT ORDINATE AXIS CINIT . . . . .=',1pg20.13/
542 & 5x,
'YIELD STRESS SLOPE ST . . . . . . . . .=',1pg20.13/)
544 & 5x,
'---------------------------------------------------------',/,
545 & 5x,
'TABULATED YIELD STRESS IN TENSION IN DIRECTION 1 (MD) ',/,
546 & 5x,
'---------------------------------------------------------',/,
547 & 5x,
'TABULATED YIELD - STRAIN RATE TABLE ID.=',i10/
548 & 5x,
'TABULATED YIELD X FACTOR . . . . . . .=',1pg20.13/
549 & 5x,
'TABULATED YIELD Y FACTOR . . . . . . .=',1pg20.13/
550 & 5x,
'---------------------------------------------------------',/,
551 & 5x,
'TABULATED YIELD STRESS IN TENSION IN DIRECTION 2 (CD) ',/,
552 & 5x,
'---------------------------------------------------------',/,
553 & 5x,
'TABULATED YIELD - STRAIN RATE TABLE ID.=',i10/
554 & 5x,
'TABULATED YIELD X FACTOR . . . . . . .=',1pg20.13/
555 & 5x,
'TABULATED YIELD Y FACTOR . . . . . . .=',1pg20.13/
556 & 5x,
'---------------------------------------------------------',/,
557 & 5x,
'TABULATED YIELD STRESS IN COMPRESSION IN DIRECTION 1 (MD)',/,
558 & 5x,
'---------------------------------------------------------',/,
559 & 5x,
'TABULATED YIELD - STRAIN RATE TABLE ID.=',i10/
560 & 5x,
'TABULATED YIELD X FACTOR . . . . . . .=',1pg20.13/
561 & 5x,
'TABULATED YIELD Y FACTOR . . . . . . .=',1pg20.13/
562 & 5x,
'---------------------------------------------------------',/,
563 & 5x,
'TABULATED YIELD STRESS IN COMPRESSION IN DIRECTION 2 (CD)',/,
564 & 5x,
'---------------------------------------------------------',/,
565 & 5x,
'TABULATED YIELD - STRAIN RATE TABLE ID.=',i10/
566 & 5x,
'TABULATED YIELD X FACTOR . . . . . . .=',1pg20.13/
567 & 5x,'tabulated yield y factor . . . . . . .=
',1PG20.13/
568 & 5X,'---------------------------------------------------------
',/,
569 & 5X,'tabulated yield stress in shear
',/,
570 & 5X,'---------------------------------------------------------
',/,
571 & 5X,'tabulated yield - strain rate table
id.=
',I10/
572 & 5X,'tabulated yield x factor . . . . . . .=
',1PG20.13/
573 & 5X,'tabulated yield y factor . . . . . . .=
',1PG20.13/
574 & 5X,'---------------------------------------------------------
',/,
575 & 5X,'DATA for strain-rate computation
',/,
576 & 5X,'---------------------------------------------------------
',/,
577 & 5X,'table interpolation flag . . . . . . .=
',I10/
578 & 5X,' ismooth=1 linear interpolation
'/
579 & 5X,' ismooth=2 logarithmic interpolation base 10
'/
580 & 5X,' ismooth=3 logarithmic interpolation base n
'/)
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)