OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
m1tot_stab11.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!|| m1tot_stab11 ../engine/source/elements/solid/solide8e/m1tot_stab11.F
25!||--- called by ------------------------------------------------------
26!|| m1lawtot ../engine/source/materials/mat/mat001/m1lawtot.F
27!||====================================================================
28 SUBROUTINE m1tot_stab11(SIG,G2,G,NEL )
29C-----------------------------------------------
30C I m p l i c i t T y p e s
31C-----------------------------------------------
32#include "implicit_f.inc"
33C-----------------------------------------------
34C G l o b a l P a r a m e t e r s
35C-----------------------------------------------
36#include "mvsiz_p.inc"
37C-----------------------------------------------
38C C o m m o n B l o c k s
39C-----------------------------------------------
40C-----------------------------------------------
41C D u m m y A r g u m e n t s
42C-----------------------------------------------
43 INTEGER, INTENT(IN) :: NEL
44C
45 my_real, INTENT(IN) :: g2
46 my_real, DIMENSION(NEL,6), INTENT(INOUT) :: sig
47 my_real, DIMENSION(MVSIZ), INTENT(INOUT) :: g
48C-----------------------------------------------
49C L o c a l V a r i a b l e s
50C-----------------------------------------------
51 INTEGER I
53 . ff,facg,p,facmax
54C-----------------------------------------------
55C--- only need for Isolid=18
56 facmax=1.5
57 DO i=1,nel
58 ff = -min(sig(i,1),sig(i,2),sig(i,3))
59 IF (ff <=g2 ) cycle
60 facg = max(one,sqrt(ff/g2))
61 facg = min(facmax,facg)
62 p = -third*(sig(i,1)+sig(i,2)+sig(i,3))
63 sig(i,1)=facg*(sig(i,1)+p)-p
64 sig(i,2)=facg*(sig(i,2)+p)-p
65 sig(i,3)=facg*(sig(i,3)+p)-p
66 sig(i,4)=facg*sig(i,4)
67 sig(i,5)=facg*sig(i,5)
68 sig(i,6)=facg*sig(i,6)
69 g(i) = facg*g(i)
70 END DO
71C
72 RETURN
73 END
#define my_real
Definition cppsort.cpp:32
subroutine m1tot_stab11(sig, g2, g, nel)
#define min(a, b)
Definition macros.h:20
#define max(a, b)
Definition macros.h:21