Major changes: - Dashboard: WebSocket-based chat with session management - Dashboard: New chat components (ChatPane, ChatInput, ModeToggle) - Dashboard: Enhanced UI with parallel coordinates chart - MCP Server: New atomizer-tools server for Claude integration - Extractors: Enhanced Zernike OPD extractor - Reports: Improved report generator New studies (configs and scripts only): - M1 Mirror: Cost reduction campaign studies - Simple Beam, Simple Bracket, UAV Arm studies Note: Large iteration data (2_iterations/, best_design_archive/) excluded via .gitignore - kept on local Gitea only. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
115 lines
2.7 KiB
JSON
115 lines
2.7 KiB
JSON
{
|
|
"study_name": "simple_beam_optimization",
|
|
"description": "Test Phase 3.3 post-processing features",
|
|
"substudy_name": "05_test_postprocessing_5trials",
|
|
"design_variables": {
|
|
"beam_half_core_thickness": {
|
|
"type": "continuous",
|
|
"min": 10.0,
|
|
"max": 40.0,
|
|
"baseline": 20.0,
|
|
"units": "mm",
|
|
"description": "Half thickness of beam core"
|
|
},
|
|
"beam_face_thickness": {
|
|
"type": "continuous",
|
|
"min": 10.0,
|
|
"max": 40.0,
|
|
"baseline": 20.0,
|
|
"units": "mm",
|
|
"description": "Thickness of beam face sheets"
|
|
},
|
|
"holes_diameter": {
|
|
"type": "continuous",
|
|
"min": 150.0,
|
|
"max": 450.0,
|
|
"baseline": 300.0,
|
|
"units": "mm",
|
|
"description": "Diameter of lightening holes"
|
|
},
|
|
"hole_count": {
|
|
"type": "integer",
|
|
"min": 5,
|
|
"max": 15,
|
|
"baseline": 10,
|
|
"units": "unitless",
|
|
"description": "Number of lightening holes"
|
|
}
|
|
},
|
|
"extractors": [
|
|
{
|
|
"name": "max_displacement",
|
|
"action": "extract_displacement",
|
|
"description": "Extract maximum displacement from OP2",
|
|
"parameters": {
|
|
"metric": "max"
|
|
}
|
|
},
|
|
{
|
|
"name": "max_stress",
|
|
"action": "extract_solid_stress",
|
|
"description": "Extract maximum von Mises stress from OP2",
|
|
"parameters": {
|
|
"subcase": 1,
|
|
"element_type": "auto"
|
|
}
|
|
},
|
|
{
|
|
"name": "mass",
|
|
"action": "extract_expression",
|
|
"description": "Extract mass from p173 expression",
|
|
"parameters": {
|
|
"expression_name": "p173"
|
|
}
|
|
}
|
|
],
|
|
"objectives": [
|
|
{
|
|
"name": "minimize_displacement",
|
|
"extractor": "max_displacement",
|
|
"goal": "minimize",
|
|
"weight": 0.33,
|
|
"description": "Minimize maximum displacement"
|
|
},
|
|
{
|
|
"name": "minimize_stress",
|
|
"extractor": "max_stress",
|
|
"goal": "minimize",
|
|
"weight": 0.33,
|
|
"description": "Minimize maximum von Mises stress"
|
|
},
|
|
{
|
|
"name": "minimize_mass",
|
|
"extractor": "mass",
|
|
"goal": "minimize",
|
|
"weight": 0.34,
|
|
"description": "Minimize beam mass"
|
|
}
|
|
],
|
|
"constraints": [
|
|
{
|
|
"name": "displacement_limit",
|
|
"extractor": "max_displacement",
|
|
"type": "less_than",
|
|
"value": 10.0,
|
|
"units": "mm",
|
|
"description": "Maximum displacement must be less than 10mm"
|
|
}
|
|
],
|
|
"optimization_settings": {
|
|
"algorithm": "optuna",
|
|
"n_trials": 5,
|
|
"sampler": "TPE",
|
|
"pruner": "HyperbandPruner",
|
|
"direction": "minimize",
|
|
"timeout_per_trial": 600
|
|
},
|
|
"post_processing": {
|
|
"generate_plots": true,
|
|
"plot_formats": ["png", "pdf"],
|
|
"cleanup_models": true,
|
|
"keep_top_n_models": 3,
|
|
"cleanup_dry_run": false
|
|
}
|
|
}
|