rizer.models.hybrid.hybrid_driver#
Reusable driver for the hybrid discharge model (nanosecond + low-voltage).
Library form of scripts/hybrid_discharge/run_hybrid_discharge_model.py: the
input merging, the nanosecond (Roger engineering) phase, the link between the
two phases (auto correction or imposed values) and the low-voltage LTE
phase are importable so other frontends (the run script, tests, the Boulder GUI
plugin) can run the exact same two-phase simulation from a parameter dictionary.
The parameter dictionary uses the same layout as the script’s input YAML
(sections constant_parameters, link_between_models, nanosecond_model,
low_voltage_model); see
scripts/hybrid_discharge/input_hybrid_discharge_model.yaml.
Classes#
Results of a hybrid discharge run (nanosecond phase + low-voltage phase). |
Functions#
|
Set the low-voltage initial state (T_0, r_0) from the link configuration. |
|
Run the full hybrid discharge model from a parsed parameter dictionary. |
Module Contents#
- class rizer.models.hybrid.hybrid_driver.HybridResult#
Results of a hybrid discharge run (nanosecond phase + low-voltage phase).
The nanosecond profiles are stored directly; the low-voltage arrays live on
lv_model(times,temperatures,currents,R_p,r_p,P_Joule,P_radiation,U_p, … – populated bysolve()).- roger_model: rizer.models.nrp.roger_model.RogerModel#
- ns_times: numpy.ndarray#
- ns_T: numpy.ndarray#
- ns_P: numpy.ndarray#
- property lv_times: numpy.ndarray#
Low-voltage phase time grid [s].
- property lv_T: numpy.ndarray#
Low-voltage phase temperature [K].
- rizer.models.hybrid.hybrid_driver.link_ns_to_lv(roger_model: rizer.models.nrp.roger_model.RogerModel, link_between_models: dict[str, Any], ns_inputs: dict[str, Any], lv_inputs: dict[str, Any]) tuple[float, float, float | None]#
Set the low-voltage initial state (T_0, r_0) from the link configuration.
imposed: use the configured values.auto: evaluate the nanosecond model attau_transition, apply the temperaturecorrection_factor(see fig. 34 in [Roger2026]) and scale the initial radius accordingly.lv_inputs["low_voltage_discharge_model"]is updated in place.
- rizer.models.hybrid.hybrid_driver.run_hybrid_case(params: dict[str, Any]) HybridResult#
Run the full hybrid discharge model from a parsed parameter dictionary.
- Parameters:
params – Parsed input parameters with sections
constant_parameters,link_between_models,nanosecond_modelandlow_voltage_model(same layout as the run script’s YAML, e.g. fromrizer.misc.yaml_utils.parse_convert_yaml()).