Campaign: quan_loncar_meep_lab/device23_freeform_qv¶
Assembled 2026-09-05 15:02 UTC.
Engine: quan_loncar_meep_lab · path: engines/quan_loncar_meep_lab/campaigns/device23_freeform_qv/
campaign.yaml¶
# Device23 freeform level-set optimization with a hard feedthrough gate
name: device23_freeform_qv
device: design23_multilayer_nanobeam
seed:
article: benchmarks/design23_20260801/device23_40hole_fdtd_seed.json
source: design23_v1 step-6 coherent Tidy3D diagnostic
initial_two_port_te0_beta: 0.8786034383306999
phase: coupling_restoration_until_feasible
engine:
id: quan_loncar_meep_lab
backend: ngsolve_hcurl_fem
numerical_fidelity: pending_pole_channel_pair_certification
pole_candidate: device23_p1p5_pml2_cavity2_x1p4
channel_candidate: device23_channel_p1_full_y
numerical_claim: launch blocked until the explicit pole/channel pair passes
pole_certificate:
tool: tools/certify_device23_pole.py
admission_scope: pole_only
auto_promotes_production_whitelist: false
expected_fidelity: device23_p1p5_pml2_cavity2_x1p4
settled_field_sha256: 430d03f29526ef311c99933d8834663b2f0e169cd8cb6001ca34b2aaac4b8e2c
aperture_sample_count: 48
aperture_samples_per_smoothing_length: 0.0
selection_metric: device23_monitor_ey_amplitude_ratio
selector_provenance: fresh process using stack_space.device23_ey_monitor_localization
minimum_ey_monitor_localization: 0.55
maximum_relative_residual: 1.0e-8
seed_wavelength_nm: 770.0296688
maximum_seed_wavelength_relative_error: 0.02
require_finite_positive_quality_factor: true
seed_quality_factor: 1113.0025
minimum_seed_quality_ratio: 0.5
maximum_seed_quality_ratio: 2.0
objective:
type: maximize
formula: "log(Q / V)"
quality_factor: loaded_complex_pole_Q
mode_volume: normalized_emitter_mode_volume
constraints:
feedthrough_total_guided_minimum: 0.95
forward_guided_minimum: 0.475
backward_guided_minimum: 0.475
symmetry_reduced_direction_minimum: 0.475
symmetry_factor: 2
radiation_maximum: 0.05
require_feedthrough_mode_certificate: true
forbidden_proxy: unprojected_x_pml_absorption
minimum_feature_nm: 70.0
minimum_ey_monitor_localization: 0.55
notes: >
total_guided_fraction is the sum of both feedthrough directions divided by
total emitted power. In an exactly symmetric half-domain the resolved
direction must exceed 0.475 and is multiplied by two for the full-device
total. A full-domain result must exceed 0.475 in both directions. The
factor-of-two reconstruction is invalid unless source normalization and
symmetry controls pass.
optimizer:
representation: regularized_level_set
step_control: trust_region_with_physical_resolve
acceptance: "Q/V improves and every hard physical gate passes"
robustness:
objective: worst_case_Q_over_V
minimum_corners: [nominal, erode_3nm, dilate_3nm]
require_physical_resolve: true
telemetry:
schema_version: 2
path: dashboard/live.json
public_url: "https://qluster.157.173.197.248.sslip.io/cavitygrad/hub/"
active_run_url: "https://qluster.157.173.197.248.sslip.io/cavitygrad/hub/runs/20260802T040105Z_device23_freeform_qv/dashboard/"
publish_command: "python tools/publish_hub.py --watch --interval 5"
docs:
campaign: README.md
telemetry: docs/live/hub.md
README¶
Device23 freeform Q/V campaign¶
This campaign maximizes the loaded complex-pole Q / V of Device23 with a
freeform, regularized level-set boundary. Coupling to the feedthrough
waveguide is a hard physical gate, not a soft reward:
The launch input is the repo's physically validated 40-hole Device23 step-6 article at 770.03 nm, not the unrelated 1550 nm uniform mirror used to bring up the layered solver. Its Tidy3D controls measured Q=1113.0, normalized anthracene-emitter V=6.1802, and two-port fundamental-TE coupling=87.86%. Consequently the first phase restores the measured hard coupling constraint; only after feasibility does the controller accept measured Q/V improvements. The exact supplied 84-hole, 795.69 nm Device23 remains a checked lineage control, while the shorter seed keeps this first free-form campaign within the requested approximately 5 µm design scale.
For an exactly symmetric cavity evaluated in a half-domain,
Gamma_+ / Gamma_total > 0.475 is the equivalent one-direction gate. The
publisher reconstructs the full total only when the telemetry explicitly sets
symmetry_reduced: true and symmetry_factor: 2.
A full-domain measurement must independently place both directional fractions
above 47.5%; a total above 95% does not excuse a failed or missing direction.
Acceptance contract¶
A step is accepted only after a fresh physical solve establishes all of the following:
- the intended passive pole branch was tracked;
- loaded
Q / Vimproved at the acceptance fidelity; - total guided coupling exceeds 95% and both measured directions exceed 47.5% (or the symmetry-qualified resolved direction exceeds 47.5%);
- nominal, 3 nm eroded, and 3 nm dilated corners satisfy the configured robustness policy;
- topology regularization, minimum-feature, and connected-component checks pass.
The tracked cavity branch must also retain the historical Device23 Ey-monitor
localization above 0.55. This compatibility metric compares the largest
|Ey| at x = 0, 0.05, 0.10 um with the largest value at
x = 1.8, 3.5 um; it is a branch-selection diagnostic, not an energy or
coupling fraction.
The minimum feature is 70 nm. The FDTD-validated 40-hole Device23 seed has a 77.7 nm minimum void diameter before the stated 12 nm wall filter, so an 80 nm floor would reject the seed itself and make every small trust step impossible.
Rejected steps remain in history with their reason and do not replace the
incumbent. First-order predictions may screen proposals but never populate
the measured Q, V, coupling, or robustness fields.
Launch seed¶
The campaign starts from
benchmarks/design23_20260801/device23_40hole_fdtd_seed.json, the exact
symmetric step-6 geometry from the prior Device23 Tidy3D campaign. Its
validated baseline is Q = 1,113.003, anthracene-normalized V = 6.180184, and
two-port TE0 beta = 0.878603 (0.886978 by the independent Q cross-check).
Because beta is below 0.95, iteration zero is explicitly infeasible and the
controller begins in coupling-restoration mode. The inherited 1550 nm
undercut_mirror.json is a stack control with no cavity defect and must not be
used as the Device23 launch seed. Geometry and stack lineage are recorded in
the seed note.
The named device23_pilot_p1 setting is a mesh-scaling diagnostic, not a
launch fidelity. On the repaired solver it lands 0.13% from the FDTD
resonance but returns Q = 48.88, which is 0.044 of the reference, with
localization 0.367 below the 0.55 branch gate. Order one does not resolve
this article's loss. The selective device23_p1p5_pml2_cavity2_x1p4
fidelity does, and it holds the pole certificate. The economical full-y
driven candidate device23_channel_p1_full_y has a 1,252,734-degree seed
mesh under a pinned 1.35 million ceiling, and is rejected: it is order
one throughout, so it inherits exactly the discretization the pilot was
rejected for, and its driven fields feed the two ports of an exactly
symmetric cavity unequally by 30% at curvature_safety 0.6 and 77% at
1.4. tools/device23_production_settings.py refuses it by name with that
evidence. No replacement channel fidelity is qualified yet; see the
channel section
below.
Once a pole/channel pair is promoted, both complete numerical dataclasses
are pinned in each run's config.json, so a supervisor restart cannot
silently change either fidelity.
Eight Arnoldi candidates do not converge a pole on this article, and the
pilot's dataclass asks for eight. That default has stopped three separate
runs. Anything driving the layered pole here should request sixteen, and
the channel evaluator should be handed the certified pole through
tracked_pole rather than solving its own with channel settings.
Solver repair, 2026-08-02¶
Every Device23 pole solved before this date went through a layered y = 0
mirror that was PEC over the cladding and an unnamed free boundary through
the beam core -- 0.4876 of 6.7614 um^2, the core's own cross-section. It
scattered the mode where the field is largest, so the loss it reported was
largely its own. Face names had been assigned to the outer box before the
booleans that split it; they are now assigned by position on the glued
shape, and test_the_symmetry_plane_is_entirely_pec pins it.
The layered pole now reproduces the engine's certified membrane pole to 0.003% in wavelength and 0.5% in Q, which it had never been asked to do before. On Device23 the selective fidelity moved from 779.431 nm at Q = 52.94 to 756.734 nm at Q = 1,640.62 against the FDTD reference of 770.030 nm at Q = 1,113.00.
Two cautions carry forward. Q is 1.47x the reference, inside the certificate's deliberately broad window but not a converged agreement, and the order-one pilot returns 48.88 at the same repair, so the fidelity ladder spans a factor of 34. A convergence study on the repaired solver is still owed, and every point of the earlier one is invalid. The full record is in the control note.
Pole certificate gate¶
tools/certify_device23_pole.py evaluates a completed run_stack_pole.py
JSON without rerunning any Maxwell physics. The campaign certificate accepts
only the named device23_p1p5_pml2_cavity2_x1p4 fidelity on the exact audited
settled-field hash 430d03f29526ef311c99933d8834663b2f0e169cd8cb6001ca34b2aaac4b8e2c,
with fixed-48 aperture sampling and the adaptive multiplier exactly zero. The
selection metric and provenance must identify the current Device23 Ey-monitor
selector, its localization must be at least 0.55, and the relative residual
must be no larger than 1e-8.
The real pole wavelength must lie within 2% of the validated 770.0296688 nm seed branch and Q must be finite and positive. As a deliberately broad pilot fidelity check, Q must also lie between 0.5 and 2.0 times the validated seed Q=1113.0025. This is a branch/fidelity sanity window, not an optimization target and not a claim that the local solver reproduces FDTD to high accuracy.
The tool prints a JSON decision containing every gate and every failure reason;
it exits nonzero on failure and can atomically write the same result with
--output. A pass has admission_scope: pole_only, leaves
production_whitelist_modified: false, and does not promote the fidelity
pair in tools/device23_production_settings.py. Channel certification,
resource checks, and an explicit whitelist review remain separate launch gates.
PYTHONPATH=engines/quan_loncar_meep_lab/package/quan_meep/src \
python engines/quan_loncar_meep_lab/tools/certify_device23_pole.py \
POLE_ARTIFACT.json --output POLE_CERTIFICATE.json
The certified pole's Q is not converged¶
The convergence study owed since the mirror repair has been rerun on the
repaired solver, against the certified fidelity, varying curvature_safety:
| curvature_safety | dof | lambda (nm) | Q | localization | residual |
|---|---|---|---|---|---|
| 1.0 | 394,645 | 753.962 | 1461.283 | 0.693 | 2.1e-09 |
| 1.4 | 641,209 | 755.608 | 1885.692 | 0.701 | 2.0e-10 |
| 2.0 | 1,004,130 | 756.734 | 1640.617 | 0.702 | 3.6e-12 |
Q moves non-monotonically over a 1.29x range while the relative residual
is 1e-9 or better, sixteen candidates converge, and localization stays flat,
so the same branch is tracked throughout and the variation is the mesh's,
not the solver's. Q = 1640.617 is therefore one sample of an unconverged
family spanning 1461 to 1886, all 1.31x to 1.69x the validated 1113.003, and
must not be quoted as the device's Q.
The wavelength behaves much better: monotone, 0.368% spread, converging toward the reference from below -- but still 1.73% to 2.09% short of 770.0297 nm, so the coarsest point above would fail the certificate's own 2% wavelength gate.
The pole certificate stands exactly as written. Its Q gate is 0.5x to 2.0x
wide and is documented as a branch and fidelity sanity window rather than an
accuracy claim; this ladder is the measurement that caveat was reserving
room for. curvature_safety 2.4 was queued and did not complete.
The coupling gate is open, and the cause has moved¶
The campaign's hard constraint is not measured. Five local driven solves of
the seed span beta_guided 0.0030 to 0.0259 against the validated 0.878603,
rise monotonically with the mesh with no plateau, and each is a correct
measurement of its own mesh rather than of the seed:
| fidelity | cav. order | cs | driven dof | drive | beta_guided |
|---|---|---|---|---|---|
device23_channel_p1_full_y |
1 | 0.6 | 284,818 | matched, 763.836 nm | 0.002984 |
device23_channel_p1_full_y |
1 | 1.0 | 540,712 | matched, 768.764 nm | 0.005636 |
device23_channel_p1_full_y |
1 | 0.6 | 284,818 | pole, 756.734 nm | 0.004389 |
device23_p1p5_pml2_cavity2_x1p4 |
2 | 0.4 | 269,652 | pole, 756.734 nm | 0.009474 |
device23_channel_p1_full_y |
1 | 1.0 | 540,712 | pole, 756.734 nm | 0.015129 |
device23_channel_p1_full_y |
1 | 1.4 | 836,340 | pole, 756.734 nm | 0.025930 |
device23_p1p5_pml2_cavity2_x1p4 |
2 | 1.0 | 848,748 | pole, 756.734 nm | 0.043544 |
Fitted against the degree count the order-one family gives beta ~ dof^1.65
and the selective-order family beta ~ dof^1.33. Order two sits 1.6x to 2.4x
above order one at matched cost and keeps the two ports symmetric to a few
percent where order one wanders from 15% to 77% -- both real improvements,
neither a plateau. Continuing the selective fit to the validated 0.878603
needs 9.6x more unknowns, about 8.1 million driven degrees of freedom;
the 848,748-unknown solve already peaked at 38.9 GiB on a 45 GiB machine.
That figure is a floor, not an estimate: the order-one family's local
exponent falls from 1.930 to 1.235 across its three points, so a single
power law does not describe it, and the two-point selective fit cannot show
that curvature at all. A decaying exponent either raises the requirement
(9.6 M unknowns at 1.24, 127 M at 0.6) or signals a plateau whose value
these points do not constrain.
Order does not rescue the measurement and refinement cannot reach it here.
The next rung, curvature_safety 1.4, meshes to 1,329,929 driven unknowns
and was stopped before its factorization by operator decision rather than
observed to fail; on the measured scaling it needs about 76 GiB against a
40 GiB cap, so that ceiling is an extrapolation from a measured point.
feedthrough_qualified is true throughout, so the port certificate is not
what refuses. Four explanations have been tested and refuted:
- A divergent point-source self-energy in the denominator. Refuted by
sign --
betarises under refinement -- and by inspection: the denominator is the imaginary part of the dipole work, the radiated power, which never carried the divergent real part. - Another unnamed boundary in the full-y driven path. Audited clean; every exterior face is named and full-y areas are exactly twice half-y.
- Detuning between the drive and the driven mesh's own resonance.
--match-pole-fidelitysets it to zero. Driving thecurvature_safety0.6 mesh at its own 763.836 nm resonance gives 0.002984, lower than the 0.004389 obtained 7.10 nm off resonance. - A cavity-Q-limited coupling. From
curvature_safety0.6 to 1.0 the driven mesh's own Q rises 8.8%, 59.958 to 65.215, whilebetarises 245%.betais not a function of the mesh's Q.
What survives is that the suppression lies in the transport from the cavity to the port rather than in the cavity's loss budget. The leading candidate -- untested -- is Bragg transmission through the seed's twenty mirror pairs, which is exponential in the period count and so exponentially sensitive to the mesh, while Q is barely sensitive at all. It would also explain the certified pole sitting at Q 1640.617 against the FDTD 1113.003, 47% high and in the direction under-transmission predicts. The test is the mirror unit cell's Bloch transmission per period versus mesh against the band solver, which is far smaller than either measurement it would explain.
Until that is settled, no local coupling number may be compared to the 95% gate, and the optimizer stays unlaunched. Full record in the control note.
Native feedthrough-mode certificate¶
The exact 770.029669 nm launch lead now has a passing local layered-port
certificate. A full-y/full-z vector Yee solve used the independent deep
two-dimensional port box (0.6 um lateral padding and 1.0 um vertical padding),
24 beta samples, and 30 eigenpairs. The 25/um result and its independent
20/um grid control both enumerate six localized branches. The selected TE0
branch has n_eff = 1.778786891, 90.967% Ey electric energy, 94.880% ridge
energy, and only 5.10e-5 boundary energy. Its beta changes by 1.91899%
between the two grids, below the pinned 2% gate. Reciprocity self error is
4.44e-16, opposite-direction leakage is 4.30e-17, and the largest overlap
with another resolved branch is 2.57e-10.
The deep port box is not sampled inside the three-dimensional PML. The TE0
functional is cropped to the pilot's physical cross-section,
y = +/-0.778131826 um and z = [-1.05, 1.15] um, then renormalized. The
crop retains self-overlap 0.999913692 and omits 8.63e-5, below the pinned
1e-3 fail-closed gate. Several weak near-substrate-light-line unwanted
branches still carry appreciable energy at the deep box boundary. That is
recorded as a nonfatal completeness warning: they are never included in the
TE0 numerator, while the physical full-y dipole-work denominator already
counts their power as unwanted. Target boundary convergence, stable branch
count, beta convergence, reciprocity, and physical-window cropping remain hard
failures.
The machine-readable evidence is
benchmarks/design23_20260801/device23_770_layered_port_control.json. This
certifies the TE0 measurement functional, not the seed's 95% cavity coupling;
the historical seed remains at beta 0.878603 and still starts in restoration
mode. It also does not clear the separate complex-pole fidelity gate.
Run and publish¶
Launch the persistent optimizer and local hub publisher together:
engines/quan_loncar_meep_lab/tools/launch_device23_optimizer.sh \
--settings POLE_FIDELITY \
--channel-settings CHANNEL_FIDELITY
This command is intentionally unavailable without a certified explicit
--settings/--channel-settings pair while the fidelity qualification above
is open.
The launcher prints the run directory and the optimization and publisher
supervisor process IDs. The supervisors restart failed processes after a short
backoff; the optimizer resumes against the last atomic checkpoint and exits
normally only when the campaign reaches its iteration limit or convergence
condition. It refuses to
start physical optimization until the layered channel evaluator provides a
certified fundamental-feedthrough modal projection; raw x-PML exit absorption
can be used for diagnostics but cannot pass the 95% gate. To resume a stopped
run, invoke tools/run_device23_optimizer.py against that same run directory;
the field hash, pole branch, Q/V, and coupling are revalidated first.
The optimizer writes version-2 dashboard/live.json atomically after each
stage and iteration. The full schema is documented in
the live hub contract. Keep the public mirror
fresh in a separate persistent process:
The active qualification and optimization record is
20260802T040105Z_device23_freeform_qv.
It already exposes the rejected all-order-one control, the passing port
certificate, and the selective-order pole gate; the optimizer will resume in
this same run directory once its fidelity is promoted.
The public host must have a deploy/sync path to this checkout; the local watch
publisher only refreshes the repository's hub/ mirror.