UCOVAR

Utility/Data Access SubroutineUsed in conjunction with UCOSUB to define the part states in a user-defined constraint.

Use

This function is called by UCOSUB.

Format

Fortran Calling Syntax
CALL UCOVAR(ID, NPMS, IPMS, NVARS, IVARS)
C/C++ Calling Syntax
c_ucovar(id, npms, ipms, nvars, ivars)
Python Calling Syntax
py_ucovar(id, ipms, ivars)
MATLAB Calling Syntax
m_ucovar(id, ipms, ivars)

Attributes

ID
[integer]
The identifier of the corresponding user defined constraint element (Constraint_UserConstr) that is invoking UCOSUB.
NPMS
[integer]
The total number of elements in the array ipms.
IPMS
[integer]
An array containing part IDs for the variable types in the array IVARS. Arrays LPMS and IVARS must be of same length.
NVARS
[integer]
The total number of integer codes in array IVARS. NVARS must be equal to NPMS.
IVARS
[integer]
An array containing integer codes to identify the variables involved in the constraint as described below.
Integer Code
Meaning
11
Part center of mass X displacement with respect to ground.
12
Part center of mass Y displacement with respect to ground.
13
Part center of mass Z displacement with respect to ground.
111
X component of the axis vector U1 with respect to ground.
112
Y component of the axis vector U1 with respect to ground.
113
Z component of the axis vector U1 with respect to ground.
211
X component of the axis vector U2 with respect to ground.
213
Z component of the axis vector U2 with respect to ground.
311
X component of the axis vector U3 with respect to ground.
312
Y component of the axis vector U3 with respect to ground.
313
Z component of the axis vector U3 with respect to ground.

Here U1, U2, and U3 are unit vectors pointing along the positive X, Y, and Z axes of the part principle axes.

Example

For an example of UCOVAR, please refer to <install_path>\hwsolvers\usersub.