solprop.translate.tdse_source#
Admit the scalar helium TDSE route and translate its macroscopic source.
The microscopic provider supplies per-atom current and dipole histories. The ordinary Kerr compiler remains the authority for the optmat cubic. The current factor is constructed independently of the polarisation factor, including at zero frequency; no division by frequency is involved (SEP 12 section 4.6).
Module Attributes
Largest admitted steady-current certificate of a gated native source's gate. |
|
Legacy rate/dipole-only statistics that do not identify a TDSE observable. |
Functions
|
Replace the TDSE declaration with its explicitly owned cubic coefficient. |
|
Construct the current prefactor numerator directly in the FFT convention. |
|
Compute the steady-current certificate of a gated TDSE source (SEP 26, 4.4). |
- solprop.translate.tdse_source.STEADY_CURRENT_CERTIFICATE_LIMIT = 1e-10#
Largest admitted steady-current certificate of a gated native source’s gate.
kappa_ssis the active-band norm of the edge-free source ofS = 1, which is exactly zero in the continuous identity, relative to the full transform of the gate (steady_current_certificate()). It is the whole admission: no fixed taper sample count is imposed.
- solprop.translate.tdse_source.TDSE_UNAVAILABLE_STATISTICS = frozenset({'electron_density', 'on_axis_electron_density', 'on_axis_peak_ionisation_rate', 'on_axis_species_electron_density', 'on_axis_species_peak_ionisation_rate', 'peak_ionisation_rate', 'plasma_boundary_level', 'plasma_undershoot', 'plasma_work_defect', 'quadrature_error', 'species_electron_density', 'species_ionisation', 'species_ionisation_energy', 'species_peak_ionisation_rate'})#
Legacy rate/dipole-only statistics that do not identify a TDSE observable.
The complete-source quadrature diagnostic is recorded with its actual stage identity; a PEC predictor is not the accepted field named by a saved-plane row.
- solprop.translate.tdse_source.admit_tdse(responses, grid, modes, *, shape, quadrature, integrator, has_noise, shock, prefactor_index, interpolate_planes=False)[source]#
Replace the TDSE declaration with its explicitly owned cubic coefficient.
- Parameters:
- responsessequence
Scientific declarations, including at most one TDSE gas response.
- gridsolprop.grid.TimeGrid
Resolved response grid, retaining the parent’s coarse bins and window.
- modessequence of Mode
Propagated modes in state order.
- shapetuple of int
Canonical state dimensions, batch, mode, polarisation and frequency.
- quadratureTransverseQuadrature or None
Declared transverse integration rule.
- integratorMultistep or LowStorageRungeKutta or None
The run’s integrator; TDSE requires an Adams method.
- has_noisebool
Whether any shot-noise model is present.
- shockbool
Whether the full frequency-dependent polarisation numerator is retained.
- prefactor_indexfloat or None
Requested override of the physical effective index.
- interpolate_planesbool, optional
Whether save planes are interpolated inside accepted steps. TDSE requires landed observations, so this must be
False.
- Returns:
- tuple
Ordinary responses for the existing compiler and immutable atomic identity.
- Raises:
- TranslationError
For unsupported geometry, material, sampling or response ownership.
- solprop.translate.tdse_source.current_numerator(grid)[source]#
Construct the current prefactor numerator directly in the FFT convention.
Divide this real, negative array by the stage’s positive modal power weight
Re(neff). The current and polarisation then have the same projection and crop normalization without introducing a spurious zero-frequency singularity.- Parameters:
- gridsolprop.grid.TimeGrid
Resolved field grid supplying active bins and the transform crop scale.
- Returns:
- numpy.ndarray
Read-only
-crop_scale / (2 eps0 c)on active bins, zero elsewhere, shape(1, 1, n_omega).
- solprop.translate.tdse_source.steady_current_certificate(descriptor, omega, active)[source]#
Compute the steady-current certificate of a gated TDSE source (SEP 26, 4.4).
\[\kappa_{\rm ss} = \frac{\lVert \mathrm{DFT}[g] - \mathrm{DFT}[g']/(i\omega) \rVert_A}{\lVert \mathrm{DFT}[g]\rVert_2},\]the edge-free source of a constant current
S = 1on the active binsAof the coarse spectrum, relative to the full one-sided transform of the gate on the fine lattice. The raw forward DFTs of the sampled gate and of its analytic derivative are cropped to the coarse bins exactly as a source is. The numerator is zero in the continuous identity; what is left is the taper’s alias error on this lattice and band, plus rounding. It is one transform of a fixed gate per configuration and is cached.The denominator is the full transform, not the active band (a correction of SEP 26 section 4.4, which divided by
||DFT[g]||_A). A long gate puts almost none of its spectrum in the band, so the band-relative ratio compared one rounding-level norm with another and refused well-resolved gates: a 1 ps window at 0.4-2 um gave 1.4e-7. Against the full transform the residual is measured on the scale of the gate itself,sqrt(N / 2) ||g||_2up to the one-sided weighting, which is the scale of the truncating source of a unit current before the band crop; the same window gives 5.9e-17, while an under-resolved taper still fails by orders of magnitude (docs/guide/media/tdse.md).- Parameters:
- descriptorTDSEDescriptor
A gated descriptor: its window’s gate, or its recorded fine temporal collar.
- omeganumpy.ndarray
Coarse angular frequencies in rad/s, shape
(n_omega,).- activenumpy.ndarray
Active-bin mask of the same shape; every active frequency is positive.
- Returns:
- float
Nonnegative dimensionless certificate; zero for an empty band.