trait Mass:
    .doc: """
    The mass properties is adjusted to achieve the same ground pressure as stated in the
    Komatsu HM400-5 specifications for both unladen and fully laden vehicle.

    Mass properties for the parts are taken from the Komatsu HM400-5 Shop manual.
    A total of approx 8000 kg was not specified in the Shop manual. Of that weight it
    has been assumed that 70% belongs to the front part of the vehicle which has a
    lot more components than the rear.

    The final values assigned for the inertia tensors is based on the inertias originating 
    from the imported CAD geometries and then linearly  rescaled with respect to the updated 
    masses listed below. 
    """
    payload is Real: 0    # kg

    chassis:
        front_frame.body:
            inertia.mass: 15049
            kinematics.local_cm_transform.position: {-1.470, 0 , 0.930}
        rear_frame.body:
            inertia.mass: 4453
            kinematics.local_cm_transform.position: {2.005, 0 , 0.15}

    # Currently the upscaling of the cargo bed mass with respect to payload, does
    # not alter the vertical CoM , only the longitudnal CoM.
    cargo_bed.body:
        inertia.mass:    4523 + this.payload
        kinematics.local_cm_transform.position: {-1.002, 0.000, 0.200} - payload*{2.100e-5, 0, 0}


    front_wheel_axle.body.inertia.mass:  1569
    rear_wheel_axle_1.body.inertia.mass: 2131
    rear_wheel_axle_2.body.inertia.mass: 1425

    front_axle_connection:
        left_suspension.actuator.barrel.body.inertia.mass:  48
        left_suspension.actuator.rod.body.inertia.mass:     48
        right_suspension.actuator.barrel.body.inertia.mass: 48
        right_suspension.actuator.rod.body.inertia.mass:    48

    rear_axle_connection:
        left_equalizer.body.inertia.mass:  200
        right_equalizer.body.inertia.mass: 200

        left_suspension.actuator.barrel.body.inertia.mass:  31.5
        left_suspension.actuator.rod.body.inertia.mass:     31.5
        right_suspension.actuator.barrel.body.inertia.mass: 31.5
        right_suspension.actuator.rod.body.inertia.mass:    31.5

    cargo_bed_connection:
        left_lift.actuator.barrel.body.inertia.mass:  150
        left_lift.actuator.rod.body.inertia.mass:     150
        right_lift.actuator.barrel.body.inertia.mass: 150
        right_lift.actuator.rod.body.inertia.mass:    150
