OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
r2buf3.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/.
23C
24!||====================================================================
25!|| r2buf3 ../starter/source/elements/spring/r2buf3.F
26!||--- called by ------------------------------------------------------
27!|| rinit3 ../starter/source/elements/spring/rinit3.F
28!||====================================================================
29 SUBROUTINE r2buf3(OFF ,GEO ,X ,X0 ,Y0 ,
30 2 Z0 ,IX ,SKEW ,IPOSX ,IPOSY,
31 3 IPOSZ,IPOSXX,IPOSYY,IPOSZZ,IGEO,
32 4 SKEW_ID)
33C-----------------------------------------------
34C I m p l i c i t T y p e s
35C-----------------------------------------------
36#include "implicit_f.inc"
37C-----------------------------------------------
38C C o m m o n B l o c k s
39C-----------------------------------------------
40#include "vect01_c.inc"
41#include "param_c.inc"
42C-----------------------------------------------
43C D u m m y A r g u m e n t s
44C-----------------------------------------------
45 INTEGER IX(NIXR,*),IGEO(NPROPGI,*),SKEW_ID(*)
46C REAL
47 my_real
48 . off(*), geo(npropg,*), x(3,*), x0(*), y0(*), z0(*),
49 . skew(lskew,*),iposx(5,*) ,iposy(5,*),
50 . iposz(5,*),iposxx(5,*),iposyy(5,*),iposzz(5,*)
51C-----------------------------------------------
52C L o c a l V a r i a b l e s
53C-----------------------------------------------
54 INTEGER I, J, NG, I1, I2, ISK, K, USENS
55C REAL
56 my_real
57 . x1, y1, z1, ex, ey, ez
58C-----------------------------------------------
59 DO i=lft,llt
60 j=i+nft
61 usens=igeo(3,ix(1,j))
62 IF(usens<=0)THEN
63C no sensor or Isflag=1
64 off(i)=one
65 ELSE
66 off(i)=-ten
67 END IF
68 ENDDO
69C
70 DO j=1,5
71 DO i=lft,llt
72 iposx(j,i)=zero
73 iposy(j,i)=zero
74 iposz(j,i)=zero
75 iposxx(j,i)=zero
76 iposyy(j,i)=zero
77 iposzz(j,i)=zero
78 ENDDO
79 ENDDO
80C
81 DO i=lft,llt
82 j=i+nft
83 ng=ix(1,j)
84 isk=skew_id(i)
85 i1=ix(2,j)
86 i2=ix(3,j)
87 x1=x(1,i2)-x(1,i1)
88 y1=x(2,i2)-x(2,i1)
89 z1=x(3,i2)-x(3,i1)
90 ex=skew(1,isk)
91 ey=skew(2,isk)
92 ez=skew(3,isk)
93 x0(i)=ex*x1+ey*y1+ez*z1
94 ex=skew(4,isk)
95 ey=skew(5,isk)
96 ez=skew(6,isk)
97 y0(i)=ex*x1+ey*y1+ez*z1
98 ex=skew(7,isk)
99 ey=skew(8,isk)
100 ez=skew(9,isk)
101 z0(i)=ex*x1+ey*y1+ez*z1
102 ENDDO
103C-----------------------------------------------
104 RETURN
105 END
subroutine r2buf3(off, geo, x, x0, y0, z0, ix, skew, iposx, iposy, iposz, iposxx, iposyy, iposzz, igeo, skew_id)
Definition r2buf3.F:33