36 1 IPARI ,STFAC ,FRIGAP ,NOINT ,
37 2 IGRSURF ,UNITAB ,LSUBMODEL ,NPARI ,
52#include "implicit_f.inc"
59 INTEGER,
INTENT(IN) :: NPARI, NPARIR
60 INTEGER ISU1,ISU2,ILAGM,NOINT
65 TYPE (SURF_) ,
TARGET ,
DIMENSION(NSURF) :: IGRSURF
67 TYPE (UNIT_TYPE_),
INTENT(IN) ::UNITAB
77 INTEGER I,J,L, NTYP,IS1, IS2,,ILEV,
78 . INACTI, IBC1, IBC2, IBC3,IBC1M, IBC2M, IBC3M,
79 . IGSTI,IDEL3,IVOID,IRS,IRM,INTKG
81 . fric,gap,startt,stopt,visc,viscf,gapscale,ptmax
82 CHARACTER(LEN=40)::MESS
83 CHARACTER(LEN=NCHARTITLE)::MSGTITL
84 CHARACTER(LEN=NCHARKEY)::OPT,KEY,KEY1
85 CHARACTER(LEN=NCHARFIELD)::BCFLAG,BCFLAGM
87 INTEGER,
DIMENSION(:),
POINTER :: INGR2USR
127 is_available = .false.
132 CALL hm_get_intv(
'mainentityids',isu1,is_available,lsubmodel)
133 CALL hm_get_intv(
'secondaryentityids',isu2,is_available,lsubmodel)
134 CALL hm_get_intv(
'NodDel3',idel3,is_available,lsubmodel)
136 CALL hm_get_intv(
'Deactivate_X_BC',ibc1,is_available,lsubmodel)
137 CALL hm_get_intv(
'Deactivate_Y_BC',ibc2,is_available,lsubmodel)
138 CALL hm_get_intv(
'Deactivate_Z_BC',ibc3,is_available,lsubmodel)
139 CALL hm_get_intv(
'Gflag',irs,is_available,lsubmodel)
140 CALL hm_get_intv(
'Vflag',irm,is_available,lsubmodel)
146 CALL hm_get_floatv(
'TYPE3_SCALE',stfac,is_available,lsubmodel,unitab)
147 CALL hm_get_floatv(
'FRIC',fric,is_available,lsubmodel,unitab)
149 CALL hm_get_floatv(
'TSTART',startt,is_available,lsubmodel,unitab)
150 CALL hm_get_floatv(
'TSTOP',stopt,is_available,lsubmodel,unitab)
152 CALL hm_get_floatv(
'Ptlim',ptmax,is_available,lsubmodel,unitab)
165 ingr2usr => igrsurf(1:nsurf)%ID
166 isu1=ngr2usr(isu1,ingr2usr,nsurf)
167 isu2=ngr2usr(isu2,ingr2usr,nsurf)
173 IF (idel3>2.OR.n2d==1) idel3 = 0
185 IF(stfac==zero) stfac=one_fifth
187 IF (stopt == zero) stopt = ep30
198 ipari(11)=4*ibc1+2*ibc2+ibc3 + 8 *(4*ibc1m+2*ibc2m+ibc3m)
204 ipari(11)=4*ibc1+2*ibc2+ibc3 + 8 *(4*ibc1m+2*ibc2m+ibc3m)
210 IF(ptmax==zero) ptmax=ep30
221 WRITE(iout,1503)ibc1,ibc2,ibc3,stfac,fric,gap,startt,stopt,
224 WRITE(iout,
'(A,A,I5/)')
225 .
' DELETION FLAG ON FAILURE OF ELEMENT',
226 .
' (1:YES-ALL/2:YES-ANY) SET TO ',idel3
227 IF(idelkeep == 1)
THEN
229 .
' IDEL: DO NOT REMOVE NON-CONNECTED NODES FROM SECONDARY SURFACE'
235 WRITE(iout,
'(6X,A)')
'NO SECONDARY SURFACE INPUT'
237 WRITE(iout,
'(6X,A)')
'SECONDARY SURFACE INPUT BY SEGMENTS'
239 WRITE(iout,
'(6X,A)')
'SECONDARY SURFACE INPUT BY NODES'
241 WRITE(iout,
'(6X,A)')
'SECONDARY SURFACE INPUT BY SEGMENTS'
243 WRITE(iout,
'(6X,A)')
'SECONDARY SIDE INPUT BY BRICKS'
245 WRITE(iout,
'(6X,A)')
'SECONDARY SIDE INPUT BY SOLID ELEMENTS'
248 WRITE(iout,
'(6X,A)')
'NO MAIN SURFACE INPUT'
250 WRITE(iout,
'(6X,A)')
'MAIN SURFACE INPUT BY SEGMENTS'
252 WRITE(iout,
'(6X,A)')
'MAIN SURFACE INPUT BY NODES'
254 WRITE(iout,
'(6X,A)')
'MAIN SURFACE INPUT BY SEGMENTS'
256 WRITE(iout,
'(6X,A)')
'MAIN SURFACE REFERS ',
257 .
'TO HYPER-ELLIPSOIDAL SURFACE'
261 1000
FORMAT(/1x,
' INTERFACE NUMBER :',i10,1x,a)
266 .
' TYPE==3 SLIDING AND VOIDS ' //,
267 .
' BOUND. COND. DELETED AFTER IMPACT IN X DIR ',i1/,
268 .
' (1:YES 0:NO) Y DIR '
270 .
' STIFFNESS FACTOR. . . . . . . . . . . . . ',1pg20.13/,
271 .
' FRICTION FACTOR . . . . . . . . . . . . . ',1pg20.13/,
272 .
' INITIAL GAP . . . . . . . . . . . . . . . ',1pg20.13/,
273 .
' START TIME. . . . . . . . . . . . . . . . ',1pg20.13/,
274 .
' STOP TIME . . . . . . . . . . . . . . . . ',1pg20.13/,
275 .
' SECONDARY SURFACE REORDERING FLAG . . . . . . ',i1/,
276 .
' MAIN SURFACE REORDERING FLAG. . . . . . ',i1/,
277 .
' TANGENTIAL PRESSURE LIMIT. . .. . . . . . ',1pg20.13/)