Appendix
Appendix 1 - Available User's Arguments
Available Starter User's Arguments
Variable | Size | Type | Write/read | Definition |
---|---|---|---|---|
IIN | 1 | Integer | R | Input file unit (Starter input file) |
IOUT | 1 | Integer | R | Output file unit (Starter output file) |
UPARAM | NUPARAM | Float | W | User’s parameter |
MAXNUPARAM | 1 | Integer | R | Maximum size of UPARAM |
NUPARAM | 1 | Integer | W | Size of UPARAM |
NUVAR | 1 | Integer | W | Number of user’s variables |
IFUNC | NFUNCT | Integer | W | Function number array |
MAXNFUNC | 1 | Integer | R | Maximum size of IFUNC |
NFUNCT | 1 | Integer | W | Size of IFUNC |
PARMAT | 3 | Float | W | (1) Stiffness modulus for interface (2) Young's modulus (for shell) (3) Poisson’s ratio (for shell) |
Variable | Size | Type | Write/read | Definition |
---|---|---|---|---|
IIN | 1 | Integer | R | Input file unit (Starter input file) |
IOUT | 1 | Integer | R | Output file unit (Starter output file) |
UPARAM | NUPARAM | Float | W | User’s parameter |
MAXNUPARAM | 1 | Integer | R | Maximum size of UPARAM |
NUPARAM | 1 | Integer | W | Size of UPARAM |
NUVAR | 1 | Integer | W | Number of user’s variables |
IFUNC | NFUNCT | Integer | W | Function number array |
MAXNFUNC | 1 | Integer | R | Maximum size of IFUNC |
NFUNCT | 1 | Integer | W | Size of IFUNC |
STIFINT | 1 | Integer | W | Stiffness modulus for interface |
Variable | Size | Type | Write/read | Definition |
---|---|---|---|---|
IIN | 1 | Integer | R | Input file unit (Starter input file) |
IOUT | 1 | Integer | R | Output file unit (Starter output file) |
NUVAR | 1 | Integer | W | Number of user’s variables |
UVAR | NUVAR* NEL | Float | R/W | User’s variable |
PARGEO | * | Float | W | (1) Skew number (2) Stiffness for interface (3) Front wave option |
NEL | 1 | Integer | R | Number of elements |
IPROP | 1 | Integer | R | Property number |
IX | 3* NEL | Float | R | Spring connectivity |
XL | NEL | Float | R | Element length |
MASS | NEL | Float | W | Element mass |
XINER | NEL | Float | W | Element inertia (spherical) |
STIFM | NEL | Float | W | Element stiffness (time step) |
STIFR | NEL | Float | W | Element rotation stiffness (time step) |
VISCM | NEL | Float | W | Element viscosity (time step) |
VISCR | NEL | Float | W | Element rotation viscosity (time step) |
Variable | Size | Type | Write/read | Definition |
---|---|---|---|---|
NEL | 1 | Integer | R | Number of elements |
IIN | 1 | Integer | R | Input file unit (Starter input file) |
IOUT | 1 | Integer | R | Output file unit (Starter output file) |
NUVAR | 1 | Integer | W | Number of user’s variables |
UVAR | NUVAR* NEL | Float | R/W | User’s variable |
PARGEO | * | Float | W | (1) Skew number (2) Stiffness for interface (3) Front wave option |
IPROP | 1 | Integer | R | Property number |
IMAT | 1 | Integer | R | Material number |
SOLID_ID | NEL | Integer | R | Solid Element id t=0 |
EINT | NEL | Float | W | Total internal energy t=0 |
VOL | NEL | Float | R/W | Initial volume |
OFF | NEL | Float | R/W | Delete flag |
RHO | NEL | Float | R/W | Density |
SIG | 6*NEL | Float | R/W | Stress tensor |
XX1 | NEL | Float | R | X coordinate node 1 |
YY1 | NEL | Float | R | Y coordinate node 1 |
ZZ1 | NEL | Float | R | Z coordinate node 1 |
XX2 . . ZZ8 | NEL | Float | R | Same for node 2 to 8 |
VX1 | NEL | Float | R | X velocity node 1 |
VY1 | NEL | Float | R | Y velocity node 1 |
VZ1 | NEL | Float | R | Z velocity node 1 |
VRX1 | NEL | Float | R | X rotational velocity node 1 |
VRY1 | NEL | Float | R | Y rotational velocity node 1 |
VRZ1 | NEL | Float | R | Z rotational velocity node 1 |
MAS1 | NEL | Float | W | Mass node 1 |
MAS2 . . MAS8 | NEL | Float | W | Same for node 2 to 8 |
INN1 | NEL | Float | W | Inertia node 1 |
INN2 . . INN8 | NEL | Float | W | Same for node 2 to 8 |
STIFM | NEL | Float | W | Element stiffness (time step) |
STIFR | NEL | Float | W | Element rotation stiffness (time step) |
VISCM | NEL | Float | W | Element viscosity (time step) |
VISCR | NEL | Float | W | Element rotation viscosity (time step) |
Variable | Size | Type | Write/read | Definition |
---|---|---|---|---|
IIN | 1 | Integer | R | Input file unit (Starter input file) |
IOUT | 1 | Integer | R | Output file unit (Starter output file) |
Available Engine User's Arguments
Variable | Size | Type | Write/read | Definition |
---|---|---|---|---|
NEL | 1 | Integer | R | Number of elements |
UVAR | NUVAR* NEL | Float | R/W | User’s variable |
UPARAM | NUPARAM | Float | W | User’s parameter |
NUPARAM | 1 | Integer | W | Size of UPARAM |
NUVAR | 1 | Integer | W | Number of user’s variables |
NFUNCT | 1 | Integer | W | Size of IFUNC |
IFUNC | NFUNCT | Integer | W | Function number array |
NPF | * | Integer | R | Function array |
NPT | 1 | Integer | R | Number of layers or integration points |
IPT | 1 | Integer | R | Layer or integration point number |
IFLAG | * | Integer | R | Geometrical flags |
TF | * | Float | R | Function array |
NGL | NEL | Integer | R | Element number |
TIME | 1 | Float | R | Current time |
TIMESTEP | 1 | Float | R | Current time step |
RHO0 | NEL | Float | R | Initial density |
AREA | NEL | Float | R | Area |
EINT | NEL | Float | R | Total internal energy |
THKLY | NEL | Float | R | Layer thickness |
EPSPXX | NEL | Float | W | Strain rate XX |
DEPSXX | NEL | Float | W | Strain increment XX |
EPSXX | NEL | Float | W | Strain XX |
SIGOXX | NEL | Float | W | Old elasto-plastic stress XX |
SIGNXX | NEL | Float | W | New elasto-plastic stress XX |
SIGVXX | NEL | Float | W | Viscous stress XX |
SOUNDSP | NEL | Float | W | Sound speed (time step) |
VISCMAX | NEL | Float | W | Max damping modulus (time step) |
THK | NEL | Float | R/W | Thickness |
PLA | NEL | Float | R/W | Plastic strain |
OFF | NEL | Float | R/W | Delete flag |
Variable | Size | Type | Write/read | Definition |
---|---|---|---|---|
NEL | 1 | Integer | R | Number of elements |
UVAR | NUVAR* NEL | Float | R/W | User’s variable |
UPARAM | NUPARAM | Float | W | User’s parameter |
NUPARAM | 1 | Integer | W | Size of UPARAM |
NUVAR | 1 | Integer | W | Number of user’s variables |
NFUNCT | 1 | Integer | W | Size of IFUNC |
IFUNC | NFUNCT | Integer | W | Function number array |
NPF | * | Integer | R | Function array |
TF | * | Float | R | Function array |
NGL | NEL | Integer | R | Element number |
TIME | 1 | Float | R | Current time |
TIMESTEP | 1 | Float | R | Current time step |
RHO0 | NEL | Float | R | Initial density |
RHO | NEL | Float | R | Density |
VOLUME | NEL | Float | R | Volume |
EINT | NEL | Float | R | Total internal energy |
EPSPXX | NEL | Float | W | Strain rate XX |
DEPSXX | NEL | Float | W | Strain increment XX |
EPSXX | NEL | Float | W | Strain XX |
SIGOXX | NEL | Float | W | Old elasto-plastic stress XX |
SIGNXX | NEL | Float | W | New elasto-plastic stress XX |
SIGVXX | NEL | Float | W | Viscous stress XX |
SOUNDSP | NEL | Float | W | Sound speed (time step) |
VISCMAX | NEL | Float | W | Max damping modulus (time step) |
OFF | NEL | Float | R/W | Delete flag |
Variable | Size | Type | Write/read | Definition |
---|---|---|---|---|
NEL | 1 | Integer | R | Number of elements |
IPROP | 1 | Integer | R | Property number |
UVAR | NUVAR* NEL | Float | R/W | User’s variable |
NUVAR | 1 | Integer | W | Number of user’s variables |
FX | NEL | Float | R/W | Tension force |
FY | NEL | Float | R/W | Y shear force |
FZ | NEL | Float | R/W | Z shear force |
XMOM | NEL | Float | R/W | Torsion moment |
YMOM | NEL | Float | R/W | Y bending moment |
ZMOM | NEL | Float | R/W | Z bending moment |
EINT | NEL | Float | R/W | Total internal energy |
OFF | NEL | Float | R/W | Delete flag |
STIFM | NEL | Float | W | Element stiffness (time step) |
STIFR | NEL | Float | W | Element rotation stiffness (time step) |
VISCM | NEL | Float | W | Element viscosity (time step) |
VISCR | NEL | Float | W | Element rotation viscosity (time step) |
MASS | NEL | Float | W | Element mass |
XINER | NEL | Float | W | Element inertia (spherical) |
DT | 1 | Integer | R | Time step |
XL | NEL | Float | R | Element length |
XL | NEL | Float | R | Element length |
VX | NEL | Float | R | Tension velocity |
RY1 | NEL | Float | R | Node 1 Y bending rotational velocity |
RZ1 | NEL | Float | R | Node 1 Z bending rotational velocity |
RX | NEL | Float | R | Torsional velocity |
RY2 | NEL | Float | R | Node 2 Y bending rotational velocity |
RZ2 | NEL | Float | R | Node 2 Z bending rotational velocity |
Variable | Size | Type | Write/read | Definition |
---|---|---|---|---|
NEL | 1 | Integer | R | Number of elements |
IOUT | 1 | Integer | R | Output file unit (Engine output file) |
UVAR | NUVAR* NEL | Float | R/W | User’s variable |
IPROP | 1 | Integer | R | Property number |
IMAT | 1 | Integer | R | Material number |
SOLID_ID | NEL | Integer | R | Solid Element ID |
EINT | NEL | Float | R | Total internal energy |
VOL | NEL | Float | R | Initial volume |
OFF | NEL | Float | R/W | Delete flag |
RHO | NEL | Float | R/W | Density |
SIG | 6* NEL | Float | R/W | Stress tensor |
XX1 | NEL | Float | R | X coordinate node 1 |
YY1 | NEL | Float | R | Y coordinate node 1 |
ZZ1 | NEL | Float | R | Z coordinate node 1 |
XX2 . . ZZ8 | NEL | Float | R | Same for node 2 to 8 |
VX1 | NEL | Float | R | X velocity node 1 |
VY1 | NEL | Float | R | Y velocity node 1 |
VZ1 | NEL | Float | R | Z velocity node 1 |
VRX1 | NEL | Float | R | X rotational velocity node 1 |
VRY1 | NEL | Float | R | Y rotational velocity node 1 |
VRZ1 | NEL | Float | R | Z rotational velocity node 1 |
FX1 | NEL | Float | W | X force node 1 |
FY1 | NEL | Float | W | Y force node 1 |
FZ1 | NEL | Float | W | Z force node 1 |
MX1 | NEL | Float | W | X moment node 1 |
MY1 | NEL | Float | W | Y moment node 1 |
MZ1 | NEL | Float | W | Z moment node 1 |
STIFM | NEL | Float | W | Element stiffness (time step) |
STIFR | NEL | Float | W | Element rotation stiffness (time step) |
VISCM | NEL | Float | W | Element viscosity (time step) |
VISCR | NEL | Float | W | Element rotation viscosity (time step) |
Variable | Size | Type | Write/read | Definition |
---|---|---|---|---|
ID | NEL | Integer | R | Sensor ID |
Appendix 2 - Communication Between User's Subroutines and Radioss Code
The main functions to access user’s properties and materials are return functions and storage functions.
Return Function | Variables | Description | |
---|---|---|---|
INTEGER IP = GET_U_P(PID) |
PID | Integer property ID | Returns a property number. |
INTEGER PID = GET_U_PID(IP) |
IP | Property number | Returns the user property ID corresponding to the user property number IP. |
FLOAT PARAMI = GET U GEO (I,IP)
|
I | Parameter index (1 for the first parameter, …) | Returns the user geometry parameters. |
IP | Property number | ||
INTEGER II = GET U PNU
(I,IP,KK)
|
I | Parameter index | Returns the user-stored function (if
KK=KFUNC), material
(if KK=KMAT), or property
(if KK=KPROP) numbers.
See Starter subroutine for corresponding ID storage. |
IP | Property number | ||
KK | Parameters KFUNC, KMAT, KPROP | ||
INTEGER IM = GET_U_M(MID) |
MID | Material ID | Returns a material number. |
INTEGER MID = GET_U_MID(IM) |
IM | Material number | Returns the user material ID corresponding to user material number IM. |
FLOAT PARAMI =
GET_U_MAT(I,IM) |
I | Parameter index | Returns the user material
parameters. Note:
GET_U_MAT(0,IMAT)
returns the density. |
IM | Material number | ||
INTEGER IFUNCI = GET_U_MNU
(I,IM,KFUNC) |
I | Variable index | Returns the user-stored function numbers
(function referred by user’s materials). See the Starter material user’s subroutine for corresponding ID storage. |
IM | Material number | ||
KFUNC | Only functions are yet available | ||
FLOAT Y =
GET_U_FUNC(IFUNC,X,DYDX) |
IFUNC | Function numbered obtained by IFUNC = GET_U_MNU(I,IM,
KFUNC ) or IFUNC =
GET_U_PNU(I,IP,KFUNC) |
Returns Y(X). |
X | X value | ||
DYDX | Slope dY/dX |
Storage Function | Description |
---|---|
INTEGER ierror = SET_U_PNU(func_index, fun_id,
KFUNC) |
Stores Radioss function fun_id in
the current user property buffer at a position referenced by
func_index . |
INTEGER ierror = SET_U_PNU(mat_index, mid,
KMAT) |
Stores Radioss material mid in
the current user property buffer at a position referenced by
mat_index . |
INTEGER ierror = SET_U_PNU(prop_index, pid,
KPROP) |
Stores Radioss property pid in the current user property buffer at a position referenced by prop_index. |
INTEGER ierror = SET_U_GEO(value_index,
value) |
Stores a value in the current user property buffer at a
position referenced by value_index . |
Function | Variables | Description | |
---|---|---|---|
INTEGER NUM =
GET_U_NUMSENS(ID) |
ID | Sensor ID | Allows you to get a sensor number. |
NUM | Sensor number | ||
INTEGER ierror = GET_U_SENS_FPAR(IVAR,
VAR) |
IVAR | Float variable index | Allows you to retrieve a float sensor parameter. |
VAR | Integer value | ||
INTEGER ierror = GET_U_SENS_IPAR(IVAR,
VAR) |
IVAR | Integer variable index | Allows you to retrieve an integer sensor parameter. |
VAR | Integer value | ||
INTEGER ierror =
SET_U_SENS_VALUE(NSENS,IVAR,VAR) |
NSENS | Integer sensor number | Allows you to write a variable to a sensor buffer (float). |
IVAR | Integer buffer index | ||
VAR | Float value | ||
INTEGER ierror =
GET_U_SENS_VALUE(NSENS,IVAR,VAR) |
NSENS | Integer sensor number | Allows you to read a variable from a sensor buffer (float). |
IVAR | Integer buffer index | ||
VAR | Float value | ||
INTEGER ierror =
SET_U_SENS_ACTI(NSENS) |
NSENS | Integer sensor number | Allows you to activate a sensor using Radioss flag. |
FLOAT DTIME =
GET_U_SENS_ACTI(NSENS) |
DTIME | Float time delay since first activation.
|
Allows you to check Radioss activation status of a sensor. |
NSENS | Integer sensor number | ||
FLOAT TIME = GET_U_TIME() |
Allows you to check the current time. | ||
INTEGER NCYC = GET_U_CYCLE() |
Allows you to check the current cycle. | ||
INTEGER IERR = GET_U_ACCEL(NACC,
AX,AY,AZ) |
AX, AY, AZ | Float acceleration components | Allows you to access accelerometer values. |
NACC | Integer accelerator number | ||
IDACC | Integer accelerator ID | ||
NACC | GET_U_NUMACC(IDACC) |
||
INTEGER IERR = GET_U_NOD_X(NOD,
X,Y,Z)
|
X, Y, Z | Float nodal coordinates | Allows you access to nodal values. |
DX, DY, DZ | Float nodal displacements | ||
VX, VY, VZ | Float nodal velocities | ||
AX, AY, AZ | Float nodal accelerations | ||
NOD | Integer node number | ||
NID | Integer node ID | ||
NOD | GET_U_NUMNOD(ID) |
||
FLOAT Y = GET_U_FUNC(IFUNC, X,
DERI) |
X | Float ordinate | Allows you to access Radioss functions. |
Y | Float abscissa | ||
DERI | Float Y/X | ||
IFUNC | Integer function number | ||
IDFUN | Integer function ID, where
|
Communication Between User's Modules and Radioss Database
Appendix 3 - General User's Subroutine Format with Material Laws 29, 30, and 31
Starter Format Example
Engine Format Example
Example Demo File
Refer to Access the Model Files to download the required model file(s).
Appendix 4 - General User's Subroutine Format with Extended User Material Laws
Starter Format Example
Engine Format Example
Example Demo File
Refer to Access the Model Files to download the required model file(s).