54 lines
1.2 KiB
JSON
54 lines
1.2 KiB
JSON
|
|
{
|
||
|
|
"hooks": [
|
||
|
|
{
|
||
|
|
"name": "hook_weighted_objective_norm_stress_norm_disp.py",
|
||
|
|
"type": "weighted_objective",
|
||
|
|
"description": "Combine normalized stress (70%) and displacement (30%)",
|
||
|
|
"inputs": [
|
||
|
|
"norm_stress",
|
||
|
|
"norm_disp"
|
||
|
|
],
|
||
|
|
"outputs": [
|
||
|
|
"weighted_objective"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"name": "hook_custom_safety_factor.py",
|
||
|
|
"type": "custom_formula",
|
||
|
|
"description": "Calculate safety factor",
|
||
|
|
"inputs": [
|
||
|
|
"max_stress",
|
||
|
|
"yield_strength"
|
||
|
|
],
|
||
|
|
"outputs": [
|
||
|
|
"safety_factor"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"name": "hook_compare_min_to_avg_ratio.py",
|
||
|
|
"type": "comparison",
|
||
|
|
"description": "Compare min force to average",
|
||
|
|
"inputs": [
|
||
|
|
"min_force",
|
||
|
|
"avg_force"
|
||
|
|
],
|
||
|
|
"outputs": [
|
||
|
|
"min_to_avg_ratio"
|
||
|
|
]
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"name": "hook_constraint_yield_constraint.py",
|
||
|
|
"type": "constraint_check",
|
||
|
|
"description": "Check if stress is below yield",
|
||
|
|
"inputs": [
|
||
|
|
"max_stress",
|
||
|
|
"yield_strength"
|
||
|
|
],
|
||
|
|
"outputs": [
|
||
|
|
"yield_constraint",
|
||
|
|
"yield_constraint_satisfied",
|
||
|
|
"yield_constraint_violation"
|
||
|
|
]
|
||
|
|
}
|
||
|
|
]
|
||
|
|
}
|