flex-rf 0.1.0.dev0__cp313-cp313-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
flex_rf/__init__.py ADDED
@@ -0,0 +1,25 @@
1
+ """flex-rf: standalone RF Python client.
2
+
3
+ Wrapper lane (0.1):
4
+ from flex_rf.tidy3d import TerminalComponentModeler, LumpedPort
5
+ from flex_rf import web
6
+ data = web.run(modeler)
7
+
8
+ This bootstrap package intentionally keeps the top-level surface minimal.
9
+ """
10
+
11
+ from __future__ import annotations
12
+
13
+ from importlib.metadata import PackageNotFoundError, version as package_version
14
+
15
+ from . import web
16
+
17
+ try:
18
+ from .extension import __version__
19
+ except ImportError:
20
+ try:
21
+ __version__ = package_version("flex-rf")
22
+ except PackageNotFoundError:
23
+ __version__ = "0.0.0"
24
+
25
+ __all__ = ["web", "__version__"]
Binary file
flex_rf/py.typed ADDED
File without changes
@@ -0,0 +1,55 @@
1
+ """flex_rf.tidy3d — wrapper-phase compatibility imports for RF workflows.
2
+
3
+ Usage:
4
+ from flex_rf.tidy3d import (
5
+ TerminalComponentModeler,
6
+ LumpedPort,
7
+ Simulation,
8
+ Structure,
9
+ Medium,
10
+ LossyMetalMedium,
11
+ )
12
+
13
+ This namespace re-exports everything from ``tidy3d.rf`` plus a small set of
14
+ supporting root ``tidy3d`` types needed by the bootstrap wrapper workflow.
15
+ """
16
+
17
+ from __future__ import annotations
18
+
19
+ from tidy3d.rf import *
20
+ from tidy3d.rf import __all__ as _rf_all
21
+ from tidy3d import (
22
+ Boundary,
23
+ BoundarySpec,
24
+ Box,
25
+ GridSpec,
26
+ LossyMetalMedium,
27
+ Medium,
28
+ ModeSpec,
29
+ PEC,
30
+ PML,
31
+ Simulation,
32
+ Structure,
33
+ material_library,
34
+ )
35
+ from tidy3d.components.dispersion_fitter import constant_loss_tangent_model
36
+ from tidy3d.plugins.mode import ModeSolver
37
+
38
+ _extra_all = [
39
+ "Boundary",
40
+ "BoundarySpec",
41
+ "Box",
42
+ "GridSpec",
43
+ "LossyMetalMedium",
44
+ "Medium",
45
+ "ModeSpec",
46
+ "ModeSolver",
47
+ "PEC",
48
+ "PML",
49
+ "Simulation",
50
+ "Structure",
51
+ "constant_loss_tangent_model",
52
+ "material_library",
53
+ ]
54
+
55
+ __all__ = list(dict.fromkeys([*_rf_all, *_extra_all]))
flex_rf/web.py ADDED
@@ -0,0 +1,17 @@
1
+ """flex_rf.web — minimal execution facade for wrapper-phase RF workflows."""
2
+
3
+ from __future__ import annotations
4
+
5
+ import importlib
6
+ from typing import Any
7
+
8
+
9
+ def run(simulation: Any, *args: Any, **kwargs: Any) -> Any:
10
+ """Delegate wrapped execution to ``tidy3d.web.run`` lazily."""
11
+
12
+ tidy3d_web = importlib.import_module("tidy3d.web")
13
+
14
+ return tidy3d_web.run(simulation, *args, **kwargs)
15
+
16
+
17
+ __all__ = ["run"]
@@ -0,0 +1,85 @@
1
+ Metadata-Version: 2.2
2
+ Name: flex-rf
3
+ Version: 0.1.0.dev0
4
+ Summary: Bootstrap wrapper package for RF workflows built on released tidy3d
5
+ Author-Email: "Flexcompute Inc." <support@flexcompute.com>
6
+ Project-URL: homepage, https://www.flexcompute.com/
7
+ Requires-Python: <3.15,>=3.11
8
+ Requires-Dist: tidy3d<2.12,>=2.10.2
9
+ Description-Content-Type: text/markdown
10
+
11
+ # flex-rf
12
+
13
+ Bootstrap wrapper package for the initial `flex-rf` Python client, built on
14
+ top of released `tidy3d`.
15
+
16
+ This package is intentionally narrow. The supported bootstrap surface is:
17
+
18
+ - `flex_rf.tidy3d`: wrapper-phase compatibility namespace built on top of `tidy3d`
19
+ - `flex_rf.web.run(...)`: minimal execution facade for wrapped workflows
20
+
21
+ Top-level `flex_rf` stays minimal so it does not block the future RF-native API.
22
+
23
+ ## Usage
24
+
25
+ ```python
26
+ import flex_rf.tidy3d as rf
27
+ from flex_rf import web
28
+
29
+ sim = rf.Simulation(
30
+ size=(20e-3, 10e-3, 5e-3),
31
+ structures=[
32
+ rf.Structure(
33
+ geometry=rf.Box(center=(0, 0, 0), size=(10e-3, 1e-3, 35e-6)),
34
+ medium=rf.Medium(permittivity=4.4),
35
+ )
36
+ ],
37
+ boundary_spec=rf.BoundarySpec.all_sides(rf.PML()),
38
+ )
39
+
40
+ modeler = rf.TerminalComponentModeler(
41
+ simulation=sim,
42
+ ports=[rf.LumpedPort(name="p1")],
43
+ freqs=[1e9, 5e9, 10e9],
44
+ )
45
+
46
+ data = web.run(modeler)
47
+ ```
48
+
49
+ ## Notes
50
+
51
+ - This is the pure wrapper bootstrap, not the RF-native API.
52
+ - The package also carries the in-progress C++/Python build scaffolding from the
53
+ RF template branch so that native components can be added without reworking
54
+ the package layout later.
55
+ - The package currently tracks a tested `tidy3d` compatibility range rather than
56
+ promising support for every future release automatically.
57
+ - Broader web lifecycle helpers can be added later once the bootstrap contract is stable.
58
+ - The compatibility namespace currently includes `tidy3d.rf` plus a small set of supporting root `tidy3d` types needed for basic wrapped RF workflows.
59
+
60
+ ## Build
61
+
62
+ Requires CMake 3.26+, a C++17 compiler, and Python 3.11+.
63
+
64
+ ```sh
65
+ # Build a wheel
66
+ uv build --wheel
67
+
68
+ # Or install the package in the current environment
69
+ uv pip install .
70
+ ```
71
+
72
+ ## Development
73
+
74
+ This scaffold intentionally keeps development workflows minimal:
75
+
76
+ ```sh
77
+ # Sync the project and dev dependencies
78
+ uv sync --frozen
79
+
80
+ # Run the wrapper pytest coverage
81
+ just test
82
+ ```
83
+
84
+ The package-local `justfile` keeps the bootstrap build/test flow aligned with
85
+ the existing PhotonForge and Tidy3D Extras package workflows.
@@ -0,0 +1,8 @@
1
+ flex_rf/__init__.py,sha256=9ldILhi1geppp1lNojB3HLwFG9niX4y0S5IqUEscpHY,621
2
+ flex_rf/extension.cp313-win_amd64.pyd,sha256=P89AJkkBm_H3EwdWsSIxMMVzqV-yG8YY102Ag79Vpu4,11264
3
+ flex_rf/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
+ flex_rf/tidy3d/__init__.py,sha256=l7Tg1ZxjwnjEoh53Mjnt-XVVPiYXNB6IfmGTzY3S_YM,1157
5
+ flex_rf/web.py,sha256=lhNVvpKOEm9xuLfEtq5vCFoVaLJbXnnOOplJKtiYNZ4,417
6
+ flex_rf-0.1.0.dev0.dist-info/METADATA,sha256=IHaKCtb-e70mqfYuxGzh6VqMVjqVHuph1crZPBEHBJw,2456
7
+ flex_rf-0.1.0.dev0.dist-info/WHEEL,sha256=UZrbbE4r80xj7Ncfa6JoeTVe-77bdXLkKUA63V8pKWQ,106
8
+ flex_rf-0.1.0.dev0.dist-info/RECORD,,
@@ -0,0 +1,5 @@
1
+ Wheel-Version: 1.0
2
+ Generator: scikit-build-core 0.12.2
3
+ Root-Is-Purelib: false
4
+ Tag: cp313-cp313-win_amd64
5
+