OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
pdefo3.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!|| pdefo3 ../engine/source/elements/beam/pdefo3.F
25!||--- called by ------------------------------------------------------
26!|| pforc3 ../engine/source/elements/beam/pforc3.F
27!||====================================================================
28 SUBROUTINE pdefo3(
29 1 V, EXX, EXY, EXZ,
30 2 AL, NC1, NC2, NC3,
31 3 E1X, E1Y, E1Z, E2X,
32 4 E2Y, E2Z, E3X, E3Y,
33 5 E3Z, VX1G, VX2G, VY1G,
34 6 VY2G, VZ1G, VZ2G, NEL)
35C-----------------------------------------------
36C I m p l i c i t T y p e s
37C-----------------------------------------------
38#include "implicit_f.inc"
39C-----------------------------------------------
40C G l o b a l P a r a m e t e r s
41C-----------------------------------------------
42#include "mvsiz_p.inc"
43C-----------------------------------------------
44C C o m m o n B l o c k s
45C-----------------------------------------------
46C-----------------------------------------------
47C D u m m y A r g u m e n t s
48C-----------------------------------------------
49 INTEGER, INTENT(IN) :: NEL
50 INTEGER NC1(MVSIZ),NC2(MVSIZ),NC3(MVSIZ)
51 my_real
52 . V(3,*),EXX(MVSIZ),EXY(MVSIZ),EXZ(MVSIZ),AL(MVSIZ),
53 . E1X(MVSIZ),E1Y(MVSIZ),E1Z(MVSIZ),E2X(MVSIZ),E2Y(MVSIZ),
54 . E2Z(MVSIZ),E3X(MVSIZ),E3Y(MVSIZ),E3Z(MVSIZ),VX1G(MVSIZ),
55 . vx2g(mvsiz),vy1g(mvsiz),vy2g(mvsiz),vz1g(mvsiz),vz2g(mvsiz)
56C-----------------------------------------------
57C L o c a l V a r i a b l e s
58C-----------------------------------------------
59 INTEGER I
60 my_real
61 . VX1(MVSIZ),VX2(MVSIZ),VY1(MVSIZ),VY2(MVSIZ),VZ1(MVSIZ),VZ2(MVSIZ)
62C-----------------------------------------------
63 DO I=1,nel
64 vx1g(i)=v(1,nc1(i))
65 vy1g(i)=v(2,nc1(i))
66 vz1g(i)=v(3,nc1(i))
67 vx2g(i)=v(1,nc2(i))
68 vy2g(i)=v(2,nc2(i))
69 vz2g(i)=v(3,nc2(i))
70 ENDDO
71C
72 DO i=1,nel
73 vx1(i)=e1x(i)*vx1g(i)+e1y(i)*vy1g(i)+e1z(i)*vz1g(i)
74 vy1(i)=e2x(i)*vx1g(i)+e2y(i)*vy1g(i)+e2z(i)*vz1g(i)
75 vz1(i)=e3x(i)*vx1g(i)+e3y(i)*vy1g(i)+e3z(i)*vz1g(i)
76 vx2(i)=e1x(i)*vx2g(i)+e1y(i)*vy2g(i)+e1z(i)*vz2g(i)
77 vy2(i)=e2x(i)*vx2g(i)+e2y(i)*vy2g(i)+e2z(i)*vz2g(i)
78 vz2(i)=e3x(i)*vx2g(i)+e3y(i)*vy2g(i)+e3z(i)*vz2g(i)
79 ENDDO
80C
81 DO i=1,nel
82 exx(i)=(vx2(i)-vx1(i))/al(i)
83 exy(i)=(vy2(i)-vy1(i))/al(i)
84 exz(i)=(vz2(i)-vz1(i))/al(i)
85 ENDDO
86C-----------------------------------------------
87 RETURN
88 END
subroutine pdefo3(v, exx, exy, exz, al, nc1, nc2, nc3, e1x, e1y, e1z, e2x, e2y, e2z, e3x, e3y, e3z, vx1g, vx2g, vy1g, vy2g, vz1g, vz2g, nel)
Definition pdefo3.F:35