BREAKING CHANGE: Module paths have been reorganized for better maintainability. Backwards compatibility aliases with deprecation warnings are provided. New Structure: - core/ - Optimization runners (runner, intelligent_optimizer, etc.) - processors/ - Data processing - surrogates/ - Neural network surrogates - nx/ - NX/Nastran integration (solver, updater, session_manager) - study/ - Study management (creator, wizard, state, reset) - reporting/ - Reports and analysis (visualizer, report_generator) - config/ - Configuration management (manager, builder) - utils/ - Utilities (logger, auto_doc, etc.) - future/ - Research/experimental code Migration: - ~200 import changes across 125 files - All __init__.py files use lazy loading to avoid circular imports - Backwards compatibility layer supports old import paths with warnings - All existing functionality preserved To migrate existing code: OLD: from optimization_engine.nx_solver import NXSolver NEW: from optimization_engine.nx.solver import NXSolver OLD: from optimization_engine.runner import OptimizationRunner NEW: from optimization_engine.core.runner import OptimizationRunner 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
43 lines
1.2 KiB
Python
43 lines
1.2 KiB
Python
#!/usr/bin/env python
|
|
"""
|
|
{STUDY_NAME} - Neural Network Acceleration Script (Simplified)
|
|
================================================================
|
|
|
|
This script uses ConfigDrivenSurrogate for config-driven NN optimization.
|
|
The ~600 lines of boilerplate code is now handled automatically.
|
|
|
|
Workflow:
|
|
---------
|
|
1. First run FEA: python run_optimization.py --run --trials 50
|
|
2. Then run NN: python run_nn_optimization.py --turbo --nn-trials 5000
|
|
|
|
Or combine:
|
|
python run_nn_optimization.py --all
|
|
|
|
Generated by Atomizer StudyWizard
|
|
"""
|
|
|
|
from pathlib import Path
|
|
import sys
|
|
|
|
# Add project root to path
|
|
project_root = Path(__file__).resolve().parents[2]
|
|
sys.path.insert(0, str(project_root))
|
|
|
|
from optimization_engine.processors.surrogates.generic_surrogate import ConfigDrivenSurrogate
|
|
|
|
|
|
def main():
|
|
"""Run neural acceleration using config-driven surrogate."""
|
|
# Create surrogate - all config read from optimization_config.json
|
|
surrogate = ConfigDrivenSurrogate(__file__)
|
|
|
|
# Element type: 'auto' detects from DAT file
|
|
# Override if needed: surrogate.element_type = 'cquad4' (shell) or 'ctetra' (solid)
|
|
|
|
return surrogate.run()
|
|
|
|
|
|
if __name__ == "__main__":
|
|
exit(main())
|