OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
binit2.F File Reference
#include "implicit_f.inc"
#include "mvsiz_p.inc"
#include "com04_c.inc"
#include "param_c.inc"
#include "scr17_c.inc"
#include "scry_c.inc"
#include "vect01_c.inc"

Go to the source code of this file.

Functions/Subroutines

subroutine binit2 (elbuf_str, ms, ixq, pm, x, detonators, veul, ale_connectivity, iparg, fill, sigi, bufmat, nel, mat_param, skew, msq, ipart, ipartq, geo, igeo, ipm, nsigs, wma, ptquad, npf, tf, ipargg, iloadp, facload, partsav, v)

Function/Subroutine Documentation

◆ binit2()

subroutine binit2 ( type(elbuf_struct_), target elbuf_str,
ms,
integer, dimension(nixq,*) ixq,
pm,
x,
type(detonators_struct_) detonators,
veul,
type(t_ale_connectivity), intent(inout) ale_connectivity,
integer, dimension(*) iparg,
fill,
sigi,
bufmat,
integer nel,
type(matparam_struct_), dimension(nummat), intent(in) mat_param,
skew,
msq,
integer, dimension(lipart1,*) ipart,
integer, dimension(*) ipartq,
geo,
integer, dimension(*) igeo,
integer, dimension(npropmi,*) ipm,
integer nsigs,
wma,
integer, dimension(*) ptquad,
integer, dimension(*) npf,
tf,
integer, dimension(*) ipargg,
integer, dimension(sizloadp,*), intent(in) iloadp,
dimension(lfacload,*), intent(in) facload,
partsav,
v )

Definition at line 41 of file binit2.F.

