遇见数据集

Data, code and supplementary material for: Discrete quality-factor control in a side-coupled photonic crystal microcavity: evanescent Bloch tunnelling and the finite-cell correction

收藏
Zenodo2026-09-29 更新2026-10-01 收录
官方服务:

资源简介:

# Data, code and supplementary material for: Discrete quality-factor control in a side-coupled photonic crystal microcavity: evanescent Bloch tunnelling and the finite-cell correction - **Version:** 3.1.0- **Author:** Hasan Oguz (ORCID 0000-0001-7484-4415), Istanbul Okan University and Pamukkale University- **This record:** https://doi.org/10.5281/zenodo.22912910- **Software:** SPRAT 1.2.1, in this record (`sprat-1.2.1.zip`), maintained at https://github.com/codekyha/sprat- **Licence:** data CC BY 4.0 (LICENSE.txt); the scripts inside raw_legacy.tar.gz MIT; the scripts inside raw_h14b.tar.gz MIT; SPRAT MIT- **Built:** 2026-09-25 with sprat 1.2.1 ## Where the records come from 893 records were produced on the UHeM Altay cluster in 2026 by the scripts of the computational runs: `02_kavite.py` (Meep 1.30.0; with the v4 patch for the verification runs) wrote the harmonic-inversion, spectrum, reference and field-map runs, `01_bant_yapisi.py` (MPB) the band structures and `pwe_v4_feasibility.py` the plane-wave layer. `sprat import-legacy` converted them into the SPRAT record schema: it translates the keys and the coded values (the mode `spektrum` becomes `spectrum`, for example) and stores the name and the SHA-256 of the original file in each record (`provenance.legacy_file`, `provenance.legacy_sha256`). SPRAT converts and analyses the records and can regenerate each of them with Meep. One plane-wave record was computed by the plane-wave layer of SPRAT 1.1.0 (the complex band structure with its physical roots; no Meep). The original files and the scripts that wrote them are in `raw_legacy.tar.gz` and `raw_h14b.tar.gz`. ## Contents | file | content | count ||---|---|---|| records.csv, records.jsonl | one row per record with the validity flags | 894 rows, 858 harmonic inversions || harminv_records.tar.gz | the harmonic-inversion records (JSON, English keys) | 858 files || spectra_records.tar.gz | the transmission spectra and the cavity-less reference runs | 28 files || field_records.tar.gz | the field-map records and their .npz maps | 4 files || bands_records.tar.gz | the band computations and the lattice-constant calibration | 4 files || pwe_records.tar.gz | the plane-wave layer | 2 files || raw_legacy.tar.gz | the unpublished version 2.2.0 of this deposit, byte for byte apart from the changes listed in its CHANGES_FROM_2.2.0.md: the per-run files with Turkish keys as the scripts wrote them, and the scripts of the systematic runs, the verification runs and the analysis. Its README.md gives the data dictionary of the Turkish keys; its own supplementary.pdf, DATA_AVAILABILITY.md and zenodo_metadata.json are superseded by the files of version 3.1.0. | 21 files || raw_h14b.tar.gz | the seven transmission spectra repeated with the guide continued into the absorber and their reference runs (Turkish keys, byte for byte), the job files, the criterion fixed before the runs, its amendment and the grading; its README.md describes them | 53 files || analysis.tar.gz | unpacks to `analysis/`: the outputs of `sprat analyze` and `sprat audit`: ANALYSIS_REPORT.md, AUDIT_REPORT.md, analysis.json, audit.json, counts.json, numbers_registry.json, numbers_registry.md, predictions.json, predictions_report.md, records.csv, records.jsonl, spectra.json, spectra_absorber.json; and `manuscript_registry.json`, the numbers registry of the manuscript: every number quoted in the paper with the record or the derivation behind it, or its literature source | 14 files || predictions.tar.gz | unpacks to `predictions/`: the criteria fixed before the runs, byte for byte, with the English criteria file and a README | 7 files || parameters_manifest.json | every constant of the model, the numerics and the analysis | - || counts.json | the counts of the records, those of the table in DATA_AVAILABILITY.md among them | - || DATA_AVAILABILITY.md | the data availability statement of the paper and the counts of this deposit | - || LICENSE.txt, zenodo_metadata.json | licence, metadata of this record | - || supplementary.pdf | the supplementary document of the paper, also available with the article | - || sprat-1.2.1.zip | the source archive of SPRAT 1.2.1, the software with which the records were converted and analysed (MIT licence); `pip install` it or unpack it and follow its README | - || MANIFEST_sha256.txt | SHA-256 of every file above | - | ## Model Square lattice of silicon rods (r = 0.20a, eps = 11.9025) in an analyte of index n_a; W1 waveguide; point defect of radius r_d at N_sep rows from the guide; TM polarisation; a = 481.4 nm for the 1550 nm target. FDTD: Meep 1.30, resolution 24 in the reference geometry, Courant 0.5, subpixel smoothing, PML one period, mirror symmetry in x when the defect is on the axis. Q by harmonic inversion; the sampling rule sets Q_lim = pi f_cen t and the margin Q_lim/Q, and a record is admitted when the margin is at least 1 and the mode lies between 20 and 80 per cent of the gap (a conservative rule: harmonic inversion resolves decays longer than the signal). ## Record schema (sprat-record-1.0) | key | meaning ||---|---|| `structure.lattice.a_nm, rod_radius, rod_eps` | lattice constant (nm), rod radius (a), rod permittivity || `structure.cell.guide_periods, cladding_rows, pad_x, pad_y, termination_x, absorber_periods` | guide periods n_x, cladding rows per side n_cl, paddings (a), guide termination (pml | absorber), absorber thickness (a) || `structure.defect.radius, row, dx, dy` | defect radius r_d (a), separating rows N_sep, displacement (a) || `structure.rows` | per-row radius overrides {row: radius} || `params.run.mode, tag, q_est` | run mode, stage of the computational runs, expected Q used by the stopping rules || `params.analyte.n, k` | analyte index and extinction coefficient || `params.numerics.resolution, pml, symmetry` | grid points per a, PML thickness (a), mirror sector || `params.source.fcen, fwidth` | Gaussian source centre and width (a/lambda) || `params.harminv.t, margin, auto_t` | harmonic-inversion signal length, target margin, two-pass rule || `result.modes[i].f, Q, amplitude, error, wavelength_nm, fwhm_nm` | modes, strongest first; modes[0] is the resonance || `result.Q_limit` | Q_lim = pi f_cen t of the sampling rule (margin = Q_lim / Q) || `result.f, flux_in, flux_out` | spectrum and reference runs || `result.analyte_energy_fraction, wavelength_nm, field_file` | field runs; the .npz holds Ez, eps, sx, sy, Lx, Ly, resolution, f_res || `task.label, tag, source` | record name, stage of the computational runs, origin: legacy-campaign (systematic runs) or legacy-verification (verification runs) for records converted from the 2026 files, sprat for records written by SPRAT || `provenance.host, started, wall_s, steps, pixels, throughput, job_id` | where and how long the run took || `provenance.legacy_file, legacy_sha256` | the original 2026 file the record was converted from, and its checksum || `software.name, version, meep, legacy_script` | the program that wrote the record and its version, the Meep version of the run; for converted records sprat-legacy-import and the 2026 script that wrote the original file || `software.code_sha256` | SHA-256 of the code that wrote the record: the 2026 script for the verification runs (the systematic runs did not record it), sprat/fdtd.py for records written by SPRAT || `records.csv: margin, gap_position, resolved, valid, exclusion_reason` | Q_lim/Q, position in the TM gap (0-1), margin >= 1, margin >= 1 and gap position 0.2-0.8, reason if excluded || `records.csv: waveguide_mode` | True for the admitted records of the preliminary sweep (n_cl = 6, resolution 20) at N_sep = 1 or r_d >= 0.13a, whose strongest mode is a low-Q mode of the finite waveguide (Q 50 to 77); cavity records are those with valid = True and waveguide_mode = False | ## Reproducing SPRAT (`sprat-1.2.1.zip` in this record, maintained at https://github.com/codekyha/sprat) reads the records of this deposit directly. Install it from `sprat-1.2.1.zip` (its README gives the commands), unpack the record archives into one directory and run the analysis: ```bashmkdir recordsfor f in harminv_records spectra_records field_records bands_records pwe_records; do tar -xzf $f.tar.gz -C records --strip-components=1; donetar -xzf analysis.tar.gz; tar -xzf predictions.tar.gzsprat analyze records -o tablessprat audit records --expected analysis/numbers_registry.json -o tablessprat figures records -o figures --tables tables``` Zenodo stores files without folders, so `analysis/` and `predictions/` travel as the two archives above. `sprat analyze` recomputes the analysis outputs of `analysis/` from the records: the derived numbers, the numbers registry and the grading of the criteria fixed before the runs. `sprat audit` recomputes the registered numbers of the paper (the numbers registry) from the records and compares them, row by row, with the registry of this deposit; run on regenerated records, it shows how far a regeneration departs from the deposit. `sprat figures` draws the figures of the paper from the records. Each record stores the resolved structure and parameters of its run, so `sprat run-one --task <record.json> --out <new.json>` runs it again with Meep, and `sprat reproduce campaigns/manuscript` (the parameter files are in `sprat-1.2.1.zip`) plans and runs the whole set on a workstation. `analysis/manuscript_registry.json` lists every number of the manuscript with its source. `sprat audit records --expected analysis/manuscript_registry.json -o tables` compares its record-derived rows with the numbers recomputed from the records and lists the literature values and references apart. The original files in `raw_legacy.tar.gz` are the input of `sprat import-legacy`: `tar -xzf raw_legacy.tar.gz` followed by `sprat import-legacy raw_legacy -o records` converts them again; `tar -xzf raw_h14b.tar.gz` and `sprat import-legacy raw_h14b -o records` add the absorber-terminated spectra. This software and dataset are provided "as is" without warranty of any kind, express or implied, or commitment to ongoing maintenance or support.

提供机构:
Zenodo
创建时间:
2026-09-29
二维码
社区交流群
二维码
科研交流群
商业服务