OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
multi_fvm2fem.F File Reference
#include "implicit_f.inc"
#include "comlock.inc"
#include "mvsiz_p.inc"
#include "vect01_c.inc"
#include "com01_c.inc"
#include "com08_c.inc"
#include "parit_c.inc"
#include "param_c.inc"
#include "task_c.inc"

Go to the source code of this file.

Functions/Subroutines

subroutine multi_fvm2fem (timestep, elbuf_tab, itask, ixs, ixq, iparg, xgrid, accele, vel, wgrid, ms, msnf, veul, stifn, fsky, iads, fskym, condn, condnsky, multi_fvm, nodadt_therm)
subroutine vector_prod (x, y, res, fac)

Function/Subroutine Documentation

◆ multi_fvm2fem()

subroutine multi_fvm2fem ( intent(in) timestep,
type (elbuf_struct_), dimension(ngroup), intent(in), target elbuf_tab,
integer, intent(in) itask,
integer, dimension(nixs, *), intent(in) ixs,
integer, dimension(nixq, *), intent(in) ixq,
integer, dimension(nparg, *), intent(in) iparg,
dimension(3, *), intent(in) xgrid,
dimension(*), intent(inout) accele,
dimension(3, *), intent(in) vel,
dimension(3, *), intent(in) wgrid,
dimension(*), intent(inout) ms,
dimension(*), intent(inout) msnf,
dimension(*), intent(in) veul,
dimension(*), intent(inout) stifn,
dimension(8,lsky), intent(inout) fsky,
integer, dimension(8, *), intent(in) iads,
dimension(*), intent(inout) fskym,
dimension(*), intent(inout) condn,
dimension(*), intent(inout) condnsky,
type(multi_fvm_struct), intent(in) multi_fvm,
integer, intent(in) nodadt_therm )

Definition at line 44 of file multi_fvm2fem.F.

