User Subroutines
This manual describes the interface between Altair Radioss and a user’s subroutines.
- User window (general interface for external code)
- User material laws for solids and shells
- User spring elements
- User solid elements (may be degenerated to shell or beam elements)
- User sensors
- User failure models
To link Radioss to a user module of each category, two subroutines must be provided: one linked with Radioss Starter and one with Radioss Engine. The Starter subroutines are only used to read user data and initialize specified parameters. The Engine subroutines define and execute user programs. Storage arrays are provided for each type of application. The communication between Radioss and the User’s subroutines is done by passing function arguments by specialized functions. The function arguments are used for general purpose user window interface, user materials and elements. Only integer and float variables or arrays are used. The float arguments are, Double Precision.
Otherwise, all user subroutines use special access functions to retrieve information from the Radioss database.
Radioss Starter | Radioss Engine | ||
---|---|---|---|
User’s Input Options | Engine File Options | ||
User material | /MAT/USERn | /ANIM/keyword/USRi /ANIM/keyword/USRj/k |
|
User property | /PROP/USERn | ||
User sensor | /SENSOR/USERm | ||
User failure | /FAIL/USern | ||
User’s Subroutines | |||
User window | USERWIS.f | USERWI.f | |
User material laws 29, 30, 31 | Shell | LECMnn.f | SIGEPSnnC.f |
Solid | LECMnn.f | SIGEPSnn.f | |
User property | Spring | LECGnn.f and RINInn.f | RUSERnn.f |
Solid | LECGnn.f and SINInn.f | SUSERnn.f | |
User failure 01, 02, 04 | Shell | LECRll.f | flllawC.f |
Solid | LECRll.f | flllaw.f | |
User sensor | LECSEN_USERm.f | USER_SENm.f | |
Object Files | |||
User window | USERWIS.o | USERWI.o | |
User material laws 29, 30, 31 | Shell | LECMnn.o | |
Solid | LECMnn.o | ||
User spring | Spring | LECGnn.o and RINInn.o | |
Solid | LECGnn.o and SINInn.o | ||
User failure 01, 02, 04 | Shell | LECRll.o | |
Solid | LECRll.o | ||
User sensor | LECSEN_USERm.o | USER_SENm.o | |
Object library | |||
"radioss_engine_library".a | "radioss_starter_library".a | ||
User’s Executables | |||
"user_engine_executable" | "user_starter_executable" |
Saving User’s Variables in Animation
The user’s variables UVAR (element_number,i) defined in the user’s material law can be saved in an animation file using the output USERi as keyword3 in the Engine option /ANIM/keyword2/keyword3.
The number of saved variables is limited to 18 ( ). Results are saved for each integration point.
Example: The user variable number 1 UVAR (element number,1) is saved in animations by the Engine option /ANIM/ELEM/USER1.
The number of user’s variables is set in NUVAR (Starter argument).