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

Go to the source code of this file.

Functions/Subroutines

subroutine eporin3 (ixs, veul, ale_connectivity, geo, nft, nel)

Function/Subroutine Documentation

◆ eporin3()

subroutine eporin3 ( integer, dimension(nixs,numels), intent(in) ixs,
veul,
type(t_ale_connectivity), intent(inout) ale_connectivity,
geo,
integer, intent(in) nft,
integer, intent(in) nel )

Definition at line 29 of file eporin3.F.

30C-----------------------------------------------
31C M o d u l e s
32C-----------------------------------------------
34C-----------------------------------------------
35C I m p l i c i t T y p e s
36C-----------------------------------------------
37#include "implicit_f.inc"
38C-----------------------------------------------
39C G l o b a l P a r a m e t e r s
40C-----------------------------------------------
41#include "param_c.inc"
42#include "com04_c.inc"
43C-----------------------------------------------
44C D u m m y A r g u m e n t s
45C-----------------------------------------------
46 INTEGER, INTENT(IN) :: IXS(NIXS,NUMELS), NFT, NEL
47 my_real :: geo(npropg,numgeo),veul(lveul,*)
48 TYPE(t_ale_connectivity), INTENT(INOUT) :: ALE_CONNECTIVITY
49C-----------------------------------------------
50C L o c a l V a r i a b l e s
51C-----------------------------------------------
52 INTEGER :: I,II,J,NG,JAD,JVOI,IGT,NG1,IAD1
53 my_real :: nx,ny,nz,poro
54C-----------------------------------------------
55C S o u r c e L i n e s
56C-----------------------------------------------
57 DO i=1,nel
58 ii=nft+i
59 iad1 = ale_connectivity%ee_connect%iad_connect(ii)
60 DO j=1,6
61 jad=13+j
62 nx=veul(jad ,ii)
63 ny=veul(jad+6,ii)
64 nz=veul(jad+12,ii)
65 poro=one
66 ng=ixs(10,ii)
67 IF(geo(12,ng) == 15)THEN
68 ! --- Normal vector is modified for porous element
69 poro=geo(21,ng)
70 nx=nx*poro
71 ny=ny*poro
72 nz=nz*poro
73 ENDIF
74 jvoi = ale_connectivity%ee_connect%connected(iad1 + j - 1)
75 ! --- Normal vector is modified if adjacent element is porous
76 IF(jvoi > 0)THEN
77 ng1=ixs(10,jvoi)
78 IF(ng1 /= 0.AND.ng1 /= ng)THEN
79 igt=int(geo(12,ng1))
80 IF(igt == 15.AND.geo(21,ng1) < poro) THEN
81 nx=nx*geo(21,ng1)
82 ny=ny*geo(21,ng1)
83 nz=nz*geo(21,ng1)
84 ENDIF
85 ENDIF
86 ENDIF
87 veul(jad,ii)=nx
88 veul(jad+6,ii)=ny
89 veul(jad+12,ii)=nz
90 END DO !J=1,6
91 END DO !I=1,NEL
92C-----------------------------------------------
93 RETURN
#define my_real
Definition cppsort.cpp:32
subroutine poro(geo, nodpor, ms, x, v, w, af, am, skew, weight, nporgeo)
Definition poro.F:40