{
    "supplier": "DYNAmore-PDB",
    "product": "WSID",
    "anthropometry": "50M",
    "fineLocation3": "WS",
    "version": "4.0 LHS ribs",
    "body_parts": [
        {
            "component_type": "head",
            "entities": [
                {
                    "entity_type": "node",
                    "id": 10001,
                    "history_title": " accelerometer Head",
                    "iso": "HEAD0000WS",
                    "components": ["ACX", "ACY", "ACZ", "DCX", "DCY", "DCZ", "VEX", "VEY", "VEZ"]
                },
                {
                    "entity_type": "node",
                    "id": 10006,
                    "history_title": " rotational accelerometer Head",
                    "iso": "HEAD0000WS",
                    "components": ["AAX", "AAY", "AAZ", "AVX", "AVY", "AVZ", "ANX", "ANY", "ANZ"]
                },
                {
                    "entity_type": "node",
                    "id": 32198,
                    "name": "Head Offset (for C-NCAP calculation)",
                    "iso": "HEADOFF0WS",
                    "components": ["DSX", "DSY", "DSZ"]
                }
            ]
        },
        {
            "component_type": "neck",
            "entities": [
                {
                    "entity_type": "beam basic",
                    "id": 10000,
                    "history_title": " upper neck load cell",
                    "iso": "NECKUP00WS",
                    "components": ["FOX", "FOY", "FOZ", "MOX", "MOY", "MOZ"]
                },
                {
                    "entity_type": "beam basic",
                    "id": 10001,
                    "history_title": " lower neck load cell",
                    "iso": "NECKLO00WS",
                    "components": ["FOX", "FOY", "FOZ", "MOX", "MOY", "MOZ"]
                }
            ]
        },
        {
            "component_type": "shoulder",
            "entities": [
                {
                    "entity_type": "node",
                    "id": 10010,
                    "history_title": " accelerometer shoulder rib left",
                    "iso": "SHRILE00WS",
                    "components": ["ACX", "ACY", "ACZ"]
                },
                {
                    "entity_type": "node",
                    "id": 10020,
                    "history_title": " accelerometer shoulder rib right",
                    "iso": "SHRIRI00WS",
                    "components": ["ACX", "ACY", "ACZ"]
                },
                {
                    "entity_type": "spring tr",
                    "id": 10030,
                    "iso": "SHRILE00WS",
                    "components": ["DSY"]
                },
                {
                    "entity_type": "spring tr",
                    "id": 10060,
                    "name": "Shoulder Rib Left: Displacement (2D IR-TRACC)",
                    "iso": "SHRILE00WS",
                    "components": ["DS#"]
                },
                {
                    "entity_type": "spring rot",
                    "id": 10050,
                    "name": "Shoulder Rib Left: Rotation (2D IR-TRACC)",
                    "iso": "SHRILE00WS",
                    "components": ["AN#"]
                },
                {
                    "entity_type": "beam basic",
                    "id": 10002,
                    "history_title": " shoulder load cell left",
                    "iso": "SHLDLE00WS",
                    "components": ["FOX", "FOY", "FOZ"]
                },
                {
                    "entity_type": "beam basic",
                    "id": 10003,
                    "history_title": " shoulder load cell right",
                    "iso": "SHLDRI00WS",
                    "components": ["FOX", "FOY", "FOZ"]
                }
            ]
        },
        {
            "component_type": "chest",
            "entities": [
                {
                    "entity_type": "node",
                    "id": 10011,
                    "history_title": " accelerometer upper thorax rib left",
                    "iso": "TRRILE01WS",
                    "components": ["ACX", "ACY", "ACZ"]
                },
                {
                    "entity_type": "node",
                    "id": 10012,
                    "history_title": " accelerometer middle thorax rib left",
                    "iso": "TRRILE02WS",
                    "components": ["ACX", "ACY", "ACZ"]
                },
                {
                    "entity_type": "node",
                    "id": 10013,
                    "history_title": " accelerometer lower thorax rib left",
                    "iso": "TRRILE03WS",
                    "components": ["ACX", "ACY", "ACZ"]
                },
                {
                    "entity_type": "node",
                    "id": 10021,
                    "history_title": " accelerometer upper thorax rib right",
                    "iso": "TRRIRI01WS",
                    "components": ["ACX", "ACY", "ACZ"]
                },
                {
                    "entity_type": "node",
                    "id": 10022,
                    "history_title": " accelerometer middle thorax rib right",
                    "iso": "TRRIRI02WS",
                    "components": ["ACX", "ACY", "ACZ"]
                },
                {
                    "entity_type": "node",
                    "id": 10023,
                    "history_title": " accelerometer lower thorax rib right",
                    "iso": "TRRIRI03WS",
                    "components": ["ACX", "ACY", "ACZ"]
                },
                {
                    "entity_type": "spring tr",
                    "id": 10031,
                    "iso": "TRRILE01WS",
                    "components": ["DSY"]
                },
                {
                    "entity_type": "spring tr",
                    "id": 10032,
                    "iso": "TRRILE02WS",
                    "components": ["DSY"]
                },
                {
                    "entity_type": "spring tr",
                    "id": 10033,
                    "iso": "TRRILE03WS",
                    "components": ["DSY"]
                },
                {
                    "entity_type": "spring tr",
                    "id": 10061,
                    "name": "Thorax Rib Left 01: Displacement (2D IR-TRACC)",
                    "iso": "TRRILE01WS",
                    "components": ["DS#"]
                },
                {
                    "entity_type": "spring tr",
                    "id": 10062,
                    "name": "Thorax Rib Left 02: Displacement (2D IR-TRACC)",
                    "iso": "TRRILE02WS",
                    "components": ["DS#"]
                },
                {
                    "entity_type": "spring tr",
                    "id": 10063,
                    "name": "Thorax Rib Left 03: Displacement (2D IR-TRACC)",
                    "iso": "TRRILE03WS",
                    "components": ["DS#"]
                },
                {
                    "entity_type": "spring rot",
                    "id": 10051,
                    "name": "Thorax Rib Left 01: Rotation (2D IR-TRACC)",
                    "iso": "TRRILE01WS",
                    "components": ["AN#"]
                },
                {
                    "entity_type": "spring rot",
                    "id": 10052,
                    "name": "Thorax Rib Left 02: Rotation (2D IR-TRACC)",
                    "iso": "TRRILE02WS",
                    "components": ["AN#"]
                },
                {
                    "entity_type": "spring rot",
                    "id": 10053,
                    "name": "Thorax Rib Left 03: Rotation (2D IR-TRACC)",
                    "iso": "TRRILE03WS",
                    "components": ["AN#"]
                },
                {
                    "entity_type": "node",
                    "id": 10002,
                    "history_title": " accelerometer T1",
                    "iso": "THSP0100WS",
                    "components": ["ACX", "ACY", "ACZ"]
                },
                {
                    "entity_type": "node",
                    "id": 10003,
                    "history_title": " accelerometer T4",
                    "iso": "THSP040000",
                    "components": ["DCX", "DCY", "DCZ"]
                },
                {
                    "entity_type": "node",
                    "id": 10003,
                    "history_title": " accelerometer T4",
                    "iso": "THSP0400WS",
                    "components": ["ACX", "ACY", "ACZ", "VEX", "VEY", "VEZ"]
                },
                {
                    "entity_type": "node",
                    "id": 10004,
                    "history_title": " accelerometer T12",
                    "iso": "THSP120000",
                    "components": ["DCX", "DCY", "DCZ"]
                },
                {
                    "entity_type": "node",
                    "id": 10004,
                    "history_title": " accelerometer T12",
                    "iso": "THSP1200WS",
                    "components": ["ACX", "ACY", "ACZ", "VEX", "VEY", "VEZ"]
                }
            ]
        },
        {
            "component_type": "abdomen",
            "entities": [
                {
                    "entity_type": "node",
                    "id": 10014,
                    "history_title": " accelerometer upper abdomen rib left",
                    "iso": "ABRILE01WS",
                    "components": ["ACX", "ACY", "ACZ"]
                },
                {
                    "entity_type": "node",
                    "id": 10015,
                    "history_title": " accelerometer lower abdomen rib left",
                    "iso": "ABRILE02WS",
                    "components": ["ACX", "ACY", "ACZ"]
                },
                {
                    "entity_type": "node",
                    "id": 10024,
                    "history_title": " accelerometer upper abdomen rib right",
                    "iso": "ABRIRI01WS",
                    "components": ["ACX", "ACY", "ACZ"]
                },
                {
                    "entity_type": "node",
                    "id": 10025,
                    "history_title": " accelerometer lower abdomen rib right",
                    "iso": "ABRIRI02WS",
                    "components": ["ACX", "ACY", "ACZ"]
                },
                {
                    "entity_type": "spring tr",
                    "id": 10034,
                    "iso": "ABRILE01WS",
                    "components": ["DSY"]
                },
                {
                    "entity_type": "spring tr",
                    "id": 10035,
                    "iso": "ABRILE02WS",
                    "components": ["DSY"]
                },
                {
                    "entity_type": "spring tr",
                    "id": 10064,
                    "name": "Abdominal Rib Left 01: Displacement (2D IR-TRACC)",
                    "iso": "ABRILE01WS",
                    "components": ["DS#"]
                },
                {
                    "entity_type": "spring tr",
                    "id": 10065,
                    "name": "Abdominal Rib Left 02: Displacement (2D IR-TRACC)",
                    "iso": "ABRILE02WS",
                    "components": ["DS#"]
                },
                {
                    "entity_type": "spring rot",
                    "id": 10054,
                    "name": "Abdominal Rib Left 01: Rotation (2D IR-TRACC)",
                    "iso": "ABRILE01WS",
                    "components": ["AN#"]
                },
                {
                    "entity_type": "spring rot",
                    "id": 10055,
                    "name": "Abdominal Rib Left 02: Rotation (2D IR-TRACC)",
                    "iso": "ABRILE02WS",
                    "components": ["AN#"]
                }
            ]
        },
        {
            "component_type": "lumbar",
            "entities": [
                {
                    "entity_type": "beam basic",
                    "id": 10004,
                    "history_title": " lumbar load cell",
                    "iso": "LUSP0000WS",
                    "components": ["FOX", "FOY", "FOZ", "MOX", "MOY", "MOZ"]
                }
            ]
        },
        {
            "component_type": "pelvis",
            "entities": [
                {
                    "entity_type": "node",
                    "id": 10005,
                    "history_title": " acceleration Pelvis",
                    "iso": "PELV0000WS",
                    "components": ["DCX", "DCY", "DCZ", "ACX", "ACY", "ACZ", "VEX", "VEY", "VEZ"]
                },
                {
                    "entity_type": "beam basic",
                    "id": 10005,
                    "history_title": " sacro-iliac load cell left",
                    "iso": "SACRLE00WS",
                    "components": ["FOX", "FOY", "FOZ", "MOX", "MOY", "MOZ"]
                },
                {
                    "entity_type": "beam basic",
                    "id": 10006,
                    "history_title": " sacro-iliac load cell right",
                    "iso": "SACRRI00WS",
                    "components": ["FOX", "FOY", "FOZ", "MOX", "MOY", "MOZ"]
                },
                {
                    "entity_type": "beam basic",
                    "id": 10007,
                    "history_title": " pubic load cell",
                    "iso": "PUBC0000WS",
                    "components": ["FOY"]
                },
                {
                    "entity_type": "beam basic",
                    "id": 10008,
                    "history_title": " femoral neck load cell left",
                    "iso": "FEACLE00WS",
                    "components": ["FOX", "FOY", "FOZ", "MOX", "MOY", "MOZ"]
                },
                {
                    "entity_type": "beam basic",
                    "id": 10009,
                    "history_title": " femoral neck load cell right",
                    "iso": "FEACRI00WS",
                    "components": ["FOX", "FOY", "FOZ", "MOX", "MOY", "MOZ"]
                }
            ]
        },
        {
            "component_type": "femur",
            "entities": [
                {
                    "entity_type": "beam basic",
                    "id": 10010,
                    "history_title": " femur load cell left",
                    "iso": "FEMRLE00WS",
                    "components": ["FOX", "FOY", "FOZ", "MOX", "MOY", "MOZ"]
                },
                {
                    "entity_type": "beam basic",
                    "id": 10011,
                    "history_title": " femur load cell right",
                    "iso": "FEMRRI00WS",
                    "components": ["FOX", "FOY", "FOZ", "MOX", "MOY", "MOZ"]
                }
            ]
        },
        {
            "component_type": "knee",
            "entities": [
                {
                    "entity_type": "beam basic",
                    "id": 10012,
                    "history_title": " outer knee contact load cell left",
                    "iso": "KNEELEOUWS",
                    "components": ["FOY"]
                },
                {
                    "entity_type": "beam basic",
                    "id": 10013,
                    "history_title": " outer knee contact load cell right",
                    "iso": "KNEERIOUWS",
                    "components": ["FOY"]
                },
                {
                    "entity_type": "beam basic",
                    "id": 10014,
                    "history_title": " inner knee contact load cell left",
                    "iso": "KNEELEINWS",
                    "components": ["FOY"]
                },
                {
                    "entity_type": "beam basic",
                    "id": 10015,
                    "history_title": " inner knee contact load cell right",
                    "iso": "KNEERIINWS",
                    "components": ["FOY"]
                },
                {
                    "entity_type": "spring rot",
                    "id": 10040,
                    "iso": "KNEELE00WS",
                    "components": ["ANY"]
                }
            ]
        },
        {
            "component_type": "tibia",
            "entities": [
                {
                    "entity_type": "beam basic",
                    "id": 10016,
                    "history_title": " upper tibia load cell left",
                    "iso": "TIBILEUPWS",
                    "components": ["FOX", "FOY", "FOZ", "MOX", "MOY", "MOZ"]
                },
                {
                    "entity_type": "beam basic",
                    "id": 10017,
                    "history_title": " upper tibia load cell right",
                    "iso": "TIBIRIUPWS",
                    "components": ["FOX", "FOY", "FOZ", "MOX", "MOY", "MOZ"]
                },
                {
                    "entity_type": "beam basic",
                    "id": 10018,
                    "history_title": " lower tibia load cell left",
                    "iso": "TIBILELOWS",
                    "components": ["FOX", "FOY", "FOZ", "MOX", "MOY", "MOZ"]
                },
                {
                    "entity_type": "beam basic",
                    "id": 10019,
                    "history_title": " lower tibia load cell right",
                    "iso": "TIBIRILOWS",
                    "components": ["FOX", "FOY", "FOZ", "MOX", "MOY", "MOZ"]
                }
            ]
        },
        {
            "component_type": "foot",
            "entities": [
                {
                    "entity_type": "spring rot",
                    "id": 10046,
                    "iso": "ANKLLE00WS",
                    "components": ["ANX"]
                },
                {
                    "entity_type": "spring rot",
                    "id": 10044,
                    "iso": "ANKLLE00WS",
                    "components": ["ANY"]
                },
                {
                    "entity_type": "spring rot",
                    "id": 10042,
                    "iso": "ANKLLE00WS",
                    "components": ["ANZ"]
                }
            ]
        }
    ],
    "operations": [
        {
            "comment": "Adding rib initial length",
            "operation": "add",
            "input": ["ABRILE01WSDS#0", 0.1185],
            "output": "ABRILE01WSDC00",
            "iso": true
        },
        {
            "comment": "Subtracting PI/2 for left side rib to make it consitent with hardware",
            "operation": "sub",
            "input": ["ABRILE01WSAN#0", 1.570796],
            "output": "ABRILE01WSANZ0",
            "iso": true
        },
        {
            "comment": "Adding rib initial length",
            "operation": "add",
            "input": ["ABRILE02WSDS#0", 0.1185],
            "output": "ABRILE02WSDC00",
            "iso": true
        },
        {
            "comment": "Subtracting PI/2 for left side rib to make it consitent with hardware",
            "operation": "sub",
            "input": ["ABRILE02WSAN#0", 1.570796],
            "output": "ABRILE02WSANZ0",
            "iso": true
        },
        {
            "comment": "Adding rib initial length",
            "operation": "add",
            "input": ["TRRILE01WSDS#0", 0.1185],
            "output": "TRRILE01WSDC00",
            "iso": true
        },
        {
            "comment": "Subtracting PI/2 for left side rib to make it consitent with hardware",
            "operation": "sub",
            "input": ["TRRILE01WSAN#0", 1.570796],
            "output": "TRRILE01WSANZ0",
            "iso": true
        },
        {
            "comment": "Adding rib initial length",
            "operation": "add",
            "input": ["TRRILE02WSDS#0", 0.1185],
            "output": "TRRILE02WSDC00",
            "iso": true
        },
        {
            "comment": "Subtracting PI/2 for left side rib to make it consitent with hardware",
            "operation": "sub",
            "input": ["TRRILE02WSAN#0", 1.570796],
            "output": "TRRILE02WSANZ0",
            "iso": true
        },
        {
            "comment": "Adding rib initial length",
            "operation": "add",
            "input": ["TRRILE03WSDS#0", 0.1185],
            "output": "TRRILE03WSDC00",
            "iso": true
        },
        {
            "comment": "Subtracting PI/2 for left side rib to make it consitent with hardware",
            "operation": "sub",
            "input": ["TRRILE03WSAN#0", 1.570796],
            "output": "TRRILE03WSANZ0",
            "iso": true
        },
        {
            "comment": "Adding rib initial length",
            "operation": "add",
            "input": ["SHRILE00WSDS#0", 0.1185],
            "output": "SHRILE00WSDC00",
            "iso": true
        },
        {
            "comment": "Flipping sign of shoulder rotation as rotation vector points up but should point down do be consistent with Z axis as defined in SAE-J11. Note IR-TRACC in hardware is also upside down but the angle output will be corrected by post-procesisng in (data aquisition system) DAS to make angle consistent with right hand rule",
            "operation": "mul",
            "input": ["SHRILE00WSAN#0", -1],
            "output": "SHRILE_SAE-J11_rotation",
            "iso": false
        },
        {
            "comment": "Subtracting PI/2 for left side rib to make it consitent with hardware (note IR-TRACC is upside down for shoulder, but angle is corrected before outputting)",
            "operation": "sub",
            "input": ["SHRILE_SAE-J11_rotation", 1.570796],
            "output": "SHRILE00WSANZ0",
            "iso": true
        }
    ]
}
