solprop.translate.flux#
Build the axial-admittance plan of one spatial plane (SEP 34).
A free-space field’s power crossing a plane is measured with the scalar forward
equation’s axial admittance Y_c = eps0 c**2 k_z / omega of the medium at that
plane (docs/guide/free-space/flux.md). Every evaluation reads the one
longitudinal root of solprop.translate.spatial.longitudinal_root(), on the
same separable coefficients the propagation uses, so a plane’s measure and its
propagation see the same k_z.
Functions
|
Rebuild a plane measure from its output record. |
|
Build the run's plane-measure coefficients for its statistics. |
|
Return a plane measure as plain arrays for the output's spatial record. |
|
Return the separable coefficients of one plane's medium. |
- solprop.translate.flux.flux_from_record(record)[source]#
Rebuild a plane measure from its output record.
- Parameters:
- recordcollections.abc.Mapping
The
flux_planentry of a spatial output record.
- Returns:
- FluxPlan
The run’s plane measure, whose
FluxPlan.atgives a saved plane’s coefficients at its own position.
- solprop.translate.flux.flux_plan(space, dispersion, linear, *, tol, admission=None)[source]#
Build the run’s plane-measure coefficients for its statistics.
Cartesian, line and planar runs are uniform along z, so the run’s own separable coefficients are the measure everywhere. A radial run’s coefficients at the entrance are paired with a z table of the material square when its medium varies, built on the medium’s breakpoints as mandatory edges.
- Parameters:
- spacesolprop.grid.RadialGrid, solprop.grid.FreeGrid or PlanarGrid
Transverse geometry.
- dispersionsolprop.spatial.SpatialDispersion
The run’s medium, temporal grid and evanescent cap.
- linearsolprop.translate.linop.LinearOperator
The run’s linear operator: its separable record and its span.
- tolfloat
Relative tolerance of the material table, positive.
- admissionsolprop.adiabatic.AdiabaticAdmission or None, optional
The varying path’s certificate, carried with the plan.
- Returns:
- FluxPlan
The run’s plane measure.
- solprop.translate.flux.flux_record(plan)[source]#
Return a plane measure as plain arrays for the output’s spatial record.
- Parameters:
- planFluxPlan or None
The run’s plane measure.
- Returns:
- dict
The coefficients
flux_from_record()rebuilds the measure from.
- Raises:
- TranslationError
If a spatial run carries no plane measure.
- solprop.translate.flux.plane_coefficients(space, medium, grid, z, *, evanescent_rate=200.0)[source]#
Return the separable coefficients of one plane’s medium.
The material square and the transverse squares are split exactly as the run’s own operator splits them (radial: rounded squares; Cartesian and planar: a rounded square and its exact residual; planar: each channel’s wall term), so the plane’s
k_zis the propagation’s to rounding. The frame, rates and prefactors are not part of the measure and are left zero.- Parameters:
- spacesolprop.grid.RadialGrid, solprop.grid.FreeGrid or PlanarGrid
Transverse geometry of the plane.
- mediumsolprop.spatial.SpatialMedium
The bulk medium; for a planar grid, the slab modes’ own fill.
- gridsolprop.grid.TimeGrid
Temporal grid; only its active band samples the material.
- zfloat
Finite position of the plane in m, at which the medium is evaluated.
- evanescent_ratefloat, optional
Evanescent attenuation cap in m^-1 carried for the root’s rate.
- Returns:
- SeparableOperator
Coefficients with the plane’s material and transverse squares.
- Raises:
- MaterialError
If the position is not finite.