Files
Atomizer/studies/uav_arm_optimization/1_setup/workflow_config.json

104 lines
2.6 KiB
JSON
Raw Normal View History

{
"study_name": "drone_gimbal_arm_optimization",
"optimization_request": "Multi-objective: minimize mass + maximize natural frequency, subject to displacement < 1.5mm, stress < 120 MPa, frequency > 150 Hz",
"design_variables": [
{
"parameter": "beam_half_core_thickness",
"bounds": [20, 30],
"description": "Half thickness of beam core in mm"
},
{
"parameter": "beam_face_thickness",
"bounds": [1, 3],
"description": "Thickness of beam face sheets in mm"
},
{
"parameter": "holes_diameter",
"bounds": [180, 280],
"description": "Diameter of lightening holes in mm"
},
{
"parameter": "hole_count",
"bounds": [8, 14],
"description": "Number of lightening holes"
}
],
"objectives": [
{
"name": "mass",
"goal": "minimize",
"weight": 1.0,
"extraction": {
"action": "extract_mass",
"domain": "result_extraction",
"description": "Extract total mass from FEA results",
"params": {
"result_type": "mass",
"metric": "total"
}
}
},
{
"name": "fundamental_frequency",
"goal": "maximize",
"weight": 1.0,
"extraction": {
"action": "extract_frequency",
"domain": "result_extraction",
"description": "Extract first natural frequency from modal analysis",
"params": {
"result_type": "frequency",
"mode_number": 1
}
}
}
],
"constraints": [
{
"name": "max_displacement_limit",
"type": "less_than",
"threshold": 1.5,
"extraction": {
"action": "extract_displacement",
"domain": "result_extraction",
"description": "Extract maximum displacement from FEA results",
"params": {
"result_type": "displacement",
"metric": "max"
}
}
},
{
"name": "max_stress_limit",
"type": "less_than",
"threshold": 120,
"extraction": {
"action": "extract_stress",
"domain": "result_extraction",
"description": "Extract maximum von Mises stress",
"params": {
"result_type": "stress",
"metric": "max_von_mises"
}
}
},
{
"name": "min_frequency_limit",
"type": "greater_than",
"threshold": 150,
"extraction": {
"action": "extract_frequency",
"domain": "result_extraction",
"description": "Extract first natural frequency",
"params": {
"result_type": "frequency",
"mode_number": 1
}
}
}
]
}