48C-----------------------------------------------
49C M o d u l e s
50C-----------------------------------------------
51 USE elbufdef_mod
54 USE matparam_def_mod, ONLY : matparam_struct_
55C-----------------------------------------------
56C I m p l i c i t T y p e s
57C-----------------------------------------------
58#include "implicit_f.inc"
59C-----------------------------------------------
60C G l o b a l P a r a m e t e r s
61C-----------------------------------------------
62#include "mvsiz_p.inc"
63C-----------------------------------------------
64C C o m m o n B l o c k s
65C-----------------------------------------------
66#include "com04_c.inc"
67#include "param_c.inc"
68#include "scr17_c.inc"
69#include "scry_c.inc"
70#include "vect01_c.inc"
71C-----------------------------------------------
72C D u m m y A r g u m e n t s
73C-----------------------------------------------
74 TYPE(MATPARAM_STRUCT_),DIMENSION(NUMMAT) ,INTENT(IN) :: MAT_PARAM
75 INTEGER IXQ(NIXQ,*), IPARG(*),
76 . NEL,IPART(LIPART1,*),IPARTQ(*),
77 . IPM(NPROPMI,*), PTQUAD(*), NSIGS, IGEO(*), NPF(*),
78 . IPARGG(*)
79 my_real ms(*), pm(npropm,*), x(*), veul(10,*),
80 . fill(numnod,*), sigi(nsigs,*),skew(lskew,*),
81 . msq(*), geo(*), wma(*), bufmat(*), tf(*),
82 . partsav(20,*) ,v(*)
83 TYPE(ELBUF_STRUCT_), TARGET :: ELBUF_STR
84 INTEGER,INTENT(IN) :: ILOADP(SIZLOADP,*)
85 my_real,INTENT(IN) :: facload(lfacload,*)
86 TYPE(DETONATORS_STRUCT_)::DETONATORS
87 TYPE(t_ale_connectivity), INTENT(INOUT) :: ALE_CONNECTIVITY
88C-----------------------------------------------
89C L o c a l V a r i a b l e s
90C-----------------------------------------------
91 INTEGER I, NF1, IMULT, IGTYP, IP,IBID
92 INTEGER MAT(MVSIZ), NGL(MVSIZ)
94 . y1(mvsiz), y2(mvsiz), y3(mvsiz), y4(mvsiz),
95 . z1(mvsiz), z2(mvsiz), z3(mvsiz), z4(mvsiz),
96 . aire(mvsiz), deltax(mvsiz),
97 . sy(mvsiz), sz(mvsiz), ty(mvsiz), tz(mvsiz)
98 my_real :: tempel(nel)
99 INTEGER PID(MVSIZ), IX1(MVSIZ), IX2(MVSIZ), IX3(MVSIZ), IX4(MVSIZ)
100C-----------------------------------------------
101 TYPE(L_BUFEL_) ,POINTER :: LBUF
102 TYPE(G_BUFEL_) ,POINTER :: GBUF
103 TYPE(BUF_MAT_) ,POINTER :: MBUF
104C-----------------------------------------------
105C S o u r c e L i n e s
106C-----------------------------------------------
107 gbuf => elbuf_str%GBUF
108 lbuf => elbuf_str%BUFLY(1)%LBUF(1,1,1)
109 igtyp= iparg(38)
110 nf1 = nft+1
111 ibid = 0
112 tempel(:) = zero
113c
114 CALL qcoor2(x,ixq(1,nf1),ngl,mat,
115 . pid, ix1, ix2, ix3, ix4,
116 . y1, y2, y3, y4,
117 . z1, z2, z3, z4,
118 . sy, sz, ty, tz)
119 CALL qvoli2(gbuf%VOL,ixq(1,nf1),
120 . ngl, aire,
121 . y1, y2, y3, y4,
122 . z1, z2, z3, z4)
123 IF (jeul/=0) THEN
124 CALL qdlen2(iparg(63),
125 . aire, deltax,
126 . y1, y2, y3, y4,
127 . z1, z2, z3, z4)
128 CALL edlen2(veul(1,nf1), aire, deltax)
129 ENDIF
130
131C---------------------------------------
132C MULTIMATRIAUX 1
133C---------------------------------------
134 imult=jmult
135 jmult=1
136 lbuf => elbuf_str%BUFLY(jmult)%LBUF(1,1,1)
137 mbuf => elbuf_str%BUFLY(jmult)%MAT(1,1,1)
138 mtn = iparg(25)
139
140 DO i=lft,llt
141 mat(i)=mat_param(iabs(ixq(1,nft+i)))%MULTIMAT%MID(jmult)
142 ENDDO
143
144 !------------------------------------------
145 ! MULTIMATERIAUX POUCENTAGE DE REMPLISSAGE
146 !------------------------------------------
147 CALL bimat2(gbuf%VOL, lbuf%FRAC, fill(1,1), lbuf%VOL, lbuf%OFF, ixq(1,nf1))
148 !----------------------------------------
149 ! INITIALISATION GENERALE
150 !----------------------------------------
151 ip=1
152 CALL matini(pm ,ixq ,nixq ,x ,
153 . geo ,ale_connectivity ,detonators ,iparg ,
154 . sigi ,nel ,skew ,igeo ,
155 . ipart ,ipartq ,
156 . mat ,ipm ,nsigs ,numquad ,ptquad ,
157 . ip ,ngl ,npf ,tf ,bufmat ,
158 . gbuf ,lbuf ,mbuf ,elbuf_str ,iloadp ,
159 . facload, deltax,tempel )
160 !----------------------------------------
161 ! INITIALISATION DE LA THERMIQUE ET TURBULENCE
162 !----------------------------------------
163 IF(jthe/=0) CALL atheri(mat,pm,lbuf%TEMP)
164 IF(jtur/=0) CALL aturi2(ipargg ,lbuf%RHO,pm,ixq,x,
165 . lbuf%RK,lbuf%RE, aire)
166 !------------------------------------------
167 ! INITIALISATION DE LA MATRICE DE MASSE
168 !------------------------------------------
169 IF(jlag+jale+jeul/=0)
170 . CALL qmasi2(pm,mat,ms,lbuf%VOL,msq(nf1),wma,ipartq(nft+1),partsav,
171 . ix1, ix2, ix3, ix4, x ,v)
172 !---------------------------------------
173 ! MULTIMATRIAUX 2
174 !---------------------------------------
175 IF(imult==1)RETURN
176 jmult=2
177 lbuf => elbuf_str%BUFLY(jmult)%LBUF(1,1,1)
178 mbuf => elbuf_str%BUFLY(jmult)%MAT(1,1,1)
179 mtn = iparg(26)
180
181 nf1=nft+1
182 DO i=lft,llt
183 mat(i)=mat_param(iabs(ixq(1,nft+i)))%MULTIMAT%MID(jmult)
184 ENDDO
185 !------------------------------------------
186 ! MULTIMATERIAUX POUCENTAGE DE REMPLISSAGE
187 !------------------------------------------
188 CALL bimat2( gbuf%VOL, lbuf%FRAC, fill(1,2), lbuf%VOL, lbuf%OFF, ixq(1,nf1) )
189 !----------------------------------------
190 ! INITIALISATION GENERALE
191 !----------------------------------------
192 ip=1
193 CALL matini(pm , ixq ,nixq ,x ,
194 . geo , ale_connectivity ,detonators,iparg ,
195 . sigi , nel ,skew ,igeo ,
196 . ipart , ipartq ,
197 . mat , ipm ,nsigs ,numquad ,ptquad ,
198 . ip , ngl ,npf ,tf ,bufmat ,
199 . gbuf , lbuf ,mbuf ,elbuf_str ,iloadp ,
200 . facload, deltax,tempel )
201 !----------------------------------------
202 ! INITIALISATION DE LA THERMIQUE ET TURBULENCE
203 !----------------------------------------
204 IF (jthe/=0) CALL atheri(mat,pm, lbuf%TEMP)
205 IF (jtur/=0) CALL aturi2(ipargg ,lbuf%RHO,pm,ixq,x,
206 . lbuf%RK,lbuf%RE, aire)
207 !------------------------------------------
208 ! INITIALISATION DE LA MATRICE DE MASSE
209 !------------------------------------------
210 IF(jlag+jale+jeul/=0)
211 . CALL qmasi2b(pm,mat,ms,lbuf%VOL,msq(nf1),wma,ipartq(nft+1),partsav,
212 . ix1, ix2, ix3, ix4 ,x ,v)
213C-----------
214 RETURN
subroutine atheri(mat, pm, temp)
Definition atheri.F:41
subroutine aturi2(iparg, rho, pm, ix, x, rk, re, aire)
Definition aturi2.F:32
subroutine bimat2(volt, alph, fill, vol, off, ix)
Definition bimat2.F:29
#define my_real
Definition cppsort.cpp:32
subroutine edlen2(veul, aire, deltax)
Definition edlen2.F:31
subroutine matini(pm, ix, nix, x, geo, ale_connectivity, detonators, iparg, sigi, nel, skew, igeo, ipart, ipartel, mat, ipm, nsig, nums, pt, ipt, ngl, npf, tf, bufmat, gbuf, lbuf, mbuf, elbuf_str, iloadp, facload, ddeltax, tempel)
Definition matini.F:81
subroutine qmasi2(pm, mat, ms, vol, msq, wma, ipart, partsav, ix1, ix2, ix3, ix4, x, v)
Definition qmasi2.F:33
subroutine qmasi2b(pm, mat, ms, vol, msq, wma, ipart, partsav, ix1, ix2, ix3, ix4, x, v)
Definition qmasi2b.F:31
subroutine qvoli2(volu, ixq, ngl, aire, y1, y2, y3, y4, z1, z2, z3, z4)
Definition qvoli2.F:40
subroutine qcoor2(x, ixq, ngl, mxt, pid, ix1, ix2, ix3, ix4, y1, y2, y3, y4, z1, z2, z3, z4, sy, sz, ty, tz)
Definition qcoor2.F:37
subroutine qdlen2(iparg, aire, deltax, y1, y2, y3, y4, z1, z2, z3, z4)
Definition qdlen2.F:39