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

Go to the source code of this file.

Functions/Subroutines

subroutine multi_bilan (partsav, vol, multi_fvm, nel, nft, iparts, gresav, igrth, grth)

Function/Subroutine Documentation

◆ multi_bilan()

subroutine multi_bilan ( dimension(npsav, *), intent(inout) partsav,
dimension(*), intent(in) vol,
type(multi_fvm_struct), intent(in) multi_fvm,
integer, intent(in) nel,
integer, intent(in) nft,
integer, dimension(*), intent(in) iparts,
dimension(*), intent(inout) gresav,
integer, dimension(*), intent(in) igrth,
integer, dimension(*), intent(in) grth )

Definition at line 31 of file multi_bilan.F.

33C-----------------------------------------------
34C M o d u l e s
35C-----------------------------------------------
36 USE multi_fvm_mod
37C-----------------------------------------------
38C I m p l i c i t T y p e s
39C-----------------------------------------------
40#include "implicit_f.inc"
41C-----------------------------------------------
42C C o m m o n B l o c k s
43C-----------------------------------------------
44#include "param_c.inc"
45C-----------------------------------------------
46C D u m m y A r g u m e n t s
47C-----------------------------------------------
48 my_real, INTENT(INOUT) :: partsav(npsav, *), gresav(*)
49 my_real, INTENT(IN) :: vol(*)
50 TYPE(MULTI_FVM_STRUCT), INTENT(IN) :: MULTI_FVM
51 INTEGER, INTENT(IN) :: NEL, NFT, IPARTS(*), IGRTH(*), GRTH(*)
52C-----------------------------------------------
53C L o c a l V a r i a b l e s
54C-----------------------------------------------
55 INTEGER :: I, M
56 my_real :: ei_sav(nel), ek_sav(nel),
57 . xm_sav(nel), ym_sav(nel), zm_sav(nel), rbidon(1), va2(nel),
58 . mas(nel), off(nel), vx(nel), vy(nel), vz(nel)
59
60 rbidon(1) = zero
61 off(1:nel) = one
62 DO i = 1, nel
63 mas(i) = vol(i) * multi_fvm%RHO(i + nft)
64 vx(i) = multi_fvm%VEL(1, i + nft)
65 vy(i) = multi_fvm%VEL(2, i + nft)
66 vz(i) = multi_fvm%VEL(3, i + nft)
67 va2(i) = vx(i)**2 + vy(i)**2 + vz(i)**2
68 ENDDO
69 m = iparts(1)
70 DO i=1,nel
71 partsav(1, m) = partsav(1, m) + multi_fvm%EINT(i + nft) * vol(i)
72 partsav(2, m) = partsav(2, m) + half * mas(i) * va2(i)
73 partsav(6, m) = partsav(6, m) + mas(i)
74 partsav(3, m) = partsav(3, m) + mas(i) * vx(i)
75 partsav(4, m) = partsav(4, m) + mas(i) * vy(i)
76 partsav(5, m) = partsav(5, m) + mas(i) * vz(i)
77 ENDDO
78
#define my_real
Definition cppsort.cpp:32