Upload README.md with huggingface_hub
Browse files
README.md
CHANGED
|
@@ -15,9 +15,9 @@ library_name: pytorch
|
|
| 15 |
|
| 16 |
A physics-embedded flow-matching neural surrogate that replaces FDTD for full-field
|
| 17 |
electromagnetic prediction of silicon photonic devices. Given a permittivity map
|
| 18 |
-
|
| 19 |
-
|
| 20 |
-
|
| 21 |
|
| 22 |
This repo hosts the **FM + phase + residual** checkpoint from epoch 300 (the headline
|
| 23 |
model from the paper). All training code, dataset-generation tooling, and inference
|
|
@@ -57,20 +57,21 @@ in the GitHub repo.
|
|
| 57 |
|
| 58 |
## Model
|
| 59 |
|
| 60 |
-
- **Architecture**: real-valued U-Net, 63.3M parameters. Real and imaginary
|
| 61 |
-
separate input channels; permittivity and source-mask maps
|
| 62 |
-
flow-matching integration time
|
|
|
|
| 63 |
- **Generative framework**: conditional flow matching (Lipman et al., 2023). Inference
|
| 64 |
-
integrates a learned velocity field from Gaussian noise to a physically valid
|
| 65 |
using Euler or Heun ODE steps.
|
| 66 |
-
- **Physics constraint**: masked Helmholtz residual loss
|
| 67 |
-
|
| 68 |
-
|
| 69 |
|
| 70 |
## Training data
|
| 71 |
|
| 72 |
-
- 22,500 Meep FDTD simulations at
|
| 73 |
-
- Three device families:
|
| 74 |
- Latin-hypercube parameter sweeps over geometric variables per family
|
| 75 |
- 18,000 / 2,250 / 2,250 train / val / test split
|
| 76 |
|
|
@@ -81,25 +82,25 @@ ablation runs (FM only, FM+phase, FM+phase+residual).
|
|
| 81 |
|
| 82 |
On the held-out test split (200-step Heun sampler):
|
| 83 |
|
| 84 |
-
| Device family |
|
| 85 |
|---|---|
|
| 86 |
-
|
|
| 87 |
| Y-branch | 2.5% |
|
| 88 |
| Directional coupler | 2.2% |
|
| 89 |
|
| 90 |
Out-of-distribution (same checkpoint, geometries never seen during training):
|
| 91 |
|
| 92 |
-
| Device |
|
| 93 |
|---|---|
|
| 94 |
-
| Aggressive Euler S-bend (tight
|
| 95 |
| Short, steep taper | 4.0% |
|
| 96 |
| Long, wide taper | 3.6% |
|
| 97 |
-
| Cascaded
|
| 98 |
|
| 99 |
Wall clock on a single NVIDIA A100 (fp16 autocast, vs. 16-thread Meep FDTD on the
|
| 100 |
same node):
|
| 101 |
|
| 102 |
-
| Sampler | Wall time | Speedup |
|
| 103 |
|---|---|---|---|
|
| 104 |
| FDTD (reference) | 5.61 s | 1.0× | (reference) |
|
| 105 |
| Euler 100 step | 2.19 s | 2.6× | 1.9% |
|
|
|
|
| 15 |
|
| 16 |
A physics-embedded flow-matching neural surrogate that replaces FDTD for full-field
|
| 17 |
electromagnetic prediction of silicon photonic devices. Given a permittivity map
|
| 18 |
+
ε(x,y), a source-port mask, and a free-space wavelength λ, PIC-Flow generates the
|
| 19 |
+
complex field E_z in a single multi-step ODE integration — typically in well under
|
| 20 |
+
a second on a single A100, vs. seconds-to-minutes for CPU FDTD.
|
| 21 |
|
| 22 |
This repo hosts the **FM + phase + residual** checkpoint from epoch 300 (the headline
|
| 23 |
model from the paper). All training code, dataset-generation tooling, and inference
|
|
|
|
| 57 |
|
| 58 |
## Model
|
| 59 |
|
| 60 |
+
- **Architecture**: real-valued U-Net, 63.3M parameters. Real and imaginary E_z
|
| 61 |
+
components enter as separate input channels; the permittivity and source-mask maps
|
| 62 |
+
are visible at every layer; the flow-matching integration time `t` and the wavelength
|
| 63 |
+
`λ` enter as scalar conditioning inputs.
|
| 64 |
- **Generative framework**: conditional flow matching (Lipman et al., 2023). Inference
|
| 65 |
+
integrates a learned velocity field from Gaussian noise to a physically valid E_z
|
| 66 |
using Euler or Heun ODE steps.
|
| 67 |
+
- **Physics constraint**: masked Helmholtz residual loss `L_res` (PML, source, and
|
| 68 |
+
dielectric-interface pixels excluded), with a per-sample compliance metric
|
| 69 |
+
`ρ_R = sqrt(L_res) × 100%`.
|
| 70 |
|
| 71 |
## Training data
|
| 72 |
|
| 73 |
+
- 22,500 Meep FDTD simulations at λ = 1.55 µm
|
| 74 |
+
- Three device families: 2×2 MMIs, Y-branches, directional couplers (7,500 each)
|
| 75 |
- Latin-hypercube parameter sweeps over geometric variables per family
|
| 76 |
- 18,000 / 2,250 / 2,250 train / val / test split
|
| 77 |
|
|
|
|
| 82 |
|
| 83 |
On the held-out test split (200-step Heun sampler):
|
| 84 |
|
| 85 |
+
| Device family | ρ_R |
|
| 86 |
|---|---|
|
| 87 |
+
| 2×2 MMI | 2.7% |
|
| 88 |
| Y-branch | 2.5% |
|
| 89 |
| Directional coupler | 2.2% |
|
| 90 |
|
| 91 |
Out-of-distribution (same checkpoint, geometries never seen during training):
|
| 92 |
|
| 93 |
+
| Device | ρ_R |
|
| 94 |
|---|---|
|
| 95 |
+
| Aggressive Euler S-bend (tight R, large offset) | 12% |
|
| 96 |
| Short, steep taper | 4.0% |
|
| 97 |
| Long, wide taper | 3.6% |
|
| 98 |
+
| Cascaded 1×3 Y-branch (new device class) | 9.1% |
|
| 99 |
|
| 100 |
Wall clock on a single NVIDIA A100 (fp16 autocast, vs. 16-thread Meep FDTD on the
|
| 101 |
same node):
|
| 102 |
|
| 103 |
+
| Sampler | Wall time | Speedup | ρ_R |
|
| 104 |
|---|---|---|---|
|
| 105 |
| FDTD (reference) | 5.61 s | 1.0× | (reference) |
|
| 106 |
| Euler 100 step | 2.19 s | 2.6× | 1.9% |
|