48C-----------------------------------------------
49C M o d u l e s
50C-----------------------------------------------
51 USE initbuf_mod
52 USE elbufdef_mod
53 USE multi_fvm_mod
54C-----------------------------------------------
55C I m p l i c i t T y p e s
56C-----------------------------------------------
57#include "implicit_f.inc"
58#include "comlock.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 "vect01_c.inc"
67#include "com01_c.inc"
68#include "com08_c.inc"
69#include "parit_c.inc"
70#include "param_c.inc"
71#include "task_c.inc"
72C-----------------------------------------------
73C D u m m y A r g u m e n t s
74C-----------------------------------------------
75 TYPE (ELBUF_STRUCT_), TARGET, DIMENSION(NGROUP), INTENT(IN) :: ELBUF_TAB
76 INTEGER, INTENT(IN) :: NODADT_THERM
77 INTEGER, INTENT(IN) :: ITASK, IPARG(NPARG, *), IXS(NIXS, *), IXQ(NIXQ, *),
78 . IADS(8, *)
79
80 my_real, INTENT(IN) ::
81 . xgrid(3, *), wgrid(3, *), veul(*), vel(3, *), timestep
82 my_real, INTENT(INOUT) :: accele(*)
83 my_real, INTENT(INOUT) ::
84 . ms(*), msnf(*)
85 my_real, INTENT(INOUT) :: fskym(*), stifn(*), fsky(8,lsky),
86 . condn(*), condnsky(*)
87 TYPE(MULTI_FVM_STRUCT), INTENT(IN) :: MULTI_FVM
88
89C-----------------------------------------------
90C L o c a l V a r i a b l e s
91C-----------------------------------------------
92 INTEGER :: I, II, K, NF1, ISTRA, ISOLNOD, NSG, IPLA, NG, NEL, NVC
94 . pres(mvsiz)
95 my_real :: norm(3, 6, mvsiz), surf(6, mvsiz), wfac(3, 6, mvsiz)
97 . xg(mvsiz, 8, 3)
99 . xx(3), yy(3)
100 my_real
101 . sti(mvsiz), fr_wav(mvsiz), them(mvsiz,8), conde(mvsiz)
102 my_real
103 . mx1(mvsiz),my1(mvsiz),mz1(mvsiz),
104 . mx2(mvsiz),my2(mvsiz),mz2(mvsiz),
105 . mx3(mvsiz),my3(mvsiz),mz3(mvsiz),
106 . mx4(mvsiz),my4(mvsiz),mz4(mvsiz),
107 . mx5(mvsiz),my5(mvsiz),mz5(mvsiz),
108 . mx6(mvsiz),my6(mvsiz),mz6(mvsiz),
109 . mx7(mvsiz),my7(mvsiz),mz7(mvsiz),
110 . mx8(mvsiz),my8(mvsiz),mz8(mvsiz),
111 . f11(mvsiz),f21(mvsiz),f31(mvsiz),
112 . f12(mvsiz),f22(mvsiz),f32(mvsiz),
113 . f13(mvsiz),f23(mvsiz),f33(mvsiz),
114 . f14(mvsiz),f24(mvsiz),f34(mvsiz),
115 . f15(mvsiz),f25(mvsiz),f35(mvsiz),
116 . f16(mvsiz),f26(mvsiz),f36(mvsiz),
117 . f17(mvsiz),f27(mvsiz),f37(mvsiz),
118 . f18(mvsiz),f28(mvsiz),f38(mvsiz),
119 . dmass1(mvsiz), dmass2(mvsiz), dmass3(mvsiz), dmass4(mvsiz),
120 . dmass5(mvsiz), dmass6(mvsiz), dmass7(mvsiz), dmass8(mvsiz),
121 . x(3), xc(3)
122 integer
123 . nc1(mvsiz), nc2(mvsiz), nc3(mvsiz), nc4(mvsiz),
124 . nc5(mvsiz), nc6(mvsiz), nc7(mvsiz), nc8(mvsiz)
125 INTEGER :: IBID
126 my_real
127 . ar, fr_wave, fthe, fthesky, ffsky, t1,t2,t3
128
129 TYPE(G_BUFEL_) ,POINTER :: GBUF
130
131C-----------------------------------------------
132C S o u r c e L i n e s
133C-----------------------------------------------
134
135 DO ng=itask+1,ngroup,nthread
136C ALE ON / OFF
137 IF (tt > zero .AND. iparg(76, ng) == 1) cycle ! --> OFF
138 IF(iparg(8,ng) /= 1) THEN
139C
140 CALL initbuf(iparg ,ng ,
141 2 mtn ,nel ,nft ,iad ,ity ,
142 3 npt ,jale ,ismstr ,jeul ,jtur ,
143 4 jthe ,jlag ,jmult ,jhbe ,jivf ,
144 5 nvaux ,jpor ,jcvt ,jclose ,ipla ,
145 6 irep ,iint ,igtyp ,israt ,isrot ,
146 7 icsen ,isorth ,isorthg ,ifailure,jsms )
147 IF (mtn == 151) THEN
148 gbuf => elbuf_tab(ng)%GBUF
149 IF(jlag /= 1 .AND. ity<=2) THEN
150 nsg =iparg(10,ng)
151 nvc =iparg(19,ng)
152 isolnod=iparg(28,ng)
153 istra =iparg(44,ng)
154 jsph =0
155 jplasol=ipla
156 isph2sol = 0
157 ipartsph = iparg(69,ng)
158 lft=1
159 llt=nel
160 nf1=nft+1
161 IF (ity == 1 .AND. isolnod /= 4) THEN
162C HEXA CASE
163 gbuf => elbuf_tab(ng)%GBUF
164
165 CALL snorm3(nel, nft, jale, ixs, xgrid, wgrid,
166 . norm(1:3, 1:6, 1:nel), wfac(1:3, 1:6, 1:nel), surf(1:6, 1:nel))
167
168 f11(:) = zero ; f21(:) = zero ; f31(:) = zero
169 f12(:) = zero ; f22(:) = zero ; f32(:) = zero
170 f13(:) = zero ; f23(:) = zero ; f33(:) = zero
171 f14(:) = zero ; f24(:) = zero ; f34(:) = zero
172 f15(:) = zero ; f25(:) = zero ; f35(:) = zero
173 f16(:) = zero ; f26(:) = zero ; f36(:) = zero
174 f17(:) = zero ; f27(:) = zero ; f37(:) = zero
175 f18(:) = zero ; f28(:) = zero ; f38(:) = zero
176C Assemblage des forces nodales
177 DO ii = lft, llt
178 i = ii + nft
179 nc1(ii) = ixs(2, i)
180 nc2(ii) = ixs(3, i)
181 nc3(ii) = ixs(4, i)
182 nc4(ii) = ixs(5, i)
183 nc5(ii) = ixs(6, i)
184 nc6(ii) = ixs(7, i)
185 nc7(ii) = ixs(8, i)
186 nc8(ii) = ixs(9, i)
187C Pressure
188 pres(ii) = third * (gbuf%SIG(ii) + gbuf%SIG(ii + nel) + gbuf%SIG(ii + 2 * nel))
189C Node 1
190 f11(ii) = f11(ii) - fourth * pres(ii) *
191 . (norm(1, 1, ii) * surf(1, ii) + norm(1, 4, ii) * surf(4, ii) + norm(1, 6, ii) * surf(6, ii))
192 f21(ii) = f21(ii) - fourth * pres(ii) *
193 . (norm(2, 1, ii) * surf(1, ii) + norm(2, 4, ii) * surf(4, ii) + norm(2, 6, ii) * surf(6, ii))
194 f31(ii) = f31(ii) - fourth * pres(ii) *
195 . (norm(3, 1, ii) * surf(1, ii) + norm(3, 4, ii) * surf(4, ii) + norm(3, 6, ii) * surf(6, ii))
196C Node 2
197 f12(ii) = f12(ii) - fourth * pres(ii) *
198 . (norm(1, 1, ii) * surf(1, ii) + norm(1, 4, ii) * surf(4, ii) + norm(1, 5, ii) * surf(5, ii))
199 f22(ii) = f22(ii) - fourth * pres(ii) *
200 . (norm(2, 1, ii) * surf(1, ii) + norm(2, 4, ii) * surf(4, ii) + norm(2, 5, ii) * surf(5, ii))
201 f32(ii) = f32(ii) - fourth * pres(ii) *
202 . (norm(3, 1, ii) * surf(1, ii) + norm(3, 4, ii) * surf(4, ii) + norm(3, 5, ii) * surf(5, ii))
203C Node 3
204 f13(ii) = f13(ii) - fourth * pres(ii) *
205 . (norm(1, 1, ii) * surf(1, ii) + norm(1, 2, ii) * surf(2, ii) + norm(1, 5, ii) * surf(5, ii))
206 f23(ii) = f23(ii) - fourth * pres(ii) *
207 . (norm(2, 1, ii) * surf(1, ii) + norm(2, 2, ii) * surf(2, ii) + norm(2, 5, ii) * surf(5, ii))
208 f33(ii) = f33(ii) - fourth * pres(ii) *
209 . (norm(3, 1, ii) * surf(1, ii) + norm(3, 2, ii) * surf(2, ii) + norm(3, 5, ii) * surf(5, ii))
210C Node 4
211 f14(ii) = f14(ii) - fourth * pres(ii) *
212 . (norm(1, 1, ii) * surf(1, ii) + norm(1, 2, ii) * surf(2, ii) + norm(1, 6, ii) * surf(6, ii))
213 f24(ii) = f24(ii) - fourth * pres(ii) *
214 . (norm(2, 1, ii) * surf(1, ii) + norm(2, 2, ii) * surf(2, ii) + norm(2, 6, ii) * surf(6, ii))
215 f34(ii) = f34(ii) - fourth * pres(ii) *
216 . (norm(3, 1, ii) * surf(1, ii) + norm(3, 2, ii) * surf(2, ii) + norm(3, 6, ii) * surf(6, ii))
217C Node 5
218 f15(ii) = f15(ii) - fourth * pres(ii) *
219 . (norm(1, 3, ii) * surf(3, ii) + norm(1, 4, ii) * surf(4, ii) + norm(1, 6, ii) * surf(6, ii))
220 f25(ii) = f25(ii) - fourth * pres(ii) *
221 . (norm(2, 3, ii) * surf(3, ii) + norm(2, 4, ii) * surf(4, ii) + norm(2, 6, ii) * surf(6, ii))
222 f35(ii) = f35(ii) - fourth * pres(ii) *
223 . (norm(3, 3, ii) * surf(3, ii) + norm(3, 4, ii) * surf(4, ii) + norm(3, 6, ii) * surf(6, ii))
224C Node 6
225 f16(ii) = f16(ii) - fourth * pres(ii) *
226 . (norm(1, 3, ii) * surf(3, ii) + norm(1, 4, ii) * surf(4, ii) + norm(1, 5, ii) * surf(5, ii))
227 f26(ii) = f26(ii) - fourth * pres(ii) *
228 . (norm(2, 3, ii) * surf(3, ii) + norm(2, 4, ii) * surf(4, ii) + norm(2, 5, ii) * surf(5, ii))
229 f36(ii) = f36(ii) - fourth * pres(ii) *
230 . (norm(3, 3, ii) * surf(3, ii) + norm(3, 4, ii) * surf(4, ii) + norm(3, 5, ii) * surf(5, ii))
231C Node 7
232 f17(ii) = f17(ii) - fourth * pres(ii) *
233 . (norm(1, 2, ii) * surf(2, ii) + norm(1, 3, ii) * surf(3, ii) + norm(1, 5, ii) * surf(5, ii))
234 f27(ii) = f27(ii) - fourth * pres(ii) *
235 . (norm(2, 2, ii) * surf(2, ii) + norm(2, 3, ii) * surf(3, ii) + norm(2, 5, ii) * surf(5, ii))
236 f37(ii) = f37(ii) - fourth * pres(ii) *
237 . (norm(3, 2, ii) * surf(2, ii) + norm(3, 3, ii) * surf(3, ii) + norm(3, 5, ii) * surf(5, ii))
238C Node 8
239 f18(ii) = f18(ii) - fourth * pres(ii) *
240 . (norm(1, 2, ii) * surf(2, ii) + norm(1, 3, ii) * surf(3, ii) + norm(1, 6, ii) * surf(6, ii))
241 f28(ii) = f28(ii) - fourth * pres(ii) *
242 . (norm(2, 2, ii) * surf(2, ii) + norm(2, 3, ii) * surf(3, ii) + norm(2, 6, ii) * surf(6, ii))
243 f38(ii) = f38(ii) - fourth * pres(ii) *
244 . (norm(3, 2, ii) * surf(2, ii) + norm(3, 3, ii) * surf(3, ii) + norm(3, 6, ii) * surf(6, ii))
245 ENDDO
246
247C--------------------------
248C UPDATE DES MASSES
249C----------------------------
250 IF(iparit == 0)THEN
251 CALL amass3(
252 1 ms, gbuf%RHO, veul(lveul*nft+44),gbuf%TAG22,
253 2 gbuf%VOL, nc1, nc2, nc3,
254 3 nc4, nc5, nc6, nc7,
255 4 nc8, msnf, nvc, gbuf%OFF,
256 5 ixs, nel, jeul)
257 ELSE
258 CALL amass3p(
259 1 fskym, gbuf%RHO, veul(lveul*nft+44),gbuf%TAG22,
260 2 gbuf%VOL, iads, gbuf%OFF, ixs,
261 3 nel, nft, jeul)
262 ENDIF
263
264C ASSEMBLE
265 sti(:) = zero
266 fr_wav(:) = zero
267 ibid = 0
268 IF(iparit == 0)THEN
269 CALL scumu3(
270 1 gbuf%OFF,accele, nc1, nc2,
271 2 nc3, nc4, nc5, nc6,
272 3 nc7, nc8, stifn, sti,
273 4 f11, f21, f31, f12,
274 5 f22, f32, f13, f23,
275 6 f33, f14, f24, f34,
276 7 f15, f25, f35, f16,
277 8 f26, f36, f17, f27,
278 9 f37, f18, f28, f38,
279 a nvc, ar, fr_wave, fr_wav,
280 b mx1, my1, mz1, mx2,
281 c my2, mz2, mx3, my3,
282 d mz3, mx4, my4, mz4,
283 e mx5, my5, mz5, mx6,
284 f my6, mz6, mx7, my7,
285 g mz7, mx8, my8, mz8,
286 h them, fthe, condn, conde,
287 i nel, jthe, isrot, ipartsph,nodadt_therm)
288 ELSE
289 CALL scumu3p(
290 1 gbuf%OFF,sti, fsky, fsky,
291 2 iads, f11, f21, f31,
292 3 f12, f22, f32, f13,
293 4 f23, f33, f14, f24,
294 5 f34, f15, f25, f35,
295 6 f16, f26, f36, f17,
296 7 f27, f37, f18, f28,
297 8 f38, nc1, nc2, nc3,
298 9 nc4, nc5, nc6, nc7,
299 a nc8, ar, fr_wave, fr_wav,
300 b mx1, my1, mz1, mx2,
301 c my2, mz2, mx3, my3,
302 d mz3, mx4, my4, mz4,
303 e mx5, my5, mz5, mx6,
304 f my6, mz6, mx7, my7,
305 g mz7, mx8, my8, mz8,
306 h them, fthesky, condnsky,conde,
307 i nel, nft, jthe, isrot,
308 j ipartsph,nodadt_therm)
309 ENDIF
310 ELSE IF (ity == 1 .AND. isolnod == 4) THEN
311C TETRA CASE
312 gbuf => elbuf_tab(ng)%GBUF
313C-----------------------------------------------
314C Compute nodal normals
315C-----------------------------------------------
316 CALL snorm3t(nel, nft, jale, ixs, xgrid, wgrid,
317 . norm(1:3, 1:6, 1:nel), wfac(1:3, 1:6, 1:nel), surf(1:6, 1:nel))
318 f11(:) = zero ; f21(:) = zero ; f31(:) = zero
319 f12(:) = zero ; f22(:) = zero ; f32(:) = zero
320 f13(:) = zero ; f23(:) = zero ; f33(:) = zero
321 f14(:) = zero ; f24(:) = zero ; f34(:) = zero
322 dmass1(:) = zero ; dmass2(:) = zero ; dmass3(:) = zero ; dmass4(:) = zero
323
324C Assemblage des forces nodales
325 DO ii = lft, llt
326 i = ii + nft
327 nc1(ii) = ixs(2, i)
328 nc2(ii) = ixs(4, i)
329 nc3(ii) = ixs(7, i)
330 nc4(ii) = ixs(6, i)
331C Pressure
332 pres(ii) = third * (gbuf%SIG(ii) + gbuf%SIG(ii + nel) + gbuf%SIG(ii + 2 * nel))
333C Node 1
334 f11(ii) = f11(ii) - third * pres(ii) *
335 . (norm(1, 4, ii) * surf(4, ii) + norm(1, 5, ii) * surf(5, ii) + norm(1, 6, ii) * surf(6, ii))
336 f21(ii) = f21(ii) - third * pres(ii) *
337 . (norm(2, 4, ii) * surf(4, ii) + norm(2, 5, ii) * surf(5, ii) + norm(2, 6, ii) * surf(6, ii))
338 f31(ii) = f31(ii) - third * pres(ii) *
339 . (norm(3, 4, ii) * surf(4, ii) + norm(3, 5, ii) * surf(5, ii) + norm(3, 6, ii) * surf(6, ii))
340C Node 2
341 f12(ii) = f12(ii) - third * pres(ii) *
342 . (norm(1, 2, ii) * surf(2, ii) + norm(1, 5, ii) * surf(5, ii) + norm(1, 6, ii) * surf(6, ii))
343 f22(ii) = f22(ii) - third * pres(ii) *
344 . (norm(2, 2, ii) * surf(2, ii) + norm(2, 5, ii) * surf(5, ii) + norm(2, 6, ii) * surf(6, ii))
345 f32(ii) = f32(ii) - third * pres(ii) *
346 . (norm(3, 2, ii) * surf(2, ii) + norm(3, 5, ii) * surf(5, ii) + norm(3, 6, ii) * surf(6, ii))
347C Node 3
348 f13(ii) = f13(ii) - third * pres(ii) *
349 . (norm(1, 4, ii) * surf(4, ii) + norm(1, 5, ii) * surf(5, ii) + norm(1, 2, ii) * surf(2, ii))
350 f23(ii) = f23(ii) - third * pres(ii) *
351 . (norm(2, 4, ii) * surf(4, ii) + norm(2, 5, ii) * surf(5, ii) + norm(2, 2, ii) * surf(2, ii))
352 f33(ii) = f33(ii) - third * pres(ii) *
353 . (norm(3, 4, ii) * surf(4, ii) + norm(3, 5, ii) * surf(5, ii) + norm(3, 2, ii) * surf(2, ii))
354C Node 4
355 f14(ii) = f14(ii) - third * pres(ii) *
356 . (norm(1, 4, ii) * surf(4, ii) + norm(1, 2, ii) * surf(2, ii) + norm(1, 6, ii) * surf(6, ii))
357 f24(ii) = f24(ii) - third * pres(ii) *
358 . (norm(2, 4, ii) * surf(4, ii) + norm(2, 2, ii) * surf(2, ii) + norm(2, 6, ii) * surf(6, ii))
359 f34(ii) = f34(ii) - third * pres(ii) *
360 . (norm(3, 4, ii) * surf(4, ii) + norm(3, 2, ii) * surf(2, ii) + norm(3, 6, ii) * surf(6, ii))
361 ENDDO
362C--------------------------
363C UPDATE DES MASSES
364C----------------------------
365 IF (iparit == 0) THEN
366 CALL a4mass3(
367 1 ms, gbuf%RHO,gbuf%VOL,nc1,
368 2 nc2, nc3, nc4, msnf,
369 3 gbuf%OFF,nel)
370 ELSE
371 CALL a4mass3p(
372 1 fskym, gbuf%RHO,gbuf%VOL,iads,
373 2 gbuf%OFF,nel, nft)
374 ENDIF
375
376C ASSEMBLE
377 sti(:) = zero
378 fr_wav(:) = zero
379 ibid = 0
380 IF(iparit == 0)THEN
381 CALL s4cumu3(
382 1 gbuf%OFF,accele, nc1, nc2,
383 2 nc3, nc4, stifn, sti,
384 3 f11, f21, f31, f12,
385 4 f22, f32, f13, f23,
386 5 f33, f14, f24, f34,
387 6 them, fthe, condn, conde,
388 7 nel, jthe, nodadt_therm)
389 ELSE
390 CALL s4cumu3p(
391 1 gbuf%OFF,sti, fsky, fsky,
392 2 iads, f11, f21, f31,
393 3 f12, f22, f32, f13,
394 4 f23, f33, f14, f24,
395 5 f34, them, fthesky, condnsky,
396 6 conde, nel, nft, jthe, nodadt_therm)
397 ENDIF
398 ENDIF
399 ENDIF
400 ENDIF
401 ENDIF
402 ENDDO
403C
404C-----------
405 RETURN
subroutine a4mass3(ms, rho, volu, nc1, nc2, nc3, nc4, msnf, off, nel)
Definition a4mass3.F:33
subroutine a4mass3p(fskym, rho, volu, iads, off, nel, nft)
Definition a4mass3p.F:32
subroutine accele(a, ar, v, ms, in, size_nale, nale, ms_2d, size_npby, npby)
Definition accele.F:32
subroutine amass3(ms, rho, volgp, tag22, volu, nc1, nc2, nc3, nc4, nc5, nc6, nc7, nc8, msnf, nvc, off, ixs, nel, jeul)
Definition amass3.F:38
subroutine amass3p(fskym, rho, volgp, tag22, volu, iads, off, ixs, nel, nft, jeul)
Definition amass3p.F:37
#define my_real
Definition cppsort.cpp:32
norm(diag(diag(diag(inv(mat))) -id.SOL), 2) % destroy mumps instance id.JOB
subroutine initbuf(iparg, ng, mtn, llt, nft, iad, ity, npt, jale, ismstr, jeul, jtur, jthe, jlag, jmult, jhbe, jivf, mid, jpor, jcvt, jclose, jpla, irep, iint, igtyp, israt, isrot, icsen, isorth, isorthg, ifailure, jsms)
Definition initbuf.F:261
subroutine s4cumu3(offg, e, nc1, nc2, nc3, nc4, stifn, sti, f11, f21, f31, f12, f22, f32, f13, f23, f33, f14, f24, f34, them, fthe, condn, conde, nel, jthe, nodadt_therm)
Definition s4cumu3.F:37
subroutine s4cumu3p(offg, sti, fsky, fskyv, iads, f11, f21, f31, f12, f22, f32, f13, f23, f33, f14, f24, f34, them, fthesky, condnsky, conde, nel, nft, jthe, nodadt_therm)
Definition s4cumu3p.F:37
subroutine scumu3(offg, e, nc1, nc2, nc3, nc4, nc5, nc6, nc7, nc8, stifn, sti, f11, f21, f31, f12, f22, f32, f13, f23, f33, f14, f24, f34, f15, f25, f35, f16, f26, f36, f17, f27, f37, f18, f28, f38, nvc, ar, fr_wave, fr_wav, mx1, my1, mz1, mx2, my2, mz2, mx3, my3, mz3, mx4, my4, mz4, mx5, my5, mz5, mx6, my6, mz6, mx7, my7, mz7, mx8, my8, mz8, them, fthe, condn, conde, nel, jthe, isrot, ipartsph, nodadt_therm)
Definition scumu3.F:55
subroutine scumu3p(offg, sti, fsky, fskyv, iads, f11, f21, f31, f12, f22, f32, f13, f23, f33, f14, f24, f34, f15, f25, f35, f16, f26, f36, f17, f27, f37, f18, f28, f38, nc1, nc2, nc3, nc4, nc5, nc6, nc7, nc8, ar, fr_wave, fr_wav, mx1, my1, mz1, mx2, my2, mz2, mx3, my3, mz3, mx4, my4, mz4, mx5, my5, mz5, mx6, my6, mz6, mx7, my7, mz7, mx8, my8, mz8, them, fthesky, condnsky, conde, nel, nft, jthe, isrot, ipartsph, nodadt_therm)
Definition scumu3p.F:56
subroutine snorm3(nel, nft, jale, ixs, xgrid, wgrid, norm, wfac, surf)
Definition snorm3.F:31
subroutine snorm3t(nel, nft, jale, ixs, xgrid, wgrid, norm, wfac, surf)
Definition snorm3t.F:33

◆ vector_prod()

subroutine vector_prod ( dimension(3), intent(in) x,
dimension(3), intent(in) y,
dimension(3), intent(out) res,
intent(in) fac )

Definition at line 411 of file multi_fvm2fem.F.

412C-----------------------------------------------
413C I m p l i c i t T y p e s
414C-----------------------------------------------
415#include "implicit_f.inc"
416 my_real, INTENT(IN) :: x(3), y(3), fac
417 my_real, INTENT(OUT) :: res(3)
418
419 res(1) = fac * (x(2) * y(3) - x(3) * y(2))
420 res(2) = fac * (x(3) * y(1) - x(1) * y(3))
421 res(3) = fac * (x(1) * y(2) - x(2) * y(1))