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

Go to the source code of this file.

Functions/Subroutines

subroutine mmat_h1 (hh, hh1, fac, icp, ipredu, nel, mtn, ismstr, jhbe)

Function/Subroutine Documentation

◆ mmat_h1()

subroutine mmat_h1 ( hh,
hh1,
fac,
integer icp,
integer ipredu,
integer, intent(in) nel,
integer, intent(in) mtn,
integer, intent(in) ismstr,
integer, intent(in) jhbe )

Definition at line 30 of file mmat_h1.F.

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
#define my_real
Definition cppsort.cpp:32