30 SUBROUTINE globmat( IGEO ,GEO ,PM, PM_STACK,GEO_STACK,
40#include "implicit_f.inc"
50 INTEGER IGEO(NPROPGI,*),IGEO_STACK(4* NPT_STACK+2,*)
52 . geo(npropg,*),pm(npropm,*),geo_stack(6*npt_stack+1,*),
57 INTEGER I,IGMAT,IPOS,IGTYP,IPMAT ,IPTHK ,IPPOS ,IPGMAT,NPT,N,
58 . i1,i2,i3,matly,icrypt,nlay,ilay,ipang,ippid,is,pids
60 . a11,a11r,c1,iz,g,nu,a12,e,rhog,b1t2, thickt,ssp, thkly,posly,
61 . rho,c1thk,a12thk,a1thk ,gthk,nuthk ,ethk,rhog0,rhocpg,rho0
78 IF(igtyp == 11 .AND. igmat > 0)
THEN
103 thkly = geo(i1,i)*thickt
104 posly = geo(i3,i)*thickt
107 ethk = pm(20,matly)*thkly
108 nuthk = pm(21,matly)*thkly
109 gthk = pm(22,matly)*thkly
110 a1thk = pm(24,matly)*thkly
111 a12thk = pm(25,matly)*thkly
112 c1thk = pm(32,matly)*thkly
113 rhog = rhog + pm(1,matly)*thkly
114 rhog0 = rhog0 + pm(89,matly)*thkly
115 rhocpg = rhocpg + pm(69,matly)*thkly
117 b1t2 = b1t2 + a1thk*posly
118 a11r = a11r + a1thk*(thkly*thkly*one_over_12 + posly*posly)
119 iz = iz + thkly*(thkly*thkly*one_over_12 + posly*posly)
126 rho = rhog/
max(em20,thickt)
127 rho0 = rhog0/
max(em20,thickt)
128 rhocp = rhocpg/
max(em20,thickt)
129 e = e/
max(em20,thickt)
130 a11 = a11/
max(em20,thickt)
131 a12 = a12/
max(em20,thickt)
132 iz = one_over_12*thickt**3
133 a11r =a11r/
max(em20, iz)
134 c1 = c1 /
max(em20,thickt)
135 g = g /
max(em20,thickt)
136 nu = nu /
max(em20,thickt)
137 ssp = a11/
max(em20,rho)
139 geo(ipgmat +1 ,i) = rho
140 geo(ipgmat +2 ,i) = e
141 geo(ipgmat +3 ,i) = nu
142 geo(ipgmat +4 ,i) = g
143 geo(ipgmat +5 ,i) = a11
144 geo(ipgmat +6 ,i) = a12
145 geo(ipgmat +7 ,i) = a11r
146 geo(ipgmat +8 ,i) = c1
147 geo(ipgmat +9 ,i) = ssp
149 geo(ipgmat +10,i) = sqrt(g)
150 geo(ipgmat +11,i) = sqrt(a11)
151 geo(ipgmat +12,i) = sqrt(a12)
153 geo(ipgmat +14,i) = rho0
157 WRITE(iout,
'(5X,A,//)')
'CONFIDENTIAL DATA'
159 WRITE(iout,100)igeo(1,i),rho,e,nu,g
161 ELSEIF(igtyp == 52 .OR.
162 . ((igtyp == 17 .OR. igtyp == 51) .AND. igmat > 0))
THEN
165 pids = igeo_stack(2,is)
182 nlay = igeo_stack(1,is)
189 thickt = geo_stack(1,is)
190 thkly = geo_stack(ipthk + ilay,is)*thickt
191 posly = geo_stack(ippos + ilay,is)*thickt
192 matly = igeo_stack(ipmat + ilay,is)
193 ethk = pm(20,matly)*thkly
194 nuthk = pm(21,matly)*thkly
195 gthk = pm(22,matly)*thkly
196 a1thk = pm(24,matly)*thkly
197 a12thk = pm(25,matly)*thkly
198 c1thk = pm(32,matly)*thkly
199 rhog = rhog + pm(1,matly)*thkly
200 rhog0 = rhog0 + pm(89,matly)*thkly
201 rhocpg = rhocpg + pm(69,matly)*thkly
203 b1t2 = b1t2 + a1thk*posly
204 a11r = a11r + a1thk*(thkly*thkly*one_over_12 + posly*posly)
205 iz = iz + thkly*(thkly*thkly*one_over_12 + posly*posly)
212 rho = rhog/
max(em20,thickt)
213 rho0 = rhog0/
max(em20,thickt)
214 rhocp = rhocpg/
max(em20,thickt)
215 e = e/
max(em20,thickt)
216 a11 = a11/
max(em20,thickt)
217 a12 = a12/
max(em20,thickt)
218 iz = one_over_12*thickt**3
219 a11r =a11r/
max(em20, iz)
220 c1 = c1 /
max(em20,thickt)
221 g = g /
max(em20,thickt)
222 nu = nu /
max(em20,thickt)
223 ssp = a11/
max(em20,rho)
225 pm_stack(1 ,is) = rho
229 pm_stack(5 ,is) = a11
230 pm_stack(6 ,is) = a12
231 pm_stack(7 ,is) = a11r
233 pm_stack(9 ,is) = ssp
235 pm_stack(10,is) = sqrt(g)
236 pm_stack(11,is) = sqrt(a11)
237 pm_stack(12,is) = sqrt(a12)
238 pm_stack(13,is) = sqrt
239 pm_stack(14,is) = rho0
240 pm_stack(15,is) = rhocp
242 WRITE(iout,'(5x,a,//)
')'confidential data
'
244 WRITE(IOUT,100)IGEO(1,I),RHO,E,NU,G
252 & 5X,'characteristics of global material
for composite layered
',
253 & ' shell property set
',/
254 & ,5X,' have been recomputed in order to ensure stability
',/
255 & ,5X,'property set number . . . . . . . . . . . .=
',I10/
256 & ,5X,'initial density. . . . . . . . . . . . . . =
',1PG20.13/
257 & ,5X,'young modulus . . . . . . . .
',1PG20.13/
258 & ,5X,'poisson ratio . . . . . . . . . . . . . . .=
',1PG20.13/
259 & ,5X,'shear modulus . . . . . . . . . . . . . . .=
',1PG20.13//)
subroutine lectur(multi_fvm, lsubmodel, is_dyna, detonators, ebcs_tab, seatbelt_converted_elements, nb_seatbelt_shells, nb_dyna_include, user_windows, output, mat_elem, names_and_titles, defaults, glob_therm, pblast, sensor_user_struct)