jjquaratiello commited on
Commit
6d07d69
·
verified ·
1 Parent(s): cc4ee90

Upload README.md with huggingface_hub

Browse files
Files changed (1) hide show
  1. README.md +19 -18
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
- $\varepsilon(x,y)$, a source-port mask, and a free-space wavelength $\lambda$, PIC-Flow
19
- generates the complex $E_z$ field in a single multi-step ODE integration — typically
20
- in well under 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,20 +57,21 @@ in the GitHub repo.
57
 
58
  ## Model
59
 
60
- - **Architecture**: real-valued U-Net, 63.3M parameters. Real and imaginary $E_z$ are
61
- separate input channels; permittivity and source-mask maps are visible at every layer;
62
- flow-matching integration time $t$ and wavelength $\lambda$ are scalar conditioning inputs.
 
63
  - **Generative framework**: conditional flow matching (Lipman et al., 2023). Inference
64
- integrates a learned velocity field from Gaussian noise to a physically valid $E_z$
65
  using Euler or Heun ODE steps.
66
- - **Physics constraint**: masked Helmholtz residual loss
67
- $\mathcal{L}_\text{res}$ (PML, source, and dielectric-interface pixels excluded), with
68
- per-sample compliance metric $\rho_R = \sqrt{\mathcal{L}_\text{res}} \times 100\%$.
69
 
70
  ## Training data
71
 
72
- - 22,500 Meep FDTD simulations at $\lambda = 1.55\,\mu$m
73
- - Three device families: $2\times2$ MMIs, Y-branches, directional couplers (7,500 each)
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 | $\rho_R$ |
85
  |---|---|
86
- | $2\times 2$ MMI | 2.7% |
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 | $\rho_R$ |
93
  |---|---|
94
- | Aggressive Euler S-bend (tight $R$, large offset) | 12% |
95
  | Short, steep taper | 4.0% |
96
  | Long, wide taper | 3.6% |
97
- | Cascaded $1\times3$ Y-branch (new device class) | 9.1% |
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 | $\rho_R$ |
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% |