solprop.driver.material_output#

Record the material and physical reconstruction data needed by saved-run analysis.

Two records are built here. material_record() and processing_record() describe a run’s mixture for the configuration and for processing after reload. material_manifest() collects a run’s material manifest (SEP 3, output schema 8): every optmat-backed object the run carries, wherever it sits – the mixture, a mode’s fill, a wall, a cladding, a core, a general guide’s material regions, a bulk medium – found by walking the run’s own objects, with the selection and the policies in force.

Module Attributes

MIXTURE_FILTER_RULE

The symmetric evaluator's filter of a mixture, as a run records it (SEP 6, 6).

Functions

material_manifest(roots, *, selection, omega)

Collect a run's material manifest from its objects.

material_record(mixture)

Record explicit composition units, paths and complete supplied species data.

processing_record(problem, grid, mixture, modes)

Record compact data for species absorption and node fluence after reload.

solprop.driver.material_output.MIXTURE_FILTER_RULE: Final = 'g_mix = [sum_s rho_s gamma0_s g_s^4 / sum_s rho_s gamma0_s]^(1/4), rebuilt from the densities at every stage'#

The symmetric evaluator’s filter of a mixture, as a run records it (SEP 6, 6).

solprop.driver.material_output.material_manifest(roots, *, selection, omega, log=None, peak_fields=(), carrier=None, active_band=None, vector=False, leaf=None)[source]#

Collect a run’s material manifest from its objects.

Every one of solprop’s objects reachable from roots is visited once. Those that carry optmat records (a species, a mixture, a gas susceptibility or equation of state, a solid) contribute them; a mixture contributes its optmat populations, its named composition and its dilute-scaling check over omega, measured here once for the run; an optmat solid its axis and its transparent approximation; a species with optmat’s Kerr model its coefficient at carrier, beside the third-harmonic one; a GNLSE mapping its held-back Raman fraction and its origin; and any other glass, gas susceptibility or species its citation. A run with no optmat object and no selection has the empty manifest, whatever else it carries.

Parameters:
rootssequence

The run’s objects: configuration, modes, responses, media, guide.

selectionMaterialSelection or None

The selection the run was built with.

omeganumpy.ndarray

Angular frequencies in rad/s of the run’s band, collars included; the positive ones are checked.

logsolprop.physdata.selection.MaterialLog or None, optional

The run’s evaluation log, whose out-of-interval bands are recorded.

peak_fieldssequence of PeakFieldReport, optional

The post-run diagnostic of each optmat rate: the largest field each population saw, against the model’s maximum field and the constant energy (solprop.nonlinear.optmat_rates.peak_field_report()); a measurement.

carrierfloat or None, optional

The run’s carrier, its grid’s reference wavelength in m, at which an optmat Kerr coefficient is recorded; None records none.

active_bandtuple of float or None, optional

The run’s active band in rad/s, omega_min / 2 to 1.1 omega_max, over which a dispersive electronic response’s regions are classified (SEP 6, section 4.10); None records no regions.

vectorbool, optional

Whether the run’s field has two polarisation components at a node, which takes the any-polarisation band edge.

leafsolprop.translate.responses.DispersiveKerrTerms or None, optional

The run’s compiled dispersive channels, whose groups name the symmetric evaluator’s mixture filters: each is recorded, with the composition it is built from, in the electronic law’s policy (and so in the resume key), and its species’ electronic entries name it. None records none.

Returns:
solprop.physdata.selection.MaterialManifest

The manifest, deduplicated and in canonical order.

solprop.driver.material_output.material_record(mixture)[source]#

Record explicit composition units, paths and complete supplied species data.

Parameters:
mixtureMixture

Ordered populations and temperature.

Returns:
dict

Constructor data or declared path samples, together with every species model.

solprop.driver.material_output.processing_record(problem, grid, mixture, modes)[source]#

Record compact data for species absorption and node fluence after reload.

Parameters:
problemKernelProblem

Translated geometry and save positions, with no backend state.

gridTimeGrid

Time and angular-frequency axes and temporal padding scale.

mixtureMixture

The same ordered material used by the operator and responses.

modessequence of Mode

Capillary modes, or an empty sequence for spatial propagation.

Returns:
dict

Density in m^-3 at requested planes, absorption cross sections in m^2 in the active band, and physical field synthesis with temporal padding removed. A replaced total loss is recorded as unavailable species attribution.