The user defined tire model conforms to the TYDEX standard, therefore the received
input and expected output is determined by the standard.
The things that the user defined tire must do, can be
summarized as follows:
- Read the tire property file to any access tire properties (if any) that the model
requires for its calculations. It is recommended that this is done once during the
initialization call described by the TYDEX standard.
- Call the ROAD function that is passed in through the TYDEX interface at an appropriate
time to pick the relevant road height information.
- Calculate the tire forces and moments are output to MotionSolve. These forces must be in
the Wheel Carrier axis system (TYDEX C). Some Utility subroutines are available from
MotionSolve that might help with these calculations.
- Load the relevant results in the VARINF array described by the TYDEX standard.
- Handle errors within the code in the user defined road models and those that can
originate from the road call or calls to MotionSolve API.
Calling the User Tire Interface
The User Tire
Interface calls the User Tire model several times during the simulation with different JOBFLG.
The JOBFLG variable decides the execution model (initialization, reading tire property file,
initial condition) of TYRE. The User Tire Interface expects some variables to be updated
according to the JOBFLG value. The JOBFLG is called in following order:JOBFLG
1:
Initialization mode
2: Reading tire and road property files
11: Actual array
size
6: Initial conditions
0: Normal call
99: Final call
For the
complete details about the JOBFLG variable please refer to the Tire Subroutine Arguments topic.
Reading Road Property Files
The parameters and
data that the tire model requires can be parsed from the tire property file. It is necessary
that the road property file has the ‘MODEL’ block with the property file format and the
function name, as described in the previous section. The rest of the tire property file can be
of any format, depending on the data you choose to read. If the rest of the file is in
TeimOrbit format then there are utilities provided that can help with the parsing. These
utilities are callable API and are described in further detail in the section Reading TeimOrbit Files.
Calling the Road Function
The road function is
received via the TYDEX tire interface. The road function must be called at least once during
each tire subroutine call in order to make sure things are initialized correctly in the road.
Since the road model is passed in as a function pointer (C) or an EXTERNAL (FORTRAN),
different roads can be used with the same tire based on the chosen road property
file.
Calculation of Tire Forces and Moments
The user
written tire function received inputs as per the TYDEX format. The user model must use these
to calculate the wheel kinematic situation, things such as contact patch location, slip angle,
slip ratio, etc. The road function is called to receive information about the height of the
road. To assist this calculation Altair provides a set of utilities that are documented in the
Utilities to Calculate Tire Kinematics, Forces, and Moments topic. All
three forces and three moments of the tire must be calculated in the wheel carrier axis
system, defined by the TYDEX standard (TYDEX C). The units of forces and moments should be
Newton and Newton-meters respectively.
Load Results in the VARINF Array
The VARINF
array must be populated before the tire subroutine exits. This makes tire information that is
not the tire forces available for the results file. These things include tire kinematics
information and other tire parameters.