*barrierpositioner

Positions the barrier according to various protocols with respect to a given vehicle.

Syntax

*barrierpositioner vehiclemark=<value> barriermark=<value> vehiclefrontaxis=<value> barrierfronaxis=<value> basenode=<value> inclinationnode=<value> ... ?<optionN>=<valueN>?

Type

HyperMesh Tcl Modify Command

Description

Positions the barrier according to various protocols with respect to given vehicle.

The model must contain vehicle and barrier parts, the vertical axis of these parts must be aligned with global positive z axis (0,0,1), the barrier model must be imported as an include file, and all barrier parts must be in the same include file.

Inputs

barrierfrontaxis={<x y z>}
The vector pointing toward the front of the barrier. It must be different from the global z axis. This is mandatory.
basenode={<x y z>}
The coordinates of the base node for ground. This is mandatory.
barrierfoamdistance=<value>
The frontal distance of the foam part of the barrier to be considered for calculating the bounding box of those nodes/coordinates for offset or overlap, default is 350.0.
barrierheightposition=<value>
The desired final distance between vehicle and barrier, defaults are given for each config below.
barrierimpactside=<value>
The default is 1 except for config=16. Valid values are:
1 - Left
2 - Right
barrierlateralangle=<value>
The lateral angle with which the barrier is rotated from expected barrier final axis. For front load case, barrier final axis is opposite of vehicle front axis. For side load case, it is lateral axis of vehicle and towards the vehicle, whereas it is front axis of vehicle for rear load case. Defaults are 0.0 except for config=14 the default is 15 degrees and for config=18 the default is 75 degrees.
barriermark=<value>
The ID of the mark of barrier components. Valid values are 1 and 2. This is mandatory.
barrieroverlappercent=<value>
The percentage overlap between car and vehicle for front load cases, defaults are given for each config below.
barrierpitchangle=<value>
The pitch angle for barrier positioning for the roof crush load case.
barrierrollangle=<value>
The roll angle for barrier positioning for the roof crush load case.
barriervehicleoffsetdist=<value>
The desired final distance between vehicle and barrier, default is 10.0.
config=<value>
The type of load case and regulation. Valid values are:
Config Load Case Regulation Description barrierheightposition barrieroverlappercent rpointoffset
11 Side IIHS Mobile Deformable Barrier (MDB) 379.0 - -
12 Side FMVSS-214D Passenger Car 279.0 - -
13 Side FMVSS-214D MPV 279.0 - -
14 Side Euro NCAP MDB 300.0 - 250.0
15 Side UN-R95 MDB 300.0 - 0.0
16 Side J-NCAP MDB 300.0 - 250.0
17 Side C-NCAP MDB 350.0 - 250.0
18 Side Euro NCAP Oblique Pole 102.0 - -
31 Front Euro NCAP ODB 200.0 40.0 -
32 Front Euro NCAP MPDB 150.0 50.0 -
33 Front IIHS Small Overlap Rigid Barrier 0.0 25.0 -
34 Front US NCAP OMDB 200.0 15.0 -
51 Rear FMVSS-301 229.0 70.0 -
61 Roof Crush FMVSS-216a
inclinationnode={<x y z>}
The coordinates of the inclination node for ground. This is mandatory.
roof_entities
The list of component IDs defining the roof entities of vehicle.
rpointoffset=<value>
The barrier distance from R Point of vehicle for side load cases or impact reference distance (IRD).
If the value is 0.0 for config 11, 12 or 13, then it will compute IRD. Defaults are given for each config above. Non-zero offset values take precedence and will be used as it is for positioning.
sidenode={<x y z>}
The coordinates of the side node for side load cases.
vehiclefrontaxis={<x y z>}
The vector pointing toward the front of the vehicle. It must be different from the global z axis. This is mandatory.
vehiclemark=<value>
The ID of the mark of vehicle components. Valid values are 1 and 2. This is mandatory.
wheelbasedistance=<value>
The wheelbase distance as the distance between front wheel axis and rear wheel axis, used for IRD calculations.

Examples

Example of Front ODB load case:
*createmark comps 1 "by include" $includeidvehicle
*createmark comps 2 "by include" $includeidbarrier
*barrierpositioner config=31 vehiclemark=1 barriermark=2 vehiclefrontaxis={1 0 0} barrierfrontaxis={-1 0 0} basenode={0.000087 913.163 0} inclinationnode={-4806.71 913.163 0} barrieroverlappercent=40.0 barrierheightposition=200.0 barrierfoamdistance=150.0 barriervehicleoffsetdist=10.0
Example of Front OMDB load case:
*createmark comps 1 "by include" $includeidvehicle
*createmark comps 2 "by include" $includeidbarrier
*barrierpositioner config=34 vehiclemark=1 barriermark=2 vehiclefrontaxis={1 0 0} barrierfrontaxis={1 0 0} basenode={0.000087 913.163 0} inclinationnode={-4806.71 913.163 0} barrieroverlappercent=35.0 barrierheightposition=200.0 barrierlateralangle=15.0 barriervehicleoffsetdist=10.0 barrierfoamdistance=150.0
Example of Side IIHS MDB load case:
*createmark comps 1 "by include" $includeidvehicle
*createmark comps 2 "by include" $includeidbarrier
*barrierpositioner config=11 vehiclemark=1 barriermark=2 vehiclefrontaxis={1 0 0} barrierfrontaxis={0 1 0} basenode={0.000087 913.163 0} inclinationnode={-4806.71 913.163 0} sidenode={-777.060791 982.340820 330.154846} wheelbasedistance=2538.0 barrierimpactside=1 barrierheightposition=379.0 barrierfoamdistance=350.0 barriervehicleoffsetdist=10.0
Example of roof crush load case:
*createmark comps 1 "by include" $includeidvehicle
*createmark comps 2 "by include" $includeidbarrier
*barrierpositioner config=61 vehiclemark=1 barriermark=2 roofentities={2000019 2000020 2000021 2000023 2000140 2000181 2000182 2000197 2000199 2000222 2000240 2000277 2000286 2000287 2000288 2000624 2000625 2000626 2000627} barrierfrontaxis={-1 0 0} vehiclefrontaxis={-1 0 0} barrierfoamdistance=254.0 barriervehicleoffsetdist=10.0 barrierpitchangle=-5.0 barrierrollangle=-25.0 barrierimpactside=2

Errors

Incorrect usage results in a Tcl error. To detect errors, you can use the catch command:
if { [ catch {command_name...} ] } {
   # Handle error
}

Version History

2021

2022.1 - Added support for roof crush load case for LS-DYNA and Radioss. Added new arguments barrierpitchangle, barrierrollangle, and roof_entities. Added new config value 61.