OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
rini46.F File Reference
#include "implicit_f.inc"

Go to the source code of this file.

Functions/Subroutines

subroutine rini46 (nel, iout, iprop, ix, xl, mass, xiner, stifm, stifr, viscm, viscr, uvar, nuvar)

Function/Subroutine Documentation

◆ rini46()

subroutine rini46 ( integer nel,
integer iout,
integer iprop,
integer, dimension(4,nel) ix,
xl,
mass,
xiner,
stifm,
stifr,
viscm,
viscr,
uvar,
integer nuvar )

Definition at line 35 of file rini46.F.

38C-------------------------------------------------------------------------
39C This subroutine initialize springs using user properties.
40C-------------------------------------------------------------------------
41C----------+---------+---+---+--------------------------------------------
42C VAR | SIZE |TYP| RW| DEFINITION
43C----------+---------+---+---+--------------------------------------------
44C IOUT | 1 | I | R | OUTPUT FILE UNIT (L00 file)
45C IPROP | 1 | I | R | PROPERTY NUMBER
46C----------+---------+---+---+--------------------------------------------
47C IX | 3*NEL | I | R | SPRING CONNECTIVITY
48C | IX(1,I) NODE 1 ID
49C | IX(2,I) NODE 2 ID
50C | IX(3,I) OPTIONAL NODE 3 ID
51C | IX(4,I) SPRING ID
52C XL | NEL | F | R | ELEMENT LENGTH
53C----------+---------+---+---+--------------------------------------------
54C MASS | NEL | F | W | ELEMENT MASS
55C XINER | NEL | F | W | ELEMENT INERTIA (SPHERICAL)
56C STIFM | NEL | F | W | ELEMENT STIFNESS (TIME STEP)
57C STIFR | NEL | F | W | ELEMENT ROTATION STIFNESS (TIME STEP)
58C VISCM | NEL | F | W | ELEMENT VISCOSITY (TIME STEP)
59C VISCR | NEL | F | W | ELEMENT ROTATION VISCOSITY (TIME STEP)
60C----------+---------+---+---+--------------------------------------------
61C UVAR |NUVAR*NEL| F | W | USER ELEMENT VARIABLES
62C NUVAR | 1 | I | R | NUMBER OF USER ELEMENT VARIABLES
63C----------+---------+---+---+--------------------------------------------
64C-------------------------------------------------------------------------
65C FUNCTION
66C-------------------------------------------------------------------------
67C INTEGER II = GET_U_PNU(I,IP,KK)
68C IFUNCI = GET_U_PNU(I,IP,KFUNC)
69C IPROPI = GET_U_PNU(I,IP,KPROP)
70C IMATI = GET_U_PNU(I,IP,KMAT)
71C I : VARIABLE INDEX(1 for first variable,...)
72C IP : PROPERTY NUMBER
73C KK : PARAMETER KFUNC,KMAT,KPROP
74C THIS FUNCTION RETURN THE USER STORED FUNCTION(IF KK=KFUNC),
75C MATERIAL(IF KK=KMAT) OR PROPERTY(IF KK=KPROP) NUMBERS.
76C SEE LECG29 FOR CORRESPONDING ID STORAGE.
77C-------------------------------------------------------------------------
78C INTEGER IFUNCI = GET_U_MNU(I,IM,KFUNC)
79C I : VARIABLE INDEX(1 for first function)
80C IM : MATERIAL NUMBER
81C KFUNC : ONLY FUNCTION ARE YET AVAILABLE.
82C THIS FUNCTION RETURN THE USER STORED FUNCTION NUMBERS(function
83C referred by users materials).
84C SEE LECM29 FOR CORRESPONDING ID STORAGE.
85C-------------------------------------------------------------------------
86C my_real PARAMI = GET_U_GEO(I,IP)
87C I : PARAMETER INDEX(1 for first parameter,...)
88C IP : PROPERTY NUMBER
89C THIS FUNCTION RETURN THE USER GEOMETRY PARAMETERS
90C-------------------------------------------------------------------------
91C my_real PARAMI = GET_U_MAT(I,IM)
92C I : PARAMETER INDEX(1 for first parameter,...)
93C IM : MATERIAL NUMBER
94C THIS FUNCTION RETURN THE USER MATERIAL PARAMETERS
95C NOTE: GET_U_MAT(0,IMAT) RETURN THE DENSITY
96C-------------------------------------------------------------------------
97C INTEGER MID = GET_U_PID(IP)
98C IP : PROPERTY NUMBER
99C THIS FUNCTION RETURN THE USER PROPERTY ID CORRESPONDING TO
100C USER PROPERTY NUMBER IP.
101C-------------------------------------------------------------------------
102C INTEGER PID = GET_U_MID(IM)
103C IM : MATERIAL NUMBER
104C THIS FUNCTION RETURN THE USER MATERIAL ID CORRESPONDING TO
105C USER MATERIAL NUMBER IM.
106C-------------------------------------------------------------------------
107C-----------------------------------------------
108C I m p l i c i t T y p e s
109C-----------------------------------------------
110#include "implicit_f.inc"
111C----------------------------------------------------------
112C 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
113C----------------------------------------------------------
114 INTEGER IOUT,NUVAR,NEL,IPROP,
115 . IX(4,NEL) ,
116 . GET_U_PNU,GET_U_PID,GET_U_MID,GET_U_MNU,
117 . KFUNC,KMAT,KPROP
118 my_real
119 . xl(nel) ,mass(nel) ,xiner(nel) ,stifm(nel) ,
120 . stifr(nel),viscm(nel) ,viscr(nel),uvar(nuvar,*),
121 . get_u_mat,get_u_geo
122 EXTERNAL get_u_pnu,get_u_mnu,get_u_mat,get_u_geo,get_u_pid,
123 . get_u_mid
124 parameter(kfunc=29)
125 parameter(kmat=31)
126 parameter(kprop=33)
127C=======================================================================
128C-----------------------------------------------
129C L o c a l V a r i a b l e s
130C-----------------------------------------------
131 my_real
132 . amas,amas2,elastif
133 INTEGER I,IDENS
134C-----------------------------------------------
135 amas = get_u_geo(1,iprop)
136 amas2 = amas
137 elastif = get_u_geo(2,iprop)
138 idens = int(get_u_geo(12,iprop))
139
140C
141C MEAN VALUES
142C
143C--------------------------------------
144C ELEMENT CHECK
145C--------------------------------------
146 DO i=1,nel
147 IF(xl(i)== zero)THEN
148 WRITE(iout,*)' **ERROR: ZERO LENGTH SPRING :'
149 ENDIF
150 ENDDO
151C--------------------------------------
152C ELEMENT INITIALIZATION
153C--------------------------------------
154 DO i=1,nel
155 IF (idens == 0 )THEN
156 amas2 = amas* xl(i)
157 ENDIF
158 mass(i) = amas2
159 xiner(i) = zero
160C
161C Initialization of UVAR(1,I) with the delta length of the spring
162C
163 uvar(1,i) = zero
164 uvar(2,i) = one
165C
166C Initialization of UVAR(3,I) with the initial length of the spring at time=0
167C
168 uvar(3,i) = xl(i)
169C
170C Initialization of UVAR(4,I) with Zero (will be the Force of previous cycle)
171C
172 uvar(4,i) = zero
173C
174C FOR NODAL AND ELEMENT TIME STEP COMPUTATION
175C STIFM(I) = ELASTIF / XL(I)
176 stifm(i) = elastif
177 stifr(i) = zero
178 viscm(i) = zero
179 viscr(i) = zero
180 ENDDO
181C
182 RETURN
#define my_real
Definition cppsort.cpp:32
integer function get_u_pid(ip)
Definition uaccess.F:626
integer function get_u_pnu(ivar, ip, k)
Definition uaccess.F:482
integer function get_u_mid(im)
Definition uaccess.F:668
integer function get_u_mnu(ivar, im, k)
Definition uaccess.F:565