OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
rgjoint.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!|| rgjoint ../engine/source/elements/joint/rgjoint.F
25!||--- called by ------------------------------------------------------
26!|| rforc3 ../engine/source/elements/spring/rforc3.F
27!||--- calls -----------------------------------------------------
28!|| ranim33 ../engine/source/elements/joint/ranim33.F
29!|| rbilan33 ../engine/source/elements/joint/rbilan33.F
30!|| rcum33 ../engine/source/elements/joint/rcum33.F
31!|| rcum33p ../engine/source/elements/joint/rcum33p.F
32!|| rdtime33 ../engine/source/elements/joint/rdtime33.f
33!|| rskew33 ../engine/source/elements/joint/rskew33.f
34!|| ruser33 ../engine/source/elements/joint/ruser33.f
35!||--- uses -----------------------------------------------------
36!|| element_mod ../common_source/modules/elements/element_mod.F90
37!|| h3d_mod ../engine/share/modules/h3d_mod.F
38!|| sensor_mod ../common_source/modules/sensor_mod.F90
39!||====================================================================
40 SUBROUTINE rgjoint(
41 1 JFT, JLT, IPARTR, NEL,
42 2 NUVAR, IOUT, IPROP, IADR,
43 3 FSKY, FSKYV, OFF, FORX,
44 4 FORY, FORZ, E, DX,
45 5 DY, DZ, RX, RY,
46 6 RZ, XMOM, YMOM, ZMOM,
47 7 UVAR, STIFN, STIFR, IXR,
48 8 TANI, RBY, X, VX,
49 9 VR, STI, STIR, MS,
50 A IN, PARTSAV, DT1, DT2T,
51 B F, AR, FX1, FX2,
52 C FY1, FY2, FZ1, FZ2,
53 D MX1, MX2, MY1, MY2,
54 E MZ1, MZ2, GRESAV, GRTH,
55 F IGRTH, MSRT, DMELRT, NELTST,
56 G ITYPTST, IGTYP, SENSOR_TAB,NC1,
57 H NC2, XDP, X0_ERR, H3D_DATA,
58 I JSMS, IGRE, NFT , NSENSOR )
59C-----------------------------------------------
60C M o d u l e s
61C-----------------------------------------------
62 USE h3d_mod
63 USE sensor_mod
64 use element_mod , only : nixr
65C-------------------------------------------------------------------------
66C I m p l i c i t T y p e s
67C-----------------------------------------------
68#include "implicit_f.inc"
69C-----------------------------------------------
70C G l o b a l P a r a m e t e r s
71C-----------------------------------------------
72#include "com04_c.inc"
73#include "mvsiz_p.inc"
74#include "parit_c.inc"
75C----------------------------------------------------------
76C D u m m y A r g u m e n t s a n d F u n c t i o n
77C----------------------------------------------------------
78 INTEGER, INTENT(IN) :: NFT,NSENSOR
79 INTEGER, INTENT(IN) :: IGRE
80 INTEGER, INTENT(IN) :: JSMS
81 INTEGER JFT,JLT,IOUT,NEL,NUVAR,IPROP,
82 . ipartr(*),ixr(nixr,*),iadr(3,*),grth(*),igrth(*),
83 . neltst,ityptst,igtyp,nc1(*),nc2(*)
85 . dt1, dt2t, uvar(nuvar,*),stifn(*),stifr(*), off(*), e(*),
86 . x(*), vx(*), vr(*),dx(*),dy(*),dz(*), rx(*),ry(*),rz(*),
87 . f(*) , forx(*), fory(*), forz(*),
88 . ar(*), xmom(*), ymom(*), zmom(*),
89 . fx1(mvsiz),fy1(mvsiz),fz1(mvsiz),
90 . fx2(mvsiz),fy2(mvsiz),fz2(mvsiz),
91 . mx1(mvsiz),my1(mvsiz),mz1(mvsiz),
92 . mx2(mvsiz),my2(mvsiz),mz2(mvsiz),rby(*),
93 . partsav(*),tani(15,*),ms(*),in(*),fsky(*),fskyv(*),gresav(*),
94 . msrt(*), dmelrt(*),x0_err(3,*)
95 DOUBLE PRECISION XDP(3,*)
96 TYPE(h3d_database) :: H3D_DATA
97 TYPE (SENSOR_STR_) ,DIMENSION(NSENSOR) , INTENT(IN) :: SENSOR_TAB
98C-----------------------------------------------
99C L o c a l V a r i a b l e s
100C-----------------------------------------------
101 INTEGER ISENS
102 my_real
103 . umas(mvsiz),uiner(mvsiz),
104 . rot1(3,mvsiz),rot2(3,mvsiz),sti(3,mvsiz),stir(3,mvsiz),
105 . xkm(mvsiz),xkr(mvsiz),xcm(mvsiz),xcr(mvsiz)
106 DOUBLE PRECISION XL(MVSIZ,3)
107C=======================================================================
108C
109 CALL RSKEW33(JFT ,JLT ,IXR ,IOUT ,IPROP,
110 . NUVAR ,UVAR ,RBY ,X ,XL ,
111 . ROT1 ,ROT2 ,DX ,DY ,DZ ,
112 . RX ,RY ,RZ ,VR ,IGTYP,
113 . nsensor,sensor_tab,isens ,nc1 ,nc2 ,
114 . xdp)
115C
116 CALL ruser33(nel ,iout ,iprop ,nuvar ,uvar ,
117 . forx ,fory ,forz ,xmom ,ymom ,
118 . zmom ,xkm ,xkr ,xcm ,xcr ,
119 . xl ,umas ,uiner ,off ,e ,
120 . rot1 ,rot2 ,dx ,dy ,dz ,
121 . rx ,ry ,rz ,igtyp ,isens ,
122 . x0_err)
123C
124 CALL rdtime33(
125 1 jft, jlt, dt2t, neltst,
126 2 ityptst, ixr, e, sti,
127 3 stir, off, xkm, xkr,
128 4 xcm, xcr, umas, uiner,
129 5 forx, fory, forz, xmom,
130 6 ymom, zmom, rot1, rot2,
131 7 msrt, dmelrt, nuvar, uvar,
132 8 igtyp, jsms)
133C
134 CALL rbilan33(
135 1 jft, jlt, e, partsav,
136 2 umas, vx, ipartr, gresav,
137 3 grth, igrth, nc1, nc2,
138 4 igre)
139 CALL ranim33 (jft,jlt,forx,fory,forz,xmom,ymom,zmom,xl,tani,h3d_data)
140C
141 IF(iparit==0)THEN
142 CALL rcum33(jft ,jlt ,xl ,nc1 ,nc2 ,
143 . f ,forx ,fory ,forz ,ar ,
144 . xmom ,ymom ,zmom ,sti ,stir ,
145 . stifn ,stifr ,fx1 ,fx2 ,fy1 ,
146 . fy2 ,fz1 ,fz2 ,mx1 ,mx2 ,
147 . my1 ,my2 ,mz1 ,mz2 ,nuvar ,
148 . uvar)
149 ELSE
150 CALL rcum33p(
151 1 jft, jlt, xl, fsky,
152 2 fskyv, forx, fory, forz,
153 3 xmom, ymom, zmom, sti,
154 4 stir, fx1, fx2, fy1,
155 5 fy2, fz1, fz2, mx1,
156 6 mx2, my1, my2, mz1,
157 7 mz2, iadr, nuvar, uvar,
158 8 nft)
159 ENDIF
160C-------------------------------
161 RETURN
162 END
#define my_real
Definition cppsort.cpp:32
subroutine ranim33(jft, jlt, forx, fory, forz, xmom, ymom, zmom, xl, tani, h3d_data)
Definition ranim33.F:31
subroutine rbilan33(jft, jlt, eint, partsav, umas, v, ipartr, gresav, grth, igrth, nc1, nc2, igre)
Definition rbilan33.F:35
subroutine rcum33(jft, jlt, xl, nc1, nc2, f, forx, fory, forz, xm, xmom, ymom, zmom, sti, stir, stifn, stifr, fx1, fx2, fy1, fy2, fz1, fz2, mx1, mx2, my1, my2, mz1, mz2, nuvar, uvar)
Definition rcum33.F:35
subroutine rcum33p(jft, jlt, xl, fsky, fskyv, forx, fory, forz, xmom, ymom, zmom, sti, stir, fx1, fx2, fy1, fy2, fz1, fz2, mx1, mx2, my1, my2, mz1, mz2, iadr, nuvar, uvar, nft)
Definition rcum33p.F:37
subroutine rdtime33(jft, jlt, dt2t, neltst, ityptst, ixr, eint, sti, stir, off, xkm, xkr, xcm, xcr, umas, uiner, fx, fy, fz, xmom, ymom, zmom, rot1, rot2, msrt, dmelrt, nuvar, uvar, jntyp, jsms)
Definition rdtime33.F:39
subroutine rgjoint(jft, jlt, ipartr, nel, nuvar, iout, iprop, iadr, fsky, fskyv, off, forx, fory, forz, e, dx, dy, dz, rx, ry, rz, xmom, ymom, zmom, uvar, stifn, stifr, ixr, tani, rby, x, vx, vr, sti, stir, ms, in, partsav, dt1, dt2t, f, ar, fx1, fx2, fy1, fy2, fz1, fz2, mx1, mx2, my1, my2, mz1, mz2, gresav, grth, igrth, msrt, dmelrt, neltst, ityptst, igtyp, sensor_tab, nc1, nc2, xdp, x0_err, h3d_data, jsms, igre, nft, nsensor)
Definition rgjoint.F:59
subroutine rskew33(jft, jlt, ixr, iout, iprop, nuvar, uvar, rby, x, xl, rot1, rot2, dx, dy, dz, rx, ry, rz, vr, igtyp, nsensor, sensor_tab, isens, nc1, nc2, xdp)
Definition rskew33.F:42
subroutine ruser33(nel, iout, iprop, nuvar, uvar, fx, fy, fz, xmom, ymom, zmom, xkm, xkr, xcm, xcr, xl, mass, iner, off, eint, rot1, rot2, dx, dy, dz, rx, ry, rz, igtyp, isens, x0_err)
Definition ruser33.F:46