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

Go to the source code of this file.

Functions/Subroutines

subroutine sigeps119c (nel, ipt, npt, nuparam, nuvar, numtabl, itable, table, uvar, uparam, thk, thklyl, shf, ssp, off, iqeph, zcfac, depsxx, depsyy, depsxy, epsxx, epsyy, epsxy, epsyz, epszx, sigoxx, sigoyy, sigoxy, sigoyz, sigozx, signxx, signyy, signxy, signyz, signzx, wmc, thly, thk0)

Function/Subroutine Documentation

◆ sigeps119c()

subroutine sigeps119c ( integer, intent(in) nel,
integer, intent(in) ipt,
integer, intent(in) npt,
integer, intent(in) nuparam,
integer, intent(in) nuvar,
integer, intent(in) numtabl,
integer, dimension(numtabl), intent(in) itable,
type(ttable), dimension(ntable) table,
intent(inout) uvar,
intent(in) uparam,
intent(inout) thk,
intent(inout) thklyl,
intent(in) shf,
intent(out) ssp,
intent(in) off,
logical, intent(in) iqeph,
intent(inout) zcfac,
intent(in) depsxx,
intent(in) depsyy,
intent(in) depsxy,
intent(in) epsxx,
intent(in) epsyy,
intent(in) epsxy,
intent(in) epsyz,
intent(in) epszx,
intent(in) sigoxx,
intent(in) sigoyy,
intent(in) sigoxy,
intent(in) sigoyz,
intent(in) sigozx,
intent(out) signxx,
intent(out) signyy,
intent(out) signxy,
intent(out) signyz,
intent(out) signzx,
intent(inout) wmc,
intent(inout) thly,
intent(in) thk0 )

Definition at line 33 of file sigeps119c.F.

42C-----------------------------------------------
43C M o d u l e s
44C-----------------------------------------------
45 USE table_mod
47C-----------------------------------------------
48C I m p l i c i t T y p e s
49C-----------------------------------------------
50#include "implicit_f.inc"
51C-----------------------------------------------
52C G l o b a l P a r a m e t e r s
53C-----------------------------------------------
54#include "mvsiz_p.inc"
55C-----------------------------------------------
56C C o m m o n B l o c k s
57C-----------------------------------------------
58#include "com04_c.inc"
59C-----------------------------------------------
60C D u m m y A r g u m e n t s
61C-----------------------------------------------
62 LOGICAL ,INTENT(IN) :: IQEPH
63 INTEGER ,INTENT(IN) :: NEL,IPT,NPT,NUPARAM,NUVAR,NUMTABL
64 INTEGER ,DIMENSION(NUMTABL) ,INTENT(IN) :: ITABLE
65 my_real ,DIMENSION(NUPARAM) ,INTENT(IN) :: uparam
66 my_real ,DIMENSION(NEL) ,INTENT(IN) :: shf,off,
67 . depsxx,depsyy,depsxy,epsxx,epsyy,epsxy,epsyz,epszx,
68 . sigoxx,sigoyy,sigoxy,sigoyz,sigozx,thk0
69 my_real ,DIMENSION(MVSIZ,2),INTENT(INOUT) :: zcfac
70 my_real ,DIMENSION(MVSIZ) ,INTENT(INOUT) :: wmc
71 my_real, DIMENSION(NEL) ,INTENT(INOUT) :: thk,thly,thklyl
72 my_real ,DIMENSION(NEL,NUVAR) ,INTENT(INOUT) :: uvar
73 my_real ,DIMENSION(NEL) ,INTENT(OUT) :: ssp,
74 . signxx,signyy,signxy,signyz,signzx
75 TYPE(TTABLE), DIMENSION(NTABLE) :: TABLE
76C-----------------------------------------------
77C L o c a l V a r i a b l e s
78C-----------------------------------------------
79 INTEGER :: I
80 my_real :: nu,g12,gs,gc,a1c,a2c,tcoat,dezz
81 my_real ,DIMENSION(NEL) :: et,thfac
82C=======================================================================
83 nu = uparam(5)
84 g12 = uparam(6)
85 a1c = uparam(14)
86 a2c = uparam(15)
87 tcoat = uparam(16)
88 ssp = uparam(17)
89 gc = uparam(20)
90 gs = g12*shf(1)
91c-------------------------------------------------------------------------
92 IF (npt == 1) THEN ! membrane only
93
94 CALL law119_membrane(
95 . nel ,nuparam,nuvar ,uparam ,uvar ,
96 . gs ,et ,depsxx ,depsyy ,depsxy ,
97 . epsxx ,epsyy ,epsxy ,epsyz ,epszx ,
98 . sigoxx ,sigoyy ,sigoxy ,sigoyz ,sigozx ,
99 . signxx ,signyy ,signxy ,signyz ,signzx ,
100 . numtabl,itable ,table )
101
102 ELSE ! membrane + coating
103
104 IF (ipt == 2) THEN
105 CALL law119_membrane(
106 . nel ,nuparam,nuvar ,uparam ,uvar ,
107 . gs ,et ,depsxx ,depsyy ,depsxy ,
108 . epsxx ,epsyy ,epsxy ,epsyz ,epszx ,
109 . sigoxx ,sigoyy ,sigoxy ,sigoyz ,sigozx ,
110 . signxx ,signyy ,signxy ,signyz ,signzx ,
111 . numtabl,itable ,table )
112 thklyl(1:nel) = thk0(1:nel) - two*tcoat
113 thly(1:nel)= one - two * tcoat / thk0(1:nel)
114 wmc(1:nel) = zero
115 ELSE ! IPT = 1,3 => coating
116 DO i=1,nel
117 signxx(i) = a1c*epsxx(i) + a2c*epsyy(i)
118 signyy(i) = a2c*epsxx(i) + a1c*epsyy(i)
119 signxy(i) = gc*epsxy(i)
120 signyz(i) = gc*epsyz(i)*shf(1)
121 signzx(i) = gc*epszx(i)*shf(1)
122 END DO
123 thklyl(1:nel) = tcoat
124 DO i=1,nel
125 thly(i) = tcoat*(thk0(i)-tcoat) / (thk0(i)**2)
126 END DO
127 IF (ipt == 1) THEN
128 wmc(1:nel) =-half*thly(1:nel)
129 ELSE IF(ipt == 3) THEN
130 wmc(1:nel) = half*thly(1:nel)
131 END IF
132 END IF
133 END IF
134c------------------------------------
135c thickness update:
136c------------------------------------
137 DO i=1,nel
138 dezz = -(depsxx(i)+depsyy(i))*nu/(one-nu)
139 thk(i) = thk(i) + dezz * thklyl(i)*off(i)
140 ENDDO
141C
142C------for QEPH-------
143 IF (iqeph) THEN
144 DO i=1,nel
145 zcfac(i,1) = zcfac(i,1) + et(i) / npt
146 zcfac(i,2) = min(et(i),zcfac(i,2))
147 ENDDO
148 ENDIF
149c-----------
150 RETURN
#define my_real
Definition cppsort.cpp:32
subroutine law119_membrane(nel, nuparam, nuvar, uparam, uvar, gs, et, depsxx, depsyy, depsxy, epsxx, epsyy, epsxy, epsyz, epszx, sigoxx, sigoyy, sigoxy, sigoyz, sigozx, signxx, signyy, signxy, signyz, signzx, numtabl, itable, table)
#define min(a, b)
Definition macros.h:20