OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
mmat_h1.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!|| mmat_h1 ../engine/source/elements/solid/solide8z/mmat_h1.F
25!||--- called by ------------------------------------------------------
26!|| q4ke2 ../engine/source/elements/solid_2d/quad4/q4ke2.F
27!|| s8cke3 ../engine/source/elements/thickshell/solide8c/s8cke3.F
28!|| s8zke3 ../engine/source/elements/solid/solide8z/s8zke3.F
29!||====================================================================
30 SUBROUTINE mmat_h1(
31 1 HH, HH1, FAC, ICP,
32 2 IPREDU, NEL, MTN, ISMSTR,
33 3 JHBE)
34C-----------------------------------------------
35C I m p l i c i t T y p e s
36C-----------------------------------------------
37#include "implicit_f.inc"
38C-----------------------------------------------
39C C o m m o n B l o c k s
40C-----------------------------------------------
41C-----------------------------------------------
42C D u m m y A r g u m e n t s
43C-----------------------------------------------
44 INTEGER, INTENT(IN) :: NEL
45 INTEGER, INTENT(IN) :: MTN
46 INTEGER, INTENT(IN) :: ISMSTR
47 INTEGER, INTENT(IN) :: JHBE
48 INTEGER ICP,IPREDU
49C REAL
51 . hh(2,*),hh1(2,*),fac(*)
52C-----------------------------------------------
53C L o c a l V a r i a b l e s
54C-----------------------------------------------
55 INTEGER I,IFP
56C REAL
57C-----------------------------------------------
58 ipredu=0
59 IF (icp==1.OR.(icp==2.AND.jhbe==17)) ipredu=1
60C-----exclude nonlinear pressure laws (don't use p=c1*rho/(rho0-1)--hyperelastic first
61 IF (mtn==42.OR.mtn==62.OR.mtn==82) ipredu=0
62 ifp = 0
63 IF (icp==1.AND.jhbe==17.AND.ismstr==10) ifp=1
64 IF (ifp==1) ipredu=1
65C
66 IF (ipredu == 0) THEN
67 DO i=1,nel
68 hh1(1,i)= hh(1,i)
69 hh1(2,i) =hh(2,i)
70 ENDDO
71 ELSEIF (icp==2.AND.jhbe==17.OR.ifp==1) THEN
72C-----------constant pressure-----
73 DO i=1,nel
74 hh1(1,i)=hh(2,i)*(one-fac(i))-two_third*hh(2,i)*fac(i)
75 hh1(2,i) = hh(2,i)
76 ENDDO
77 ELSEIF (icp == 1) THEN
78C-----------constant pressure-----
79 DO i=1,nel
80 hh1(1,i)=-two_third*hh(2,i)
81 hh1(2,i) = hh(2,i)
82 ENDDO
83 END IF !(IPREDU == 0) THEN
84C
85 RETURN
86 END
#define my_real
Definition cppsort.cpp:32
subroutine mmat_h1(hh, hh1, fac, icp, ipredu, nel, mtn, ismstr, jhbe)
Definition mmat_h1.F:34