Utility/Data Access
SubroutineUsed in conjunction with UCOSUB to define the marker states used in a
user-defined constraint.
Use
This function is called by UCOSUB.
Format
- Fortran Calling Syntax
- CALL UCOMAR(ID, NMARS, IMARS, NVARS, IVARS)
- C/C++ Calling Syntax
- c_ucomar(id, nmars, imars, nvars, ivars)
- Python Calling Syntax
- py_ucomar(id, imars, ivars)
- MATLAB Calling Syntax
- m_ucomar(id, imars, ivars)
Attributes
- ID
- [integer]
- The identifier of the corresponding user defined constraint element
(Constraint_UserConstr) that is invoking
UCOSUB.
- NMARS
- [integer]
- The total number of elements in the array IMARS.
- IMARS
- [integer]
- An array containing marker IDs for the variable types in the array
IVARS. Arrays IMARS and
IVARS must be of same length.
- NVARS
- [integer]
- The total number of integer codes in array IVARS.
NVARS must be equal to NMARS.
- IVARS
- [integer]
- An array containing integer codes to identify the variables involved in the
constraint as described below.
- Integer Code
- Meaning
- 1011
- Marker origin X displacement with respect to ground.
- 1012
- Marker origin Y displacement with respect to ground.
- 1013
- Marker origin Z displacement with respect to ground.
- 1111
- X component of the axis vector U1 with respect to ground.
- 1112
- Y component of the axis vector U1 with respect to ground.
- 1113
- Z component of the axis vector U1 with respect to ground.
- 1211
- X component of the axis vector U2 with respect to ground.
- 1212
- Y component of the axis vector U2 with respect to ground.
- 1213
- Z component of the axis vector U2 with respect to ground.
- 1311
- X component of the axis vector U3 with respect to ground.
- 1312
- Y component of the axis vector U3 with respect to ground.
- 1313
- Z component of the axis vector U3 with respect to ground.
Here
U1, U2 and U3 denote unit vectors pointing along the
positive X, Y, and Z axes of the marker.
Example
For an example of UCOMAR, please refer to
<install_path>\hwsolvers\usersub.