OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
m24law.F File Reference
#include "implicit_f.inc"
#include "mvsiz_p.inc"
#include "com08_c.inc"
#include "param_c.inc"

Go to the source code of this file.

Functions/Subroutines

subroutine m24law (lbuf, pm, off, sig, eint, rho, qold, vol, stifn, dt2t, neltst, ityptst, offset, nel, offg, geo, pid, mat, ngl, ssp, aire, voln, vd2, deltax, vis, d1, d2, d3, pnew, psh, q, ssp_eq, dvol, d4, d5, d6, mumax, gama, mssa, dmels, d_max, sold1, sold2, sold3, sold4, sold5, sold6, rx, ry, rz, sx, sy, sz, conde, vol_avg, dtel, g_dt, ipm, rhoref, rhosp, epsd, ity, jtur, jthe, jhbe, jcvt, jsph, ismstr, jsms, npg, svis, glob_therm)

Function/Subroutine Documentation

◆ m24law()

subroutine m24law ( type(l_bufel_) lbuf,
pm,
off,
sig,
eint,
rho,
qold,
vol,
stifn,
dt2t,
integer neltst,
integer ityptst,
integer offset,
integer nel,
offg,
geo,
integer, dimension(nel) pid,
integer, dimension(nel) mat,
integer, dimension(nel) ngl,
ssp,
aire,
voln,
vd2,
deltax,
vis,
d1,
d2,
d3,
pnew,
psh,
q,
ssp_eq,
dvol,
d4,
d5,
d6,
mumax,
gama,
mssa,
dmels,
d_max,
sold1,
sold2,
sold3,
sold4,
sold5,
sold6,
rx,
ry,
rz,
sx,
sy,
sz,
conde,
vol_avg,
dtel,
integer g_dt,
integer, dimension(npropmi,*) ipm,
rhoref,
rhosp,
epsd,
integer, intent(in) ity,
integer, intent(in) jtur,
integer, intent(in) jthe,
integer, intent(in) jhbe,
integer, intent(in) jcvt,
integer, intent(in) jsph,
integer, intent(in) ismstr,
integer, intent(in) jsms,
integer, intent(in) npg,
intent(inout) svis,
type (glob_therm_), intent(inout) glob_therm )

Definition at line 38 of file m24law.F.

