-
Notifications
You must be signed in to change notification settings - Fork 3
palace api updates #3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Split monolithic PalaceSim (1,231 lines) into focused simulation classes: - SimBase: shared geometry, stack, materials, mesh, preview functionality - DrivenSim: frequency-domain S-parameter extraction - EigenmodeSim: resonance/mode finding (not yet fully implemented) - ElectrostaticSim: capacitance extraction (not yet fully implemented) New models/ submodule with validated Pydantic configs: - DrivenConfig, EigenmodeConfig, ElectrostaticConfig for problem types - PortConfig, CPWPortConfig, TerminalConfig for port definitions - MeshConfig, NumericalConfig, MaterialConfig for simulation settings Key design changes: - No method chaining (mutators return None, not self) - validate_assignment=True for immediate validation on mutation - PalaceSim kept as deprecated backward-compatible wrapper Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Move stack extraction to gsim/common/stack/ for sharing with FDTD - Add gsim/common/geometry.py with Geometry wrapper class - Remove inheritance (delete base.py), use composition instead - Convert dataclasses to Pydantic models for consistency - Remove deprecated PalaceSim class and legacy StackConfig/LayerConfig - Update all imports to use gsim.common.stack directly - Simulation classes (DrivenSim, EigenmodeSim, ElectrostaticSim) are now standalone with geometry: Geometry and stack: LayerStack fields Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add docs/nbs/palace.md with IHP PDK example - Update docs/index.md with new DrivenSim API - Add IHP as docs-only dependency in pyproject.toml - Delete outdated ARCHITECTURE.md - Update docs/nbs/.gitignore to only ignore _* files Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add SICN quality metric to detect invalid/tangled elements - Add min/max edge length statistics - Add physical groups listing with Gmsh tags - Display groups as bullet points for readability Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Pass mesh_stats from MeshResult to SimulationResult - Replace print() with logger.info() for mesh generation - Add mesh_stats field to pipeline MeshResult Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.