rizer.hybrid.engineering_model.dataclass.diffusion#

Classes#

Module Contents#

class rizer.hybrid.engineering_model.dataclass.diffusion.DiffusionInputs#
r_0: float#

Initial discharge radius [m].

ξ_expand: float#

Expansion ratio of the kernel after the spark pulse.

R_d_expansion: float#

Effective radius of the kernel during the diffusion phase [m].

T_TE_K: float#

Temperature after thermal equilibration between vibrational and trans-rotational modes [K].

T_amb: float#

Temperature of the surrounding gas outside the kernel [K].

gamma: float#

Specific heat ratio of the gas during the diffusion phase.

P_out: float#

Pressure of the surrounding gas outside the kernel [Pa].

alpha: Callable[[float], float]#

Thermal diffusivity of the gas during the diffusion phase [m^2/s].

Returns the thermal diffusivity as a function of temperature.

alpha_model: str = 'constant'#

Model to compute the thermal diffusivity of the gas during the diffusion phase.

Can be either:

  • constant: Use a constant thermal diffusivity. The value is specified by alpha_constant.

  • file: Use a thermal diffusivity that depends on temperature, read from a file. The file should be located in the ./data/transport/ directory of the package, and specified by alpha_file_gas_name, alpha_file_pressure_atm and alpha_file_source.

  • ThermoTransportDataReader: Use a thermal diffusivity that depends on temperature, provided directly as a ThermoTransportDataReader object in alpha_thermo_transport_data.

alpha_constant: dataclasses.InitVar[float | None] = None#

Thermal diffusivity of the gas during the diffusion phase [m^2/s]. Assumed constant if provided.

alpha_file_gas_name: dataclasses.InitVar[str | None] = None#

Gas name for a file containing thermo/transport data as a function of temperature. The file should be located in the ./data/transport/ directory of the package

alpha_file_pressure_atm: dataclasses.InitVar[int | None] = None#

Pressure at which the thermal diffusivity data is valid [atm].

alpha_file_source: dataclasses.InitVar[str | None] = None#

Source or reference for the thermal diffusivity data file.

alpha_thermo_transport_data: dataclasses.InitVar[rizer.io.thermo_transport_data_reader.ThermoTransportDataReader | None] = None#

ThermoTransportDataReader object containing the thermal diffusivity data as a function of temperature. If provided, it will be used directly instead of reading from a file.

alpha_nb_zeros_to_use: int = 100#

Number of zeros of the Bessel function of the first kind of order 0 to use in the computation of the temperature during the diffusion phase.

diffusion_model: str = 'simple_model'#

Model to compute the temperature during the diffusion phase.

  • simple_model: Use a constant thermal diffusivity.

  • intermediate_model: Use a thermal diffusivity that depends on temperature.

  • refined_model: Use a thermal diffusivity that depends on temperature with a time-evolving radius.

class rizer.hybrid.engineering_model.dataclass.diffusion.DiffusionOutputs#

Bases: rizer.hybrid.engineering_model.dataclass.base.TimeSeriesState