Modeling
Changes from REXS version 1.3 |
Modeling FKM evaluation points Modeling Woehler S-N curves Modeling structured point clouds Modeling shaft-hub connections |
The following document describes the modeling system in the REXS interface.
Notes:
- The numerical IDs of the relations and components used in the XML code are examples, not predetermined IDs.
Gear unit
The "gear_unit" component represents the complete gear unit. Exactly one of these components is required per model.
Required components | XML syntax |
---|---|
Gear unit: |
|
Gear casings
The casing component must be created if bearings or couplings are connected with the casing/inertial system.
A model can now include multiple gear_casing components. This can be helpful with FE (partial) casings. For details, see "Modeling Assembly Groups."
Required components | XML syntax |
---|---|
Casing |
|
Required relations | XML syntax |
---|---|
Assembly relation |
|
Modeling shafts
![]() |
A shaft consists of:
and is connected to the gear unit via an assembly relation. |
Required components | XML syntax |
---|---|
Shaft |
|
Shaft section |
|
... |
Note:
|
Required relations | XML syntax |
---|---|
Assembly relation Shaft - shaft section |
|
Assembly relation Gear unit - shaft |
|
Example - model of a shaft with two sections


Modeling notches
Shaft geometry can now be described in further detail by modeling so-called notches. This includes shaft shoulders, which more precisely describe the transition from one shaft section to the next. They can also describe round and rectangular grooves, v-notches, and transverse bores. Each of these notch shapes is available as an independent component type with corresponding parameters. Notches are connected to the associated shaft via an assembly relation. A notch can only be assigned to one shaft. However, a shaft can include several notches.
Overview of available notch types:
- Shaft shoulder (shaft_shoulder)
- Shaft shoulder with undercut (shaft_shoulder_with_undercut)
- Round groove (round_groove)
- Rectangular groove (rectangular_groove)
- V-notch (v_notch)
- Transverse bore (transverse_bore)
Changes from REXS version 1.3 |
New in REXS 1.4: Notch calculations for shaft-hub connections |
Required components | XML syntax |
---|---|
Shaft |
|
Notch |
|
Required relations | XML syntax |
---|---|
Assembly relation Shaft - notch |
|
Notches are positioned using the shaft coordinate system. In general, the position ("u_coordinate_on_shaft" attribute) of a notch refers to its "beginning;" i.e., to the location of the notch with the smallest u-coordinate in the shaft coordinate system. However, for shaft shoulders, the position of the notch corresponds to the position of the shoulder (the transition point of the underlying shaft sections). Therefore, for a shaft shoulder of small-to-large diameter, the position of the notch corresponds to the "end of the notch."
FKM evaluation points
Changes from REXS version 1.3 |
Modeling of FKM evaluation points is new in REXS 1.4 |
The FKM Guideline ("Rechnerischer Festigkeitsnachweis für Maschinenbauteile“ des Forschungskuratorium Maschinenbau) offers both a calculation method with nominal stresses at common notch locations (similar to DIN 743) as well as a calculation method with local stresses for components of any shape. The FKM evaluation point component (fkm_evaluation_point) was created for the associated parameters.
An FKM evaluation point can be used as follows:
- The FKM evaluation point can be connected with a notch via an assembly relation. In this case, it uses the coordinate system of the associated shaft.
- The FKM evaluation point can be connected with a notch calculation position of a shaft-hub connection via an assembly relation. In this case, it uses the coordinate system of the associated (inner) shaft.
- The FKM evaluation point can be assigned to "Assemblies" via assembly relations. In this case, it uses the coordinate system of the assembly.
Required relations | XML syntax |
---|---|
Assembly relation Notch evaluation point |
|
Modeling stages
![]()
![]() |
This section describes assemblies that represent two meshed gears. Planetary stages are addressed in a separate section. There are several types of stages that are modeled in a similar fashion:
Not yet specified:
Abstract general_stage and general_gear components have been introduced to standardize the description of the modeling.
A cylindrical gear stage consists of:
and is connected to the gear_unit via an assembly relation. |
Required components | XML syntax |
---|---|
general_stage |
|
general_gear |
|
general_gear |
|
shaft |
|
shaft |
|
Required relations | XML syntax |
---|---|
Stage relation Stage - gear1 - gear2 |
|
Assembly relation Shaft1 - gear1 |
|
Assembly relation Shaft2 - gear2 |
|
Assembly relation Gear unit - stage |
|
Example - model of a cylindrical gear stage (cylindrical_stage)


Example - model of a bevel gear stage (bevel_stage)


Example - model of a worm gear stage (worm_stage)
Internal and external gears (cylindrical gear stage)
A cylindrical gear stage can either describe the meshing of two external gears (cylindrical_gear) or an external gear with an internal gear (ring_gear). An internal gear is referred to as a ring gear. The ring_gear includes all the attributes of a cylindrical_gear and behaves like a cylindrical_gear in all relations.
Note: There are no special conventions for ring gear attributes; they use the same validity ranges as an external gear (number of teeth, etc. are positive values). Refer to the descriptions of the individual attributes for details.
Modeling mesh-related gear data
Many parameters of a gear are mesh-related, which differ in the case of a multiple-contact engagement.
Examples include the pitch diameter of a cylindrical gear (pitch_diameter) or the specification of whether the gear drives the stage (is_driving_gear).
This mesh-related gear data is represented in the virtual stage_gear_data component. For each stage and gear there is a stage_gear_data component that is associated with the stage-gear combination.
Through REXS 1.2, a generic stage_gear_data component was used for all gear types. Starting with REXS version 1.3, the following specific components are used for the different gear types:
- cylindrical_stage: cylindrical_stage_gear_data
- bevel_stage: bevel_stage_gear_data
- worm_stage: worm_stage_gear_data
As the basic principle and the relations used are the same, the generic stage_gear_data component is used in the following example.
Required components | XML syntax |
---|---|
general_stage |
|
general_gear |
|
stage_gear_data |
|
Required relations | XML syntax |
---|---|
stage_gear_data relation Stage - gear - stage gear data |
|
Example - model of 4 mesh-related gear data for 3 cylindrical gears in 2 stages
Example - model of mesh-related gear data for a bevel gear stage
Example - model of mesh-related gear data for a worm gear stage
Gears and flanks
To enable the assignment of gear tooth flank data, two flank components (left and right) are assigned to each gear (general_gear) via flank relations. The viewing direction must be individually specified for each gear type.
- cylindrical_gear: viewing direction is from the datum face of the gear towards the non-datum face.
- bevel_gear: viewing direction is from the cone tip toward the gear
- worm_gear: viewing direction is along the u-axis of the gear
- worm_wheel: viewing direction is along the u-axis of the gear
The right flank (or left flank) is the flank seen on the right (or left) side in the viewing direction of an upward pointing tooth (see ISO 21771 or DIN 3960). If necessary, modeling of the individual teeth of the gear can be supplemented at a later date.
Through REXS 1.2, a generic flank_geometry component was used for all gear types. Starting with REXS version 1.3, the following specific components are used for the different gear types:
- cylindrical_gear / ring_gear: cylindrical_gear_flank
- bevel_gear: bevel_gear_flank
- worm_gear / worm_wheel: worm_gear_flank
As the basic principle and the relations used are the same, the generic flank_geometry component is used in the following example.
Required components | XML syntax |
---|---|
general_gear |
|
flank_geometry |
|
flank_geometry |
|
Required relations | XML syntax |
---|---|
Flank relation Gear-flank-flank |
|
Example - model of a gear with right and left flanks

Flank modifications and flank deviations
Flank modifications and flank deviations can be assigned to the flanks of a cylindrical gear to enable a detailed description of the tooth flank shape of cylindrical gears.
- Each type of modification is represented by its own component type (e.g.,"tip_relief")
- Any number of modifications and deviations can be assigned to a tooth flank using "reference" relations.
- Multiple tooth flanks can reference a flank modification (e.g., if the right and left flanks receive the same modification).
Example - model of a gear with right and left flanks and multiple flank modifications

Overview of the various standard flank modifications:
- Profile angle modification (profile_slope)
- Tip relief (tip_relief)
- Root relief (root_relief)
- Profile crowning (profile_crowning)
- Helix crowning (helix_crowning)
- Helix slope modification (helix_slope)
- Datum face end relief (end_relief_datum_face)
- Non-datum face end relief (end_relief_non_datum_face)
- Topographical flank modification (topographical_modification)
- Triangular tip relief (triangular_tip_relief)
- Triangular root relief (triangular_root_relief)
- Profile twist (profile_twist)
Overview of various flank deviations:
- Profile deviation (profile_deviation)
- Helix deviation (helix_deviation)
- Topographic deviation of the tooth flank can be specified via the corresponding attribute of the flank_geometry component.
Required components | XML syntax |
---|---|
cylindrical_gear_flank |
|
flank_modification / flank_deviation |
|
Required relations | XML syntax |
---|---|
reference |
|
Concept bearings
Bearings can be represented with various levels of detail. Abstract concept bearings are the most general form of a bearing. They include information about the position and rigidity of the bearing location. The conventions for construction and relations also apply to rolling bearings and plain bearings.
Connecting the bearing in the model
A bearing is connected to two components via a side relation. The role of the "inner_part" refers to the component that is mounted to the inner diameter of the bearing. Similarly, the role of the "outer_part" refers to the component that is mounted to the outer diameter of the bearing.
If no specific inner and outer side can be identified (abstract concept bearings), the "inner_part"/"outer_part" roles can be defined arbitrarily; e.g., inner_part = left for axial connections.
Required components |
XML syntax |
---|---|
Coupling points |
|
Two of the following component types are required, depending on the components that are connected by the coupling:
Optional components | XML syntax |
---|---|
Shaft |
|
Casing |
|
Side plate |
|
Exactly one of the following relations is required, depending on the components that are connected by the bearing:
Required relations | XML syntax |
---|---|
Side relation for shaft-in-shaft bearing arrangements |
|
Side relation for bearings within the casing |
|
Side relation for bearings on the casing journals |
|
Side relation for bearings in the side plate |
|

Rolling bearings
A distinction is made between two types of rolling bearings:
- For rolling_bearing_with_catalog_geometry components, the catalog information is either explicitly or implicitly (reference to catalog) specified.
- For rolling_bearing_with_detailed_geometry components, the internal geometry of the bearing is either explicitly or implicitly (special file) specified.
As many modeling details apply to both, they are grouped together under the abstract term rolling_bearing. A rolling bearing consists of a number of bearing rows, which in turn consist of a number of rolling elements.
Bearing series and rolling elements
The bearing-to-bearing row and bearing row-to-rolling element associations are represented by ordered assembly relations.
Required components | XML syntax |
---|---|
bearing_row 1 |
|
... | ... |
bearing_row n |
|
rolling_element 1 |
|
... | ... |
rolling_element_m |
|
Required relations | XML syntax |
---|---|
Side relation rolling_bearing – shaft – gear_casing |
|
Ordered assembly relation rolling_bearing – bearing_row order 1 |
|
Ordered assembly relation rolling_bearing – bearing_row order 2 |
|
... | ... |
Ordered assembly relation bearing_row – rolling_element order 1 |
|
Ordered assembly relation bearing_row – rolling_element order 2 |
|
... | ... |
The attributes all_rows_are_identical for the bearing component and all_rolling_elements_are_identical for the bearing_row component included in REXS 1.0 have been removed. All bearing rows must always be explicitly modeled.
Clarification for specific types of bearings:
-
Four-point contact ball bearings have one row of balls
- Cross-roller bearings have two rows of rollers with different pressure angles, etc.
Rolling element contacts
The rolling element contact component (rolling_element_contact) is used to represent the various contacts of a rolling element with the raceway and the rib. It is assigned to the rolling element via an assembly relation. Multiple contacts can be assigned to a rolling element. The contact partner of the rolling element is identified by the rolling_element_contact_type attribute of the rolling_element_contact.
Required components | XML syntax |
---|---|
rolling_element |
|
rolling_element_contact |
|
Required relations | XML syntax |
---|---|
assembly |
|
External loads
The external_load component is used to represent external loads (external torque and power or transverse forces). Any number of loads can be applied to a shaft. They are assigned to the shaft via an assembly relation.
Required components | XML syntax |
---|---|
shaft |
|
external_load |
|
Required relations | XML syntax |
---|---|
assembly |
|
The "defines_torque" boolean attribute is used to indicate whether the torque of the external load is specified (e.g., available drive torque or specified output torque of a load). Similarly, a shaft can be identified as speed-determining with the "defines_speed" boolean attribute.
The transmits_torque boolean attribute was introduced to differentiate a component that represents an external transverse force from a (free) drive component that transmits an (unknown) torque. This must be set to true for all external loads that are relevant for the power flow.
Additional masses
The masses of a coupling or rotor can be considered for the natural frequency calculation using the abstract "additional mass" component. Gravitational force also influences the static gearbox calculation. An additional mass can be connected to a shaft or an (FE) casing. The assignment is made via a reference relation.
The additional mass has its own local coordinate system. The coordinate origin (indicated by the "support_vector") specifies the position where the force is applied to the shaft/casing. The moments of inertia of the additional mass component are relative to the axes of the local coordinate system. An (optional) excentricity of the center of the mass can be specified as a position (vector) in the local coordinate system. Refer to the description of the corresponding attributes in the REXS database for details.
Required components | XML syntax |
---|---|
shaft / gear_casing |
|
additional_mass |
|
Required relations | XML syntax |
---|---|
assembly |
|
assembly |
|
Materials and lubricants
Each component may be assigned a maximum of one material and one lubricant. The assignment is made via a reference relation.
A lubricant can be assigned to the following components:
- Casing (gear_casing)
- Bearings (concept_bearing, rolling_bearing_with_catalog_geometry, rolling_bearing_with_detailed_geometry)
- Cylindrical gears (cylindrical_gear, ring_gear)
- Bevel gears (bevel_gear)
- Worm stages (worm_stage)

S-N curves
Changes from REXS version 1.3 |
Modeling of S-N curves is new in REXS 1.4 |
S-N curves (Woehler lines) are used in the durability calculation of various machine elements. S-N curves plot permissible stresses over the number of load cycles.
An S-N curve can be assigned to the following components via a reference relation:
- Cylindrical gears (cylindrical_gear, ring_gear)
- Bevel gears (bevel_gear)
- Shafts (shaft)
Multiple S-N curves can be assigned to a single component; e.g., for the root and flank load capacities. The calculation for which the S-N curve can be used is specified via a corresponding attribute on the S-N curve.
Required relations | XML syntax |
---|---|
reference |
|
reference |
|
Tools and manufacturing settings
A gear can be generated by machining with multiple tools. If necessary, the left and right flank of a gear can be machined with different tools. Finally, some manufacturing settings (such as the machining allowance for cylindrical gears) are critical for the manufacturing results. To model these relationships, a tooth flank processing step is represented by a manufacturing_step relation which connects a tooth flank, the tool, and the associated manufacturing settings.
Appropriate components for the gear type should be used:
Gear type | Flank | Tool | Manufacturing settings |
---|---|---|---|
cylindrical_gear |
cylindrical_gear_flank |
rack_shaped_tool cutter_wheel_tool zero_degree_grinding_disk_tool |
cylindrical_gear_manufacturing_settings |
ring_gear |
cylindrical_gear_flank |
cutter_wheel_tool |
cylindrical_gear_manufacturing_settings |
bevel_gear |
bevel_gear_flank |
bevel_gear_tool |
bevel_gear_manufacturing_settings |
worm_gear |
worm_gear_flank |
worm_grinding_disc_tool |
worm_gear_manufacturing_settings |
worm_wheel |
worm_gear_flank |
worm_wheel_hob_tool |
worm_gear_manufacturing_settings |
For a bevel gear, the bevel_gear_tool corresponds to the cutter, and bevel_gear_manufacturing_settings corresponds to the machine settings.
Example for 2 manufacturing_step relations for a cylindrical gear flank:
Required relations | XML syntax |
---|---|
manufacturing_step order 1 |
|
manufacturing_step order 2 |
|
Couplings
Couplings transmit torque and speed between shafts, or between a shaft and the casing.
The abstract switchable_coupling component (similar to concept bearings) is used to enable modeling of manual gear units and switching states. A "coupling" is an abstract representation of a non-shiftable coupling or shaft-hub connection, see "Couplings."
The concrete modeling of different real coupling types will be defined in a later version of the specification.
As with bearings, couplings are connected with two components using a side relation. The role of the "inner_part" corresponds to the component that is attached to the inner side of the coupling. Similarly, the role of the "outer_part" corresponds to the component that is attached to the outer side of the coupling. If the inner and outer sides are not specifically identified, the "inner_part" and "outer_part" roles can be defined arbitrarily; for example, inner_part = left for axial connections.
A special "coupling" relation was used in version 1.0. This has been removed.
Required components | XML syntax |
---|---|
switchable_coupling |
|
Two of the following component types are required, depending on the components that are connected by the coupling:
Optional components | XML syntax |
---|---|
Shaft |
|
Casing |
|
Exactly one of the following relations is required, depending on the components that are connected by the coupling:
Required relations | XML syntax |
---|---|
side |
|
side |
|
side |
|
Shifting states
The gear unit (gear_unit) has two attributes that indicate the number of available shifting states, as well as the currently selected gear:
- number_of_gears (integer)
- gear_shift_index (integer)
Additionally, each shiftable component may have the attribute:
- is_engaged (boolean array)
This indicates whether or not the component is engaged for each shifting state. The length of the array must match the number_of_gears.
Load spectra
Problem
- A load spectrum calculation corresponds to variation of the load and environmental data (external torque, speed, gear, temperature, etc.).
- Each expression of the variation corresponds to a load case (load_case).
- Much of the gear information (geometry, etc.) remains unchanged over the entire calculation.
- The varied input values and the corresponding calculation values must be represented for every load case. Furthermore, values accumulated via the load spectrum must be recorded.
- Consequently, a load spectrum consists of multiple load cases as well as the values accumulated across all of the load cases.
Solution
- The load spectrum is represented by a master model (containing the data and the relations that remain unchanged) and multiple sub-models (containing only the varied data).
- Each load case corresponds to a sub-model. Therefore, the load_case term has been selected for sub-models.
- The load cases of a load spectrum are summarized in a load_spectrum.
- Only the varied data in the load spectrum is included in a load_case (sub-model). The following applies:
- The corresponding attributes are structured in components, as in the master model.
- The (unique) component ID is used to associate a component in the master model and a component in the sub-model.
- All sub-models must include the same number of attributes.
- Attributes that are specified in the sub-models may not be reused in the master model.
- The master model only becomes a complete model that can be calculated when it is combined with a sub-model.
- Values accumulated via the load spectrum are stored in a separate sub-model of the load spectrum named "accumulation."
- Initially, only one load spectrum is permitted per model.
- A model with load spectrum is represented in the .xml format as follows:
<model>
<relations>
<components>
<component id="1">
<component id="4">
<component id="6">
<!-- further components -->
</components>
<load_spectrum id="1">
<load_case id="1">
<load_case id="2">
<load_case id="3">
<component id="4">
<component id="6">
</load_case>
<accumulation>
<component id="4">
<component id="6">
</accumulation>
</load_spectrum>
</model>
A possible extension to include other calculus of variations (e.g., design variations such as bearing types or different gear qualities) may be considered once the concept for representing load spectra has been proven in practice.
Time periods and load durations
The duration of load cases may be specified absolutely or relatively.
- Absolute specification is made via the operating_time attribute of the gear unit (in hours) for each load case.
- Relative specification is made via the operating_time_fraction attribute of the gear unit as a percent for each load case. On the other hand, an (optional) total duration of the load spectrum can be specified via the operating_time attribute of the gear unit in the master model.