Constraint: Mate
Model ElementConstraint_MATE is used to specify general mating constraints between geometric primitives.
Description
Constraint_MATE differs from Constraint_Joint and Constraint_Jprim in that it specifies more general constraints based on distance, tangency, and coincidence relations between mating geometries.
Format
<Constraint_Mate
id = "integer"
[ label = "string" ]
i_marker_id = "integer"
j_marker_id = "integer"
{
type = "COI_POI_SPH"
radius = "real"
|
type = "DIS_POI_ POI"
dist = "real"
|
type = "DIS_POI_SPH"
dist = "real"
radius = "real"
|
type = "DIS_SPH_SPH"
dist = "real"
iradius = "real"
jradius = "real"
|
type = "TAN_SPH_SPH"
iradius = "real"
jradius = "real"
|
type = "COI_POI_CYL"
radius = "real"
|
type = "DIS_POI_LIN"
dist = "real"
|
type = "DIS_POI_CYL"
dist = "real"
radius = "real"
|
type = "DIS_SPH_LIN"
dist = "real"
radius = "real"
|
type = "DIS_SPH_CYL"
dist = "real"
iradius = "real"
jradius = "real"
|
type = "TAN_SPH_LIN"
radius = "real"
|
type = "TAN_SPH_CYL"
iradius = "real"
jradius = "real"
|
type = "COI_LIN_CYL"
radius = "real"
|
type = "DIS_LIN_LIN"
dist = "real"
|
type = "DIS_LIN_CYL"
dist = "real"
radius = "real"
|
type = "DIS_CYL_CYL"
dist = "real"
iradius = "real"
jradius = "real"
|
type = "TAN_LIN_CYL"
radius = "real"
|
type = "TAN_CYL_CYL"
iradius = "real"
jradius = "real"
|
type = "COI_LIN_PLA"
|
type = "COI_POI_POI"
|
type = "COI_POI_LIN"
|
type = "COI_LIN_LIN"
|
type = "DIS_LIN_PLA"
dist = "real"
|
type = "DIS_PLA_CYL"
dist = "real"
radius = "real"
|
type = "TAN_PLA_CYL"
radius = "real"
|
type = "DIS_SPH_PLA"
dist = "real"
radius = "real"
|
type = "TAN_SPH_PLA"
radius = "real"
|
type = "COI_POI_CON"
radius = "real"
height = "real"
|
type = "DIS_SPH_CON"
dist = "real"
iradius = "real"
jradius = "real"
height = "real"
|
type = "TAN_SPH_CON"
iradius = "real"
jradius = "real"
height = "real"
|
type = "DIS_PLA_CON"
dist = "real"
radius = "real"
height = "real"
|
type = "TAN_PLA_CON"
radius = "real"
height = "real"
}
[ is_virtual = {"FALSE" | "TRUE"} ]
</Constraint_Mate>
Attributes
- id
- Element identification number, (integer>0). This is a number that is unique among all Constraint_MATE elements.
- label
- The name of the Constraint_MATE element.
- i_marker_id
- Specifies a Reference_Marker that defines the connection on the first body. The body may be a rigid body, a flexible body, or a point body. The parameter is required.
- j_marker_id
- Specifies a Reference_Marker that defines the connection on the second body. The body may be a rigid body, a flexible body, or a point body.
- type
- Specifies the type of mate between i_marker_id and
j_marker_id.type may be one of the following:
- Type
- #Constraints
- COI_POI_SPH
- 1
- DIS_POI_POI
- 1
- DIS_POI_SPH
- 1
- DIS_SPH_SPH
- 1
- TAN_SPH_SPH
- 1
- COI_POI_CYL
- 1
- DIS_POI_LIN
- 1
- DIS_POI_CYL
- 1
- DIS_SPH_LIN
- 1
- DIS_SPH_CYL
- 1
- TAN_SPH_LIN
- 1
- TAN_SPH_CYL
- 1
- COI_LIN_CYL
- 3
- DIS_LIN_LIN
- 2
- DIS_LIN_CYL
- 2
- DIS_CYL_CYL
- 2
- TAN_LIN_CYL
- 2
- TAN_CYL_CYL
- 2
- COI_LIN_PLA
- 2
- COI_POI_POI
- 3
- COI_POI_LIN
- 2
- COI_LIN_LIN
- 4
- DIS_LIN_PLA
- 2
- DIS_PLA_CYL
- 2
- TAN_PLA_CYL
- 2
- DIS_SPH_PLA
- 1
- TAN_SPH_PLA
- 1
- COI_POI_CON
- 1
- DIS_SPH_CON
- 1
- TAN_SPH_CON
- 1
- DIS_PLA_CON
- 3
- TAN_PLA_CON
- 3
The parameter is required. See Comments for more information about these mate types.
- dist
- Distance between the two parts constrained by the DIS_mate constraint. This option is mate constraint specific.
- radius
- Radius of the circle/sphere specified in the mate constraint. This option is mate constraint specific.
- i radius
- Radius of the I part circle/sphere specified in the mate constraint. This option is mate constraint specific.
- j radius
- Radius of the J part circle/sphere specified in the mate constraint. This option is mate constraint specific.
- height
- Height of the part specified in the mate constraint. This option is mate constraint specific.
- is_virtual
- Defines whether the constraint is virtual or regular. If is_virtual is set to TRUE, the constraint is implemented as a virtual constraint. If is_virtual is set to FALSE, the constraint is implemented as a regular, algebraic constraint. This parameter is optional. The default is FALSE. See Comment 22 in Constraint: Joint for more information about virtual joints.
Example 1
Below is an implementation of a Constraint_Mate of type TAN_PLA_CON:
<Constraint_Mate
id = "301002"
type = "TAN_PLA_CON"
i_marker_id = "30103071"
j_marker_id = "30102030"
radius = "600."
height = "800."
/>
The I marker is associated with the plane and the J marker is associated with the cone.
Example 2
The table below shows how one Constraint_Mate element can be used to implement the same constraint as two ADAMS GCON elements:
|
|
Alternatively, you may modify the ADM file by commenting out the GCON elements and inserting the MATE element as shown below.
|
|
Note that the MATE element is not supported by ADAMS.
Example 3
Following is an example of a mate of type TAN_PLA_CYL:
<Constraint_Mate
id = "301002"
type = "TAN_PLA_CYL"
i_marker_id = "1"
j_marker_id = "2"
radius = "60."
/>
Comments
- The Constraint_MATE types are
written as AAA_BBB_CCC. AAA can be of the following types:
- DIS - Distance
- TAN - Tangent
- COI - Coincident
BBB and CCC can be of the following types:- SPH - Sphere
- PLA - Plane
- CYL - Cylinder
- LIN - Straight line
- CON - Cone
- POI - Point
- The Reference_Marker elements with IDs i_marker_id and j_marker_id belong to the bodies to which BBB and CCC graphics are attached, respectively.
- For POI and SPH,
the Reference_Marker element has origin at the point and sphere center. The orientation of
the Reference_Marker does not make any difference.
For PLA, the Reference_Marker origin lies in the plane, and the Z axis is perpendicular to the plane.
For LIN, the Reference_Marker origin lies on the line, and the Z axis is along the line.
For CYL, the Reference_Marker origin is at the center of one end of the cylinder, and its Z axis is along the cylinder axis, pointing at the other end of the cylinder.
For CON, the Reference_Marker origin is at the center of the base of the cone and its Z axis is along the axis, pointing at the other end of the cone.
- Setting the DIST argument to zero turns a DIS type Constraint_Mate into a TAN type Constraint_Mate.
- It is important to note that the solver treats the graphic primitives involved in Constraint_Mate as having infinite dimensions, although the graphics themselves may have finite dimensions.
- The Constraint_Mate element can be used to implement some of the ADAMS GCON element functionality. See the Examples section.