51#include "implicit_f.inc"
61 TYPE (UNIT_TYPE_),
INTENT(IN) ::UNITAB
63 INTEGER IPM(NPROPMI,*)
68 INTEGER UID,HM_NLEAK,IFLAGUNIT,IUNIT
69 INTEGER I, K, ILAW, IMID, IMAT, ILEAKAGE, IFTLC, IFTAC, IFTACP,
71 my_real ascalet, ascalep, scalelc, scaleac, flc, fac,
72 . x0, x1, x2, x3, lr1, fthk, c1, c2, c3, facp, scaleacp
74 CHARACTER(len=nchartitle) :: TITR
75 LOGICAL :: IS_AVAILABLE
76 is_available = .false.
96 DO iunit=1,unitab%NUNITS
97 IF (unitab%UNIT_ID(iunit) == uid)
THEN
102 IF (uid/=0.AND.iflagunit==0)
THEN
103 CALL ancmsg(msgid=659,anmode=aninfo,msgtype=msgerror,
105 . c1=
'LEAK',c2=
'LEAK',
114 IF(ipm(1,i)==imat)
THEN
116 WRITE(iout,1000)trim(titr),imid
120 IF(ilaw==19.OR.ilaw==58)
THEN
123 CALL hm_get_intv (
'Ileakage' ,ileakage ,is_available, lsubmodel)
124 CALL hm_get_floatv(
'scale1' ,ascalet ,is_available, lsubmodel, unitab)
125 CALL hm_get_floatv(
'scale2' ,ascalep ,is_available, lsubmodel, unitab)
127 IF(ascalet == zero) ascalet=one
128 IF(ascalep == zero) ascalep=one
129 WRITE(iout,1010)ileakage, ascalet, ascalep
134 nfunc=ipm(10,i)+ipm(6,i)
137 CALL hm_get_floatv(
'Acoeft1' ,facp ,is_available, lsubmodel, unitab)
138 CALL hm_get_intv (
'MAT_fct_IDE' ,iftacp ,is_available, lsubmodel)
139 CALL hm_get_floatv(
'FScale11' ,scaleacp ,is_available, lsubmodel, unitab)
141 IF(scaleacp == zero) scaleacp=one
142 IF(facp > 0) iftacp=0
143 IF(facp > one) facp=one
144 IF(facp < zero) facp=zero
147 ipm(10+nfunc,i)=iftacp
148 WRITE(iout,1020) facp, iftacp, scaleacp
153 CALL hm_get_floatv(
'Bcoeft1' ,flc ,is_available, lsubmodel, unitab)
154 CALL hm_get_floatv(
'Acoeft2' ,fac ,is_available, lsubmodel, unitab)
158 WRITE(iout,2010) flc, fac
160 ELSEIF(ileakage==2.OR.ileakage==3.OR.ileakage==4)
THEN
162 CALL hm_get_intv (
'LEAK_FCT_IDLC' ,iftlc ,is_available, lsubmodel)
163 CALL hm_get_intv (
'FUN_B1' ,iftac ,is_available, lsubmodel)
164 CALL hm_get_floatv(
'FScale22' ,scalelc ,is_available, lsubmodel, unitab)
165 CALL hm_get_floatv(
'FScale33' ,scaleac ,is_available, lsubmodel, unitab)
167 IF(scalelc == zero) scalelc=one
168 IF(scaleac == zero) scaleac=one
171 ipm(10+nfunc-1,i)=iftlc
172 ipm(10+nfunc-2,i)=iftac
173 WRITE(iout,2020) ileakage,iftlc,scalelc,iftac,scaleac
175 ELSEIF(ileakage==5)
THEN
177 CALL hm_get_floatv(
'LENGTH' ,lr1 ,is_available, lsubmodel, unitab)
178 CALL hm_get_floatv(
'THICK1' ,fthk ,is_available, lsubmodel, unitab)
180 CALL hm_get_floatv(
'C1' ,c1 ,is_available, lsubmodel, unitab)
181 CALL hm_get_floatv(
'C2' ,c2 ,is_available, lsubmodel, unitab)
182 CALL hm_get_floatv(
'C3' ,c3 ,is_available, lsubmodel, unitab)
187 . msgtype=msgwarning,
188 . anmode=aninfo_blind_1,
192 IF (lr1 == zero) lr1 = one
193 IF (fthk == zero) fthk = lr1
194 IF (c2 == zero) c2 = one
200 WRITE(iout,2050) lr1,fthk,c1,c2,c3
202 ELSEIF(ileakage==6)
THEN
204 CALL hm_get_floatv(
'X0' ,x0 ,is_available, lsubmodel, unitab)
205 CALL hm_get_floatv(
'VX1' ,x1 ,is_available, lsubmodel, unitab)
206 CALL hm_get_floatv(
'ex2' ,x2 ,is_available, lsubmodel, unitab)
207 CALL hm_get_floatv(
'VX3' ,x3 ,is_available, lsubmodel, unitab)
213 WRITE(iout,2060) x0,x1,x2,x3
238 & 5x,
' FABRIC LEAKAGE MODEL ',/,
239 & 5x,
' -------------------- ',/,
241 & 5x,
'MATERIAL NUMBER . . . . . . . . . . . .=',i10)
243 & 5x,
'MODEL NUMBER . . . . . . . . .. . . . .=',i10/
244 & 5x,
'ABCISSA TIME SCALE FACTOR . . . . . . .=',1pg20.13/
245 & 5x,
'ABCISSA PRESSURE SCALE FACTOR . . . . .=',1pg20.13/)
247 & 5x,
'AREA COEFFICIENT FOR FABRIC IN CONTACT: ',/,
248 & 5x,
'CONSTANT COEFFICIENT FOR FABRIC IN CONTACT. .=',1pg20.13/
249 & 5x,
'COEFFICIENT TIME FUNCTION NUMBER. . . . . . .=',i10/
250 & 5x,
' FUNCTION SCALE FACTOR. . . .=',1pg20.13/)
252 & 5x,
' MODEL # 1 ',/,
253 & 5x,
' --------- ',/,
254 & 5x,
'FABRIC LEAKAGE COEFFICIENT LC . . . . .=',1pg20.13/
255 & 5x,
'FABRIC AREA COEFFICIENT AC. . . . . . .=',1pg20.13/)
257 & 5x,
' MODEL #', i2 /,
258 & 5x,
' ------------',/,
259 & 5x,
'FABRIC LEAKAGE COEFFICIENT FUNCTION OF TIME . .=',i10/
260 & 5x,
' FUNCTION SCALE FACTOR. . . .=',1pg20.13/
261 & 5x,
'FABRIC AREA COEFFICIENT FUNCTION OF PRESSURE. .=',i10/
262 & 5x,
' FUNCTION SCALE FACTOR. . . .=',1pg20.13)
264 & 5x,
' AUTOLIV MODEL ',/,
265 & 5x,
' ------------- ',/,
266 & 5x,
'MESH SIZE L . . . . . . . . . . . . . .=',1pg20.13/
267 & 5x,
'FIBER THICKNESS R . . . . . . . . . . .=',1pg20.13/
268 & 5x,
'FABRIC LEAKAGE COEFFICIENT C1 . . . . .=',1pg20.13/
269 & 5x,
'FABRIC LEAKAGE COEFFICIENT C2 . . . . .=',1pg20.13/
270 & 5x,
'FABRIC LEAKAGE COEFFICIENT C3 . . . . .=',1pg20.13/)
272 & 5x,
' ANAGONYE WANG MODEL ',/,
273 & 5x,
' ------------------- ',/,
274 & 5x,
'FABRIC LEAKAGE COEFFICIENT X0 . . . . .=',1pg20.13/
275 & 5x,
'FABRIC LEAKAGE COEFFICIENT X1 . . . . .=',1pg20.13/
276 & 5x,
'FABRIC LEAKAGE COEFFICIENT X2 . . . . .=',1pg20.13/
277 & 5x,
'FABRIC LEAKAGE COEFFICIENT X3 . . . . .=',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)