refactor: Major reorganization of optimization_engine module structure

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>
This commit is contained in:
2025-12-29 12:30:59 -05:00
parent 82f36689b7
commit eabcc4c3ca
120 changed files with 1127 additions and 637 deletions

View File

@@ -0,0 +1,43 @@
"""
Configuration Management
========================
Configuration loading, validation, and building.
Modules:
- manager: ConfigManager for loading/saving configs
- builder: OptimizationConfigBuilder for creating configs
- setup_wizard: Interactive configuration setup
- capability_matcher: Match capabilities to requirements
"""
# Lazy imports to avoid circular dependencies
def __getattr__(name):
if name == 'ConfigManager':
from .manager import ConfigManager
return ConfigManager
elif name == 'ConfigValidationError':
from .manager import ConfigValidationError
return ConfigValidationError
elif name == 'OptimizationConfigBuilder':
from .builder import OptimizationConfigBuilder
return OptimizationConfigBuilder
elif name == 'SetupWizard':
from .setup_wizard import SetupWizard
return SetupWizard
elif name == 'CapabilityMatcher':
from .capability_matcher import CapabilityMatcher
return CapabilityMatcher
elif name == 'TemplateLoader':
from .template_loader import TemplateLoader
return TemplateLoader
raise AttributeError(f"module 'optimization_engine.config' has no attribute '{name}'")
__all__ = [
'ConfigManager',
'ConfigValidationError',
'OptimizationConfigBuilder',
'SetupWizard',
'CapabilityMatcher',
'TemplateLoader',
]