Files
Atomizer/archive
Anto01 eabcc4c3ca 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>
2025-12-29 12:30:59 -05:00
..

Atomizer Archive

This directory contains deprecated/replaced code that is kept for reference and potential rollback.

Structure

archive/
├── extractors/           # Deprecated physics extractors
│   └── zernike_legacy/   # Pre-OPD Zernike extractors
└── README.md

Archive Policy

When replacing functionality:

  1. Move the old file to the appropriate archive subdirectory
  2. Add a header comment noting the archive date and replacement
  3. Update this README with the change

Archived Items

extractors/zernike_legacy/ (2024-12-28)

Replaced by: extract_zernike_opd.py (ZernikeOPDExtractor)

Reason: The OPD method provides more accurate wavefront error calculations by:

  • Using optical path difference (OPD) directly instead of surface displacement
  • Proper handling of relative subcase comparisons
  • Better numerical stability for high-order Zernike modes

Archived files:

File Original Class Description
extract_zernike.py ZernikeExtractor Original displacement-based Zernike
extract_zernike_surface.py ZernikeSurfaceExtractor Surface-normal projection variant
extract_zernike_figure.py ZernikeFigureExtractor Figure error variant

To restore: Copy files back to optimization_engine/extractors/ and update __init__.py