38 USE format_mod , ONLY : fmw_5i
39
40
41
42#include "implicit_f.inc"
43
44
45
46 INTEGER ITAB(*),CAND_E(*),CAND_N(*), IRECT(4,*),
47 . ITAG(*),CAND_NN(*),CAND_EN(*), IFPEN(*),
48 . IFPENN(*)
49 INTEGER I_STOK,NSV(*),MSR(*),IWPENE,INACTI,NOINT,NTY,NSN,JWARN
51 . stfn(*),x(3,*),pene(*),cand_p(*),gap_s(*),
52 . gapmin,gapmax,stf(*),gapv(*),fpenmax
53
54
55
56#include "scr03_c.inc"
57#include "units_c.inc"
58
59
60
61 INTEGER I, J, L
62 INTEGER IX1, IX2, IX3, IX4, NSVG
64
65 jwarn = 0
66 DO 100 i=1,i_stok
67 j=cand_n(i)
68 l=cand_e(i)
69
70 ix1=irect(1,l)
71 ix2=irect(2,l)
72 ix3=irect(3,l)
73 ix4=irect(4,l)
74 nsvg=nsv(j)
75 IF(pene(i)>zero)THEN
76 IF(ipri>=1)THEN
77 WRITE(iout,fmt=fmw_5i) itab(nsvg), itab(ix1),itab(ix2), itab(ix3),itab(ix4)
78 END IF
79 WRITE(iout,1000)pene(i)
80
81 penmax=fpenmax*gapv(i)
82 IF(inacti==1) THEN
83
84 WRITE(iout,'(A)')'NODE STIFFNESS IS SET TO ZERO'
85 stfn(j) = zero
86 ELSE IF(inacti==2) THEN
87
88 WRITE(iout,'(A)')'ELEMENT STIFFNESS IS SET TO ZERO'
89 stf(cand_e(i)) = zero
90 ELSE IF(inacti==3) THEN
91
92 WRITE(iout,'(A)')
93 . 'INACTI=3 IS NOT AVAILABLE FOR INTERFACE TYPE23'
94 ELSE IF(inacti==4) THEN
95
96 WRITE(iout,'(A)')
97 . 'INACTI=4 IS NOT AVAILABLE FOR INTERFACE TYPE23'
98 ELSEIF(fpenmax /= zero .AND. pene(i) > penmax) THEN
99
100 WRITE(iout,'(A,1PG20.13,A)')
101 . '
max initial penetration
',PENMAX,' is reached
'
102 WRITE(IOUT,'(a)')'node stiffness is set to zero'
103 STFN(J) = ZERO
104 ELSE IF(INACTI==5) THEN
105
106 JWARN = 1
107 PENE(I)=PENE(I)+EM08*PENE(I)
108 ELSE
109
110
111 JWARN = 1
112 PENE(I)=PENE(I)+ZEP05*(GAPV(I)-PENE(I))
113 END IF
114 CAND_P(IWPENE+1) = PENE(I)
115 CAND_NN(IWPENE+1) = CAND_N(I)
116 CAND_EN(IWPENE+1) = CAND_E(I)
117 IFPENN(IWPENE+1) = IFPEN(I)
118 IWPENE=IWPENE+1
119 ENDIF
120 100 CONTINUE
121 IF (JWARN /= 0) WRITE(IOUT,'(a)')'reduce initial gap'
122
123 1000 FORMAT(2X,'** initial penetration =',1PG20.13)
124 RETURN