You can use the Altair Bushing Model with a variety of solvers including:
• | MotionSolve™ |
• | MATLAB™ |
• | Adams™ |
• | SIMPACK™ |
The table below describes the modeling elements that MotionSolve and Adams use. These elements provide equivalent functionality with the Altair Bushing Model.
Purpose |
MotionSolve Element |
Adams Element |
Description |
Apply bushing forces |
FORCE_VECTOR_TWOBODY |
GFORCE |
Applies bushing forces and moments to the I-Body and J-Body. |
Compute bushing forces |
CONTROL_STATEEQN |
GSE |
Computes bushing forces and moments and the time derivatives of states associated with the bushing forces and moments. |
Compute mount displacement and velocities |
CONTROL_STATEEQN |
GSE |
Computes the local structural deflection and rate of change of deflection given the sum of the friction, bushing, and limit forces and moments acting between the two connecting bodies. |
Compute bushing limit forces |
CONTROL_STATEEQN |
GSE |
Computes the forces and moments due to bushing reaching the limits of its travel. This may include material contact between the connecting bodies |
Compute external friction effects |
CONTROL_STATEEQN |
GSE |
Computes the friction torque that acts in response to the relative rotational motion between the two connecting bodies. |
Coordinate system |
REFERENCE_MARKER |
Marker |
Defines a coordinate system on a body. In this context it defines the location where the forces are applied and the axes along which moments are computed. |
Variable |
REFERENCE_VARIABLE |
Variable |
Defines an algebraic state and its underlying expression. In this context they define the signals that are eventually provided as input to a GSE. |
Array |
REFERENCE_ARRAY |
Array |
A collector that collects several signals and provides them as input to a GSE. |
Below is an illustration of the various solver components and the data flow between them. Following the illustration are the required statements for a bushing model along with an example of a simple model:
A GFORCE applies the forces and torques computed by the simulation model to parts in the MotionSolve model. The form of the GFORCE is:
! Frequency & Amplitude Dependent Bushing
GFORCE/id
, I= id-marker-I-Body,
, JFLOAT= id-floating-marker-J-body,
, RM= id-marker-J-body
, FX= ARYVAL(id-array-y-gse-bus,1) \ !FX
, FY= ARYVAL(id-array-y-gse-bus,2) \ !FY
, FZ= ARYVAL(id-array-y-gse-bus,3) \ !FZ
, TX= ARYVAL(id-array-y-gse-bus,4) \ !TX
, TY= ARYVAL(id-array-y-gse-bus,5) \ !TY
, TZ= ARYVAL(id-array-y-gse-bus,6) \ !TZ
The following table describes the attributes of the GFORCE:
Integer Identifier |
Description |
id |
Integer identifying the GFORCE statement. |
id-marker-i-body |
ID of Marker on I-Body to which the GFORCE applies force and torque. |
id-floating-marker-j-bodyUnits |
ID of floating Marker on J-Body to which GFORCE applies reaction forces and torques. |
id-marker-j-body |
ID of Marker on J-Body used as the coordinate system for all calculations. This Marker is also used when calculating the input displacements and velocities for the simulation model. |
id-array-y-gse-bus |
ID of the bushing GSE Y (output) array containing the forces and torques computed by the simulation model. |
This GSE computes the output forces and torques and the derivatives of the internal states associated with the RUBBER_DAMPING or HYDROMOUNT_DAMPING formulations. The required computations are performed in the use-subroutine GSESUB_BW that is located in the .dll file or shared library file.
The example below shows the specification for a RUBBER_DAMPING formulation for all directions:
• | The number of outputs (NO) is six (6) for three forces: FX, FY, FZ; and three torques: TX, TY, TZ. |
• | The number of states (NS) is eighteen (18) for 6 directions, 3 states per direction. |
The following is an example of the form of the GSE statement in MotionSolve:
! Rubber Damping Formulation
GSE/id
, NS = 18
, NO = 6
, U = id-array-u-gse-bus
, X = id-array-x-gse-bus
, Y = id-array-y-gse-bus
, FUNCTION = USER(
, id-str-gbs-file,
, id-array-preload,
, id-array-offset,
, id-array-scale-displacement,
, id-array-scale-force,
, id-str-doe-file,
, id-array-mount-limits ) \
, ROUTINE = AltairBushingMotionSolve::GSESUB_BW,
, AltairBushingMotionSolve::GSEXX_BW, AltairBushingMotionSolve::GSEXU_BW
, AltairBushingMotionSolve::GSEYX_BW, AltairBushingMotionSolve::GSEYU_BW
The following table lists the attributes of the .gse file:
Integer Identifier |
Description |
||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
Integer identifying the GSE statement. |
||||||||||||||||||||||
id-array-u-gse-bus |
ID of the ARRAY statement that provides input to this GSE. It contains a list of 12 VARIABLE ids that actually compute the required signals. Example: ARRAY/9, U, VARIABLES= 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 Let the I Marker for the GFORCE be 1125. Let the RM Marker for the GFORCE be 2125. Then the 12 VARIABLES, 1-12, must have the following form:
|
||||||||||||||||||||||
id-array-x-gse-bus |
ID of the ARRAY statement holding the GSE states. Example: ARRAY/10, X |
||||||||||||||||||||||
id-array-y-gse-bus |
ID of the ARRAY statement holding the GSE outputs. Example: ARRAY/11, Y The GSE has the following 6 outputs:
|
||||||||||||||||||||||
id-str-gbs-file |
ID of the STRING statement that contains the name of the .gbs property file. The GSE reads this file to obtain all required data. Example: STRING/12, S=/usr/people/mark/propertyFile/sample.gbs |
||||||||||||||||||||||
id-array-preload |
ID of the ARRAY statement containing preloads for the 3 force and 3 torque directions. Example: ARRAY/13, NUM=100, 200, 300, 700, 800, -900 If id-array-preload is less than or equal to zero, then the preload default is zero. |
||||||||||||||||||||||
id-array-offset |
ID of the ARRAY statement containing the 3 translational and 3 rotational displacement offsets. Example: ARRAY/14, NUM=0.0, 0.0, 1.3, -25D, 10D, 15D If id-array-offset is less than or equal to zero, the offsets default to 0.0. |
||||||||||||||||||||||
id-array-scale-displacement |
ID of the ARRAY statement containing the 3 translational and 3 rotational displacement scales. Example: ARRAY/15, NUM=1.0, 1.0, 1.0, 57.29578, 57.29578, 57.29578\ If id-array-scale-displacement is less than or equal to zero, then the scales default to 1.0. |
||||||||||||||||||||||
id-array-scale-force |
ID of the ARRAY statement containing the 3 force and 3 torque scales. Example: ARRAY/16, NUM=9.81, 9.81, 9.81, 1.0, 1.0, 1.0 If id-array-scale-force is less than or equal to zero (0), then the force scales default to 1.0. |
||||||||||||||||||||||
id-str-doe-file |
ID of the STRING statement with the path name of a file containing variations of parameters in the .gbs property file. The parameter values in the doe file override those in the .gbs property file. |
||||||||||||||||||||||
id-str-lim-file |
If the id is positive then the software interprets the ID as the id of the STRING statement containing the path and name of a file containing impact parameters for mount limits. Example: STRING/18, S= C:\mark\property Files\sample.gbi |
||||||||||||||||||||||
-or- |
|||||||||||||||||||||||
id-array-mount-limits |
If the id is negative then the absolute value is interpreted as the id of an ARRAY statement containing the ids of 6 other ARRAY statements containing the impact parameters for 3 translational and 3 rotational directions. Example: ARRAY/19,NUM = 101, 102, 103, 104, 105, 106 The array contains a list of 6 ARRAY ids. Each of these ARRAY’s contains 10 parameters. Each of these referenced ARRAY's has the following form: ARRAY/id, NUM = KN, EN, CN, DN, LN, KP, EP, CP, DP, LP
Note: If the ID is zero or omitted, then mount limits are inactive. |
The mount GSE computes the combined local structural deflection and rate-of-change-of-deflection of I-Body and J-Body due to the forces and moments across the bushing. The input to the mount GSE is the sum of the forces and moments due to the bushing, friction, and limits acting between the I-Body and J-Body that the bushing connects.
The following is an example of the form of the mount CONTROL_STATEEQN:
GSE/id-gse-mou
, NS = 6
, NO = 6
, U = id-array-u-gse-mou
, X = id-array-x-gse-mou
, Y = id-array-y-gse-mou
, FUNCTION = USER(id-array-mou-k, id-array-mou-c, id-array-mou-act)\
, ROUTINE = boucwen_gse::GSESUB_MOUNT,
, boucwen_gse::GSEXX_MOUNT
, boucwen_gse::GSEXU_MOUNT
, boucwen_gse::GSEYX_MOUNT
, boucwen_gse::GSEYU_MOUNT
The attributes of the mount GSE are described below:
Integer Identifier |
Description |
||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id-gse-mou |
Integer identifying the GSE statement. |
||||||||||||||||||||||||
id-array-u-gse-mou |
ID of the ARRAY statement that provides input to this GSE. The U ARRAY holds the identifiers of VARIABLEs statements whose values are the forces. Example: ARRAY/51, U, VARIABLES= 51, 52, 53, 54, 55, 56 Let the I Marker for the GFORCE be 1125. Let the J-FLOAT Marker for the GFORCE be 2124. Let the RM Marker for the GFORCE be 2125. Then the 6 VARIABLES, 51-56, must have the following form:
|
||||||||||||||||||||||||
id-array-x-gse-mou |
ID of the ARRAY statement containing the internal states for this GSE. Example: ARRAY/52, X |
||||||||||||||||||||||||
id-array-y-gse-mou |
ID of the ARRAY statement that provides the GSE outputs . The outputs are the 6 components combined I-Body and J-Body structural deflections and the 6 components of the structural velocities. Example: ARRAY/53, Y The contents of the Y ARRAY are:
|
||||||||||||||||||||||||
id-array-mou-k |
ID of the ARRAY containing the combined local structural stiffness of I-Body and J-Body. The stiffness coefficients (kx, ky, kz, ktx, kty, ktz) must be positive real numbers. An example is shown below. Example: ARRAY/54, IC, NUM = 123.3, 234.5, 345.6, 987.6, 876.5, 765.4 |
||||||||||||||||||||||||
id-array-mou-c |
ID of the REFERENCE_ARRAY statement giving the combined local structural damping of I-Body and J-Body. The camping coefficients (cx, cy, cz, ctx, cty, ctz) must be positive real numbers. An example is shown below. Example: ARRAY/55, IC, NUM = 1.233, 2.345, 3.456, 9.876, 8.765, 7.654 |
||||||||||||||||||||||||
id-array-mou-act |
ID of the ARRAY specifying the activity of local structural deflection per direction. The activity coefficients (act-x, act-y, act-z, act-rx, act-ry, act-rz) must be zero (0) or one (1). A value of zero (0) turns off the structural deflection, while a value of one (1) turns on the structural deflection. Example: ARRAY/56, IC, NUM = 1, 1, 0, 0, 1, 1 |