OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
porfor4.F
Go to the documentation of this file.
1Copyright> OpenRadioss
2Copyright> Copyright (C) 1986-2025 Altair Engineering Inc.
3Copyright>
4Copyright> This program is free software: you can redistribute it and/or modify
5Copyright> it under the terms of the GNU Affero General Public License as published by
6Copyright> the Free Software Foundation, either version 3 of the License, or
7Copyright> (at your option) any later version.
8Copyright>
9Copyright> This program is distributed in the hope that it will be useful,
10Copyright> but WITHOUT ANY WARRANTY; without even the implied warranty of
11Copyright> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12Copyright> GNU Affero General Public License for more details.
13Copyright>
14Copyright> You should have received a copy of the GNU Affero General Public License
15Copyright> along with this program. If not, see <https://www.gnu.org/licenses/>.
16Copyright>
17Copyright>
18Copyright> Commercial Alternative: Altair Radioss Software
19Copyright>
20Copyright> As an alternative to this open-source version, Altair also offers Altair Radioss
21Copyright> software under a commercial license. Contact Altair to discuss further if the
22Copyright> commercial version may interest you: https://www.altair.com/radioss/.
23!||====================================================================
24!|| porfor4 ../engine/source/airbag/porfor4.F
25!||--- called by ------------------------------------------------------
26!|| airbagb1 ../engine/source/airbag/airbagb1.f
27!||--- calls -----------------------------------------------------
28!|| get_u_func ../engine/source/user_interface/ufunc.F
29!||====================================================================
30 SUBROUTINE porfor4(SVTFAC,IM,IPM,PM,STRAIN,P,PEXT,IEL,NEL)
31C-----------------------------------------------
32C I m p l i c i t T y p e s
33C-----------------------------------------------
34#include "implicit_f.inc"
35C-----------------------------------------------
36C C o m m o n B l o c k s
37C-----------------------------------------------
38#include "param_c.inc"
39C-----------------------------------------------
40C D u m m y A r g u m e n t s
41C-----------------------------------------------
42 INTEGER IPM(NPROPMI,*),IM,IEL,NEL
44 . svtfac,pm(npropm,*),strain(*),p,pext
45C-----------------------------------------------
46C L o c a l V a r i a b l e s
47C-----------------------------------------------
48 INTEGER IPORA,IPORP,NFUNC
50 . epsxx,epsyy,rs,rp,fpora,fporp,deri,flc,fac
51 my_real get_u_func
52 EXTERNAL get_u_func
53C=======================================================================
54 epsxx = strain(iel)
55 epsyy = strain(iel+nel)
56 rs=one+epsxx+epsyy+epsxx*epsyy
57 rp=min(pext/p,one)
58C
59 flc=zero
60 nfunc=ipm(10,im)+ipm(6,im)
61 ipora=ipm(10+nfunc-1,im)
62 IF(ipora > 0) THEN
63 fpora=pm(164,im)
64 flc=fpora*get_u_func(ipora,rs,deri)
65 ENDIF
66C
67 fac=zero
68 iporp=ipm(10+nfunc-2,im)
69 IF(iporp > 0) THEN
70 fporp=pm(165,im)
71 fac=fporp*get_u_func(iporp,rp,deri)
72 ENDIF
73C
74 svtfac=flc*fac
75C
76 RETURN
77 END
78!||====================================================================
79!|| porform4 ../engine/source/airbag/porfor4.F
80!||--- called by ------------------------------------------------------
81!|| fvvent0 ../engine/source/airbag/fvvent0.F
82!||--- calls -----------------------------------------------------
83!|| get_u_func ../engine/source/user_interface/ufunc.F
84!||====================================================================
85 SUBROUTINE porform4(SVTFAC,IM,IPM,PM,AREA,AREA0,P,PEXT)
86C-----------------------------------------------
87C I m p l i c i t T y p e s
88C-----------------------------------------------
89#include "implicit_f.inc"
90C-----------------------------------------------
91C C o m m o n B l o c k s
92C-----------------------------------------------
93#include "param_c.inc"
94C-----------------------------------------------
95C D u m m y A r g u m e n t s
96C-----------------------------------------------
97 INTEGER IPM(NPROPMI,*),IM
99 . svtfac,pm(npropm,*),area,area0,p,pext
100C-----------------------------------------------
101C L o c a l V a r i a b l e s
102C-----------------------------------------------
103 INTEGER IPORA,IPORP,NFUNC
104 my_real
105 . rs,rp,fpora,fporp,deri,flc,fac
106 my_real get_u_func
107 EXTERNAL get_u_func
108C=======================================================================
109 rs=area/area0
110 rp=min(pext/p,one)
111C
112 flc=zero
113 nfunc=ipm(10,im)+ipm(6,im)
114 ipora=ipm(10+nfunc-1,im)
115 IF(ipora > 0) THEN
116 fpora=pm(164,im)
117 flc=fpora*get_u_func(ipora,rs,deri)
118 ENDIF
119C
120 fac=zero
121 iporp=ipm(10+nfunc-2,im)
122 IF(iporp > 0) THEN
123 fporp=pm(165,im)
124 fac=fporp*get_u_func(iporp,rp,deri)
125 ENDIF
126C
127 svtfac=flc*fac
128C
129 RETURN
130 END
subroutine airbagb1(ivolu, icbag, njet, ibagjet, nvent, ibaghol, rvolu, rvoluv, rcbag, rbagjet, rbaghol, fsav, normal, nn, igrsurf, poro, ivoluv, rbagvjet, fr_mv, iparg, ipart, ipartc, iparttg, ipm, pm, elbuf_tab, igroupc, igrouptg, igeo, geo)
Definition airbagb1.F:46
#define my_real
Definition cppsort.cpp:32
subroutine area(d1, x, x2, y, y2, eint, stif0)
#define min(a, b)
Definition macros.h:20
subroutine porfor4(svtfac, im, ipm, pm, strain, p, pext, iel, nel)
Definition porfor4.F:31
subroutine porform4(svtfac, im, ipm, pm, area, area0, p, pext)
Definition porfor4.F:86