57C-----------------------------------------------
58C M o d u l e s
59C-----------------------------------------------
60 USE elbufdef_mod
61 use glob_therm_mod
62C-----------------------------------------------
63C I m p l i c i t T y p e s
64C-----------------------------------------------
65#include "implicit_f.inc"
66C-----------------------------------------------
67C G l o b a l P a r a m e t e r s
68C-----------------------------------------------
69#include "mvsiz_p.inc"
70C-----------------------------------------------
71C C o m m o n B l o c k s
72C-----------------------------------------------
73#include "com08_c.inc"
74#include "param_c.inc"
75C-----------------------------------------------
76C D u m m y A r g u m e n t s
77C-----------------------------------------------
78 INTEGER, INTENT(IN) :: ISMSTR
79 INTEGER, INTENT(IN) :: JSMS
80 INTEGER, INTENT(IN) :: ITY
81 INTEGER, INTENT(IN) :: JTUR
82 INTEGER, INTENT(IN) :: JTHE
83 INTEGER, INTENT(IN) :: JHBE
84 INTEGER, INTENT(IN) :: JCVT
85 INTEGER, INTENT(IN) :: JSPH,NPG
86 INTEGER MAT(NEL),NGL(NEL),PID(NEL),G_DT, IPM(NPROPMI,*)
87 INTEGER NELTST,ITYPTST,OFFSET,NEL
88 my_real dt2t
90 . pm(npropm,*), off(nel), sig(nel,6), eint(nel), rho(nel), qold(nel),
91 . vol(nel), stifn(nel),offg(nel),geo(npropg,*), gama(mvsiz,6),
92 . voln(nel), vd2(nel), deltax(nel), ssp(nel), aire(nel), vis(nel),
93 . psh(nel), pnew(mvsiz),q(nel) ,ssp_eq(nel), dvol(nel),mumax(nel),
94 . d1(nel), d2(nel), d3(nel), d4(nel), d5(nel), d6(nel),
95 . mssa(nel), dmels(nel),d_max(nel),epsd(nel),
96 . rx(nel),ry(nel),rz(nel),sx(nel),sy(nel),sz(nel),
97 . sold1(nel),sold2(nel),sold3(nel),sold4(nel),
98 . sold5(nel), sold6(nel), conde(nel), vol_avg(nel),dtel(nel),
99 . rhoref(*) ,rhosp(*)
100 my_real, DIMENSION(MVSIZ,6), INTENT(INOUT) :: svis
101 TYPE(L_BUFEL_) :: LBUF
102 type (glob_therm_) ,intent(inout) :: glob_therm
103C-----------------------------------------------
104C L o c a l V a r i a b l e s
105C-----------------------------------------------
106 INTEGER I, IMAT,IBID,ISVIS
107 my_real e1, e2, e3, e4, e5, e6,bid1,bid2,bid3,facq0
108 my_real, DIMENSION(NEL) :: r11,r12,r13,r21,r22,r23,r31,r32,r33,volg
109C=======================================================================
110 isvis = 0
111 facq0 = one
112 imat = mat(1)
113c
114c strain rate calculation (for output only)
115c
116 DO i=1,nel
117 epsd(i) = max( abs(d1(i)), abs(d2(i)), abs(d3(i)),
118 . half*abs(d4(i)),half*abs(d5(i)),half*abs(d6(i)))
119 ENDDO
120c
121 CALL conc24(
122 1 pm(1,imat),off, sig, eint,
123 2 lbuf%SIGA, lbuf%EPSA, gama, lbuf%DAM,
124 3 lbuf%ANG, lbuf%SF, lbuf%VK, lbuf%STRA,
125 4 lbuf%CRAK, lbuf%DSUM, lbuf%ROB, lbuf%SIGC,
126 5 lbuf%RK, lbuf%PLA, ngl, d1,
127 6 d2, d3, d4, d5,
128 7 d6, rx, ry, rz,
129 8 sx, sy, sz, lbuf%SEQ,
130 9 rho, lbuf%EPE, nel, r11,
131 a r12, r13, r21, r22,
132 b r23, r31, r32, r33,
133 c jcvt, jsph)
134C----------------------------------------
135C CRACKS DANS REPERE GLOBAL POUR ANIM
136C----------------------------------------
137 IF (pm(56,mat(1)) == one)
138 . CALL m24anim(lbuf%DAM,lbuf%ANG,lbuf%DGLO,nel,
139 . r11,r12,r13,r21,r22,
140 . r23,r31,r32,r33)
141c
142 IF (jhbe == 24) CALL m24dmax(lbuf%DAM,d_max,nel)
143C------------
144 DO i=1,nel
145 ssp(i)=sqrt(pm(24,imat)/pm(1,imat))
146 vis(i)=zero
147 ENDDO
148C
149 IF(jsph==0)THEN
150 CALL mqviscb(
151 1 pm, off, rho, bid1,
152 2 bid2, ssp, bid3, stifn,
153 3 dt2t, neltst, ityptst, aire,
154 4 offg, geo, pid, voln,
155 5 vd2, deltax, vis, d1,
156 6 d2, d3, pnew, psh,
157 7 mat, ngl, q, ssp_eq,
158 8 vol, mssa, dmels, ibid,
159 9 facq0, conde, dtel, g_dt,
160 a ipm, rhoref, rhosp, nel,
161 b ity, ismstr, jtur, jthe,
162 c jsms, npg , glob_therm)
163C
164 volg(1:nel)=npg*voln(1:nel)
165 CALL mnsvis(
166 1 pm, off, rho, geo,
167 2 pid, ssp, aire, volg,
168 3 d1, d2, d3, d4,
169 4 d5, d6, mat, isvis,
170 5 rhoref, nel, svis)
171C . . . . . . . . . . . . . . . . . . . . . . . . . .
172C L'ENERGIE INTERNE COMPREND L ENERGIE DE FISSURATION
173C . . . . . . . . . . . . . . . . . . . . . . . . . .
174 DO 500 i=1,nel
175 e1=d1(i)*(sold1(i)+sig(i,1)+svis(i,1))
176 e2=d2(i)*(sold2(i)+sig(i,2)+svis(i,2))
177 e3=d3(i)*(sold3(i)+sig(i,3)+svis(i,3))
178 e4=d4(i)*(sold4(i)+sig(i,4)+svis(i,4))
179 e5=d5(i)*(sold5(i)+sig(i,5)+svis(i,5))
180 e6=d6(i)*(sold6(i)+sig(i,6)+svis(i,6))
181 eint(i)=eint(i)
182 . -(q(i)+qold(i))*dvol(i)*half
183 . +(e1+e2+e3+e4+e5+e6)*vol_avg(i)*dt1*half
184C
185 eint(i)=eint(i)/vol(i)
186 qold(i)=q(i)
187 500 CONTINUE
188 ELSE
189 CALL mdtsph(
190 1 pm, off, rho, bid1,
191 2 bid2, bid3, stifn, dt2t,
192 3 neltst, ityptst, offg, geo,
193 4 pid, mumax, ssp, voln,
194 5 vd2, deltax, vis, d1,
195 6 d2, d3, pnew, psh,
196 7 mat, ngl, q, ssp_eq,
197 8 g_dt, dtel, nel, ity,
198 9 jtur, jthe)
199
200 CALL mnsvis(
201 1 pm, off, rho, geo,
202 2 pid, ssp, aire, voln,
203 3 d1, d2, d3, d4,
204 4 d5, d6, mat, isvis,
205 5 rhoref, nel, svis)
206C . . . . . . . . . . . . . . . . . . . . . . . . . .
207C L'ENERGIE INTERNE COMPREND L ENERGIE DE FISSURATION
208C . . . . . . . . . . . . . . . . . . . . . . . . . .
209 DO 510 i=1,nel
210 e1=d1(i)*(sold1(i)+sig(i,1)+svis(i,1))
211 e2=d2(i)*(sold2(i)+sig(i,2)+svis(i,2))
212 e3=d3(i)*(sold3(i)+sig(i,3)+svis(i,3))
213 e4=d4(i)*(sold4(i)+sig(i,4)+svis(i,4))
214 e5=d5(i)*(sold5(i)+sig(i,5)+svis(i,5))
215 e6=d6(i)*(sold6(i)+sig(i,6)+svis(i,6))
216 eint(i)=eint(i)+(e1+e2+e3+e4+e5+e6)*vol_avg(i)*dt1*half
217 eint(i)=eint(i)/vol(i)
218 510 CONTINUE
219 ENDIF
220c-----------
221 RETURN
subroutine conc24(pm, off, sig, eint, siga, epxa, gama, dam, ang, eps_f, vk0, strain, crak, damsum, rob, sigc, vk, pla, ngl, d1, d2, d3, d4, d5, d6, rx, ry, rz, sx, sy, sz, seq, rho, epsvp, nel, r11, r12, r13, r21, r22, r23, r31, r32, r33, jcvt, jsph)
Definition conc24.F:52
#define my_real
Definition cppsort.cpp:32
subroutine dtel(ssp, pm, geo, pid, mat, rho0, vis, deltax, aire, vol, dtx)
Definition dtel.F:46
subroutine m24anim(dam, ang, damglo, nel, r11, r12, r13, r21, r22, r23, r31, r32, r33)
Definition m24anim.F:35
subroutine m24dmax(d, dmax, nel)
Definition m24dmax.F:30
#define max(a, b)
Definition macros.h:21
subroutine mdtsph(pm, off, rho, rk, t, re, sti, dt2t, neltst, ityptst, offg, geo, pid, mumax, ssp, vol, vd2, deltax, vis, d1, d2, d3, pnew, psh, mat, ngl, qvis, ssp_eq, g_dt, dtsph, nel, ity, jtur, jthe)
Definition mdtsph.F:47
subroutine mnsvis(pm, off, rho, geo, pid, ssp, aire, vol, d1, d2, d3, d4, d5, d6, mat, isvis, rhoref, nel, svis)
Definition mnsvis.F:35
subroutine mqviscb(pm, off, rho, rk, temp, ssp, re, sti, dt2t, neltst, ityptst, aire, offg, geo, pid, vol, vd2, deltax, vis, d1, d2, d3, pnew, psh, mat, ngl, qvis, ssp_eq, vol0, mssa, dmels, igeo, facq0, conde, dtel, g_dt, ipm, rhoref, rhosp, nel, ity, ismstr, jtur, jthe, jsms, npg, glob_therm)
Definition mqviscb.F:56