Solver Routines
The Solver routines are divided into the following categories:
User Control Subroutines
ID | Description |
|---|
910 | |
1111 | |
1112 | |
1113 | |
1105 | |
1106 | |
1109 | Auto Ground Height Adjustment. See Ground Marker Height Adjustment. |
1010 | |
1020 | |
1021 | |
1030 | |
1031 | |
1032 | |
1140 | |
1105 | |
1106 | |
1141 | |
1142 | |
1144 | |
1149 | |
906 | |
1199 | |
1152 | |
User Coupler Subroutines
The custom FORTRAN subroutines includes the ability to model nonlinear couplers. Currently the options available are:
ID | Description |
|---|
cou1110 | |
cou1120 | |
User Differential Equation Subroutines
ID | Description |
|---|
dif1101 | 4 pole filter |
dif1102 | |
dif904 | |
dif1110 | |
User Field Element Subroutines
ID | Description |
|---|
| This FIESUB reads the bushing specifications directly from the .adm deck, and returns the total (stiffness plus damping) force, fi + ci, for any six-element bushing displacement and six-element bushing velocity vector. |
User Gforce Subroutines
ID | Description |
|---|
gfo900 | Interface to STI tire models |
gfo1106 | Interface to Adams 5.2.1 Tire model |
gfo1102 | Aerodynamic force application. See GFORCE: Aerodynamic Modeling |
User Motion Subroutines
User SIMULATE/STATIC Routines
Full vehicle Adams modelers would frequently run into the problem of initial conditions when running drift or tire wear studies. To increase the accuracy of these simulations, MSC Software wrote an alternate SIM/STAT routine in a user CONSUB. This routine keeps the vehicle from moving in the ground plane and eliminates the initial transients that occur when going from Adams static analysis to dynamic. The CONSUB was further refined to have more modes of operation. The main four modes of operation are :
1. Fixed Body Equilibrium - vehicle is assumed to be not moving. This is required for suspension alignments. Only the tire vertical forces are present.
2. Steady-State Straight Line Equilibrium - vehicle is assumed to be traveling at the part velocities while steering is adjusted to zero lateral force at JPRIM body marker. This mode is used to start all simulations where the vehicle is moving forward at a non zero speed.
3. Stead-State Straight Line Acceleration Braking Equilibrium - vehicle is assumed to be traveling at the part velocities while accelerating or decelerating at a user specified g level.
4. Steady-State Cornering Equilibrium - the simulation starts at a specified value of lateral acceleration, as issued by the control statement. The lateral acceleration is increased at each time step until the maximum desired level is reached, the maximum engine power is reached, or the simulation fails (i.e. vehicle spin out).
All the modes are discussed in detail below. It is mandatory for modelers to use this CONSUB instead of the Adams SIM/STAT whenever the model contains tires. This will mean almost all full-vehicle simulations, with the exception of events that have special test rigs, such as 4 post. Adams Car creates JPRIMs which are automatically removed by the CONSUBs. The additional Adams statements required to use the CONSUB are described elsewhere.
User Sforce Subroutines
User Variable Subroutines
ID | Description |
|---|
var1004 | |
var1102 | Determination of Continuous Angular Displacement |
var1106 | |
var1109 | |
var1112 | |
var1113 | |
var1114 | |
var1117 | |
User Vtorque Subroutines
ID | Description |
|---|
vto1105 | |
vto1106 | |
vto1120 | |
Nonlinear Couplers
The custom FORTRAN subroutines includes the ability to model nonlinear couplers. Currently the options available are:
Rotational to Translational Couplers using Splines
Transmits motion from a revolute joint to a translational joint. Following statement must be used to invoke this feature.
COUPLER/id, JOINTS = joi1,joi2, FUNC = USER(brflg,spltype,splid,scale)
where:
id = coupler id.
joi1 = revolute joint of the coupler
joi2 = translational joint of the coupler
brflg = branch flag. should be <=10
spltype = spline interpolation type
= 1 - akima spline type interpolation
= 2 - cubic spline type interpolation
splid = id of the spline specifying the nonlinear relation between the joints
scale = value by which the output to be scaled. Use -1 to reverse sign of the output.
Rotational to Rotational Couplers
Transmits motion between 2 revolute joints. Following statement must be used to invoke this feature.
COUPLER/id, JOINTS = joi1,joi2, FUNC = USER(brflg,spltype,splid,scale)
where:
id = coupler id.
joi1 = revolute joint of the coupler from which motion is transmitted
joi2 = revolute joint of the coupler to which motion is transmitted
brflg = branch flag. should be > 10 and <= 20
spltype = spline interpolation type
= 1 - akima spline type interpolation
= 2 - cubic spline type interpolation
splid = id of the spline specifying the nonlinear relation between the joints
scale = value by which the output to be scaled. Use -1 to reverse sign of the output.