OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
czfintce.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!|| czfintce ../engine/source/elements/shell/coquez/czfintce.F
25!||--- called by ------------------------------------------------------
26!|| czforc3 ../engine/source/elements/shell/coquez/czforc3.F
27!|| czforc3_crk ../engine/source/elements/xfem/czforc3_crk.F
28!||====================================================================
29 SUBROUTINE czfintce(JFT ,JLT ,THK ,C1 ,A_I ,X13 ,
30 2 X24 ,Y13 ,Y24 ,Z1 ,MX23 ,MX13 ,
31 3 MX34 ,MY13 ,MY23 ,MY34 ,VSTRE,MSTRE,
32 4 VF ,VM ,NEL)
33C---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8
34C CALCUL LA PARTIE CONSTANTE
35C VF(3,NODE),VM(2,NODE) : FORCES INTERNES GENERALISEES
36C ENTREES : THK,AREA,X13,X24,Y13,Y24,MX13,MX34,MY13,MY34,Z1,...
37C SORTIES : VF,VM
38C-----------------------------------------------
39C I M P L I C I T T Y P E S
40C-----------------------------------------------
41#include "implicit_f.inc"
42C-----------------------------------------------
43C G l o b a l P a r a m e t e r s
44C-----------------------------------------------
45#include "mvsiz_p.inc"
46C-----------------------------------------------
47C D U M M Y A R G U M E N T S
48C-----------------------------------------------
49 INTEGER JFT ,JLT,NEL
50 my_real
51 . THK(*) ,C1(*) ,A_I(*) ,Z1(*) ,
52 . x13(*) ,x24(*) ,y13(*) ,y24(*) ,
53 . mx13(*) ,mx23(*) ,mx34(*) ,my13(*) ,my23(*) ,
54 . my34(*) ,vstre(nel,5),mstre(nel,3) ,vf(mvsiz,3,4) ,vm(mvsiz,2,4)
55C-----------------------------------------------
56C L O C A L V A R I A B L E S
57C-----------------------------------------------
58 INTEGER I ,J
59 my_real
60 . S1, C2, Y13S8, Y24S8, S42S, S52S, X13S8, X24S8
61C
62 DO i=jft,jlt
63 x13s8=x13(i)*mstre(i,3)
64 x24s8=x24(i)*mstre(i,3)
65 y13s8=y13(i)*mstre(i,3)
66 y24s8=y24(i)*mstre(i,3)
67C
68 s1=(my34(i)*mx23(i)-my23(i)*mx34(i))*thk(i)
69 s42s=s1*vstre(i,5)
70 s52s=s1*vstre(i,4)
71C-------------------------------------------------
72C PARTIE ANTISYM STOCKEE DANS NOEUDS 1,2
73C PARTIE SYM NOEUDS STOCKEE DANS NOEUDS 3,4
74C-------------------------------------------------
75 vf(i,1,1)=thk(i)*( y24(i)*vstre(i,1)-x24(i)*vstre(i,3))
76 vf(i,2,1)=thk(i)*(-x24(i)*vstre(i,2)+y24(i)*vstre(i,3))
77 vf(i,3,1)=thk(i)*(-x24(i)*vstre(i,4)+y24(i)*vstre(i,5))
78C
79 vm(i,1,1)=c1(i)*(x24(i)*mstre(i,2)-y24s8)-my13(i)*vf(i,3,1)
80 vm(i,2,1)=c1(i)*(y24(i)*mstre(i,1)-x24s8)+mx13(i)*vf(i,3,1)
81C
82 vm(i,1,3)=-s52s
83 vm(i,2,3)= s42s
84C
85 vf(i,1,2)=thk(i)*(-y13(i)*vstre(i,1)+x13(i)*vstre(i,3))
86 vf(i,2,2)=thk(i)*( x13(i)*vstre(i,2)-y13(i)*vstre(i,3))
87 vf(i,3,2)=thk(i)*( x13(i)*vstre(i,4)-y13(i)*vstre(i,5))
88C
89 vm(i,1,2)=c1(i)*(-x13(i)*mstre(i,2)+y13s8)+my13(i)*vf(i,3,2)
90 vm(i,2,2)=c1(i)*(-y13(i)*mstre(i,1)+x13s8)-mx13(i)*vf(i,3,2)
91C
92 vm(i,1,4)=vm(i,1,3)
93 vm(i,2,4)=vm(i,2,3)
94C
95 c2=c1(i)*z1(i)*4.*a_i(i)
96C
97 vf(i,1,1)=vf(i,1,1)+c2*(x13(i)*mstre(i,1)+y13s8)
98 vf(i,2,1)=vf(i,2,1)+c2*(y13(i)*mstre(i,2)+x13s8)
99 vf(i,1,2)=vf(i,1,2)-c2*(x24(i)*mstre(i,1)+y24s8)
100 vf(i,2,2)=vf(i,2,2)-c2*(y24(i)*mstre(i,2)+x24s8)
101 ENDDO
102 RETURN
103 END
104!||====================================================================
105!|| czfintcrz ../engine/source/elements/shell/coquez/czfintce.F
106!||--- called by ------------------------------------------------------
107!|| czforc3 ../engine/source/elements/shell/coquez/czforc3.F
108!|| czforc3_crk ../engine/source/elements/xfem/czforc3_crk.F
109!||====================================================================
110 SUBROUTINE czfintcrz(JFT ,JLT ,THK ,VOL ,AREA ,X13 ,
111 2 X24 ,Y13 ,Y24 ,Z1 ,MX23 ,MX13 ,
112 3 MX34 ,MY13 ,MY23 ,MY34 ,VSTRE,VSRZ ,
113 4 VF ,VMZ ,BM0RZ,KRZ ,VRLZ ,DT1C ,
114 5 EINT ,OFF ,NEL )
115C-----------------------------------------------
116C I M P L I C I T T Y P E S
117C-----------------------------------------------
118#include "implicit_f.inc"
119#include "mvsiz_p.inc"
120C-----------------------------------------------
121C D U M M Y A R G U M E N T S
122C-----------------------------------------------
123 INTEGER JFT ,JLT,NEL
124 my_real
125 . THK(*) ,VOL(*) ,AREA(*) ,Z1(*) ,
126 . X13(*) ,X24(*) ,Y13(*) ,Y24(*) ,
127 . MX13(*) ,MX23(*) ,MX34(*) ,MY13(*) ,MY23(*) ,
128 . MY34(*) ,VSTRE(NEL,5),VSRZ(NEL,19) ,VF(MVSIZ,3,4) ,VMZ(MVSIZ,4),
129 . BM0RZ(MVSIZ,4,4),KRZ(*),VRLZ(*),DT1C,EINT(NEL,2),OFF(*)
130C-----------------------------------------------
131C L O C A L V A R I A B L E S
132C-----------------------------------------------
133 INTEGER I ,J
134 my_real
135 . S1, C2, A05,ERZ,OFF05
136C
137C --------const sig_rz added here---------
138 DO I=jft,jlt
139 erz= vrlz(i)*dt1c
140 off05=half*off(i)*vol(i)
141 eint(i,1) = eint(i,1)+ vsrz(i,19)*erz*off05
142 vsrz(i,19)= vsrz(i,19)+krz(i)*erz*off(i)
143 eint(i,1) = eint(i,1)+ vsrz(i,19)*erz*off05
144 ENDDO
145 DO j=1,4
146 DO i=jft,jlt
147 vmz(i,j)=(bm0rz(i,1,j)*vstre(i,1)+bm0rz(i,2,j)*vstre(i,2)
148 . +bm0rz(i,3,j)*vstre(i,3))*thk(i)
149 ENDDO
150 ENDDO
151C
152 DO i=jft,jlt
153 c2=thk(i)*vsrz(i,19)*half
154 DO j=1,4
155 vmz(i,j)= vmz(i,j)+bm0rz(i,4,j)*c2
156 ENDDO
157 ENDDO
158C-------------------------------------------------
159C PARTIE ANTISYM STOCKEE DANS NOEUDS 1,2
160C PARTIE SYM NOEUDS STOCKEE DANS NOEUDS 3,4
161C-------------------------------------------------
162 DO i=jft,jlt
163 c2=thk(i)*vsrz(i,19)*half
164C
165 vf(i,1,1)=vf(i,1,1)+c2*x24(i)
166 vf(i,2,1)=vf(i,2,1)+c2*y24(i)
167 vf(i,1,2)=vf(i,1,2)-c2*x13(i)
168 vf(i,2,2)=vf(i,2,2)-c2*y13(i)
169 ENDDO
170C
171 RETURN
172 END
subroutine czfintce(jft, jlt, thk, c1, a_i, x13, x24, y13, y24, z1, mx23, mx13, mx34, my13, my23, my34, vstre, mstre, vf, vm, nel)
Definition czfintce.F:33
subroutine czfintcrz(jft, jlt, thk, vol, area, x13, x24, y13, y24, z1, mx23, mx13, mx34, my13, my23, my34, vstre, vsrz, vf, vmz, bm0rz, krz, vrlz, dt1c, eint, off, nel)
Definition czfintce.F:115