-
Notifications
You must be signed in to change notification settings - Fork 61
📡 RF modular restructure v1 #2567
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
base: develop
Are you sure you want to change the base?
Conversation
ebb1315
to
e1de4c7
Compare
bc3751e
to
8f478bd
Compare
46e6015
to
0caf92f
Compare
09d1e4a
to
7e2c693
Compare
d35a9a3
to
978c5cc
Compare
9c34ca6
to
122bab6
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
35 files reviewed, 4 comments
Edit PR Review Bot Settings | Greptile
tidy3d/plugins/microwave/__init__.py
Outdated
AxisAlignedPathIntegral, | ||
CurrentIntegralAxisAligned, | ||
VoltageIntegralAxisAligned, | ||
) | ||
from .rf_material_library import rf_material_library | ||
from tidy3d.components.microwave.rf_material_library import rf_material_library | ||
from tidy3d.microwave.lobe_measurer import LobeMeasurer |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
logic: Inconsistent module placement - LobeMeasurer is imported from tidy3d.microwave while all other components are moved to tidy3d.components.microwave. This breaks the modularization pattern.
from .component_modelers.modal import ComponentModeler | ||
from .ports.modal import Port | ||
from tidy3d.components.microwave.component_modelers.modal import ComponentModeler | ||
from tidy3d.components.microwave.ports.modal import Port | ||
|
||
__all__ = ["ComponentModeler", "Port"] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
style: Add explicit version deprecation warning using warnings.warn to notify users about future path changes
__all__ = ["ComponentModeler", "Port"] | |
import warnings | |
warnings.warn( | |
"Importing from tidy3d.plugins.smatrix.smatrix is deprecated and will be removed in a future version. " | |
"Use 'from tidy3d.components.microwave.component_modelers.modal import ComponentModeler' instead.", | |
DeprecationWarning, | |
stacklevel=2, | |
) | |
__all__ = ["ComponentModeler", "Port"] |
tidy3d/plugins/smatrix/__init__.py
Outdated
from tidy3d.components.microwave.component_modelers.modal import ( | ||
AbstractComponentModeler, | ||
ComponentModeler, | ||
ModalPortDataArray, | ||
) | ||
from tidy3d.components.microwave.component_modelers.terminal import TerminalComponentModeler | ||
from tidy3d.components.microwave.data.terminal import PortDataArray, TerminalPortDataArray | ||
from tidy3d.components.microwave.ports.coaxial_lumped import CoaxialLumpedPort | ||
from tidy3d.components.microwave.ports.modal import Port | ||
from tidy3d.components.microwave.ports.rectangular_lumped import LumpedPort | ||
from tidy3d.components.microwave.ports.wave import WavePort |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
style: Consider grouping these imports by type (component modelers, data, ports) using separate import blocks with newlines for better readability
tidy3d/microwave/__init__.py
Outdated
__all__ = [ | ||
"AxisAlignedPathIntegral", | ||
"CurrentIntegralAxisAligned", | ||
"CurrentIntegralTypes", | ||
"CustomCurrentIntegral2D", | ||
"CustomPathIntegral2D", | ||
"CustomVoltageIntegral2D", | ||
"ImpedanceCalculator", | ||
"LobeMeasurer", | ||
"RectangularAntennaArrayCalculator", | ||
"VoltageIntegralAxisAligned", | ||
"VoltageIntegralTypes", | ||
"models", | ||
"path_integrals_from_lumped_element", | ||
"rf_material_library", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
logic: Several symbols listed in all are not imported anywhere in this file (e.g., AxisAlignedPathIntegral, ImpedanceCalculator)
@dmarek-flex it'd be good if we can chat about this at some point |
Diff CoverageDiff: origin/develop...HEAD, staged and unstaged changes
Summary
|
Initial reorganization into physics-domain specific structure what's shared between EM and what is RF specific.
Greptile Summary
Major reorganization of RF-specific functionality into a dedicated microwave module, separating it from the general EM components for better modularity and maintainability.
tidy3d/plugins/smatrix
andtidy3d/plugins/microwave
to a new dedicatedtidy3d/microwave
packagetidy3d/microwave/__init__.py
)