pub struct JupiterRadiationConfig {
pub regions: Vec<RadiationRegion>,
pub magnetopause_rj: f64,
pub latitude_factor: f64,
pub plasma_sheet_factor: f64,
pub storm_factor: f64,
}Expand description
Configuration for the Jupiter radiation dose model.
Fields§
§regions: Vec<RadiationRegion>Piecewise regions from inner to outer. Must be sorted by r_min_rj and contiguous.
magnetopause_rj: f64Magnetopause distance in RJ. Beyond this, trapped radiation is zero.
latitude_factor: f64Geometry/variability multipliers
plasma_sheet_factor: f64Plasma sheet crossing factor (1.0 = in sheet, typically 0.3-0.5 outside)
storm_factor: f64Storm/quiet multiplier (1.0 = nominal, 2-5 for storm)
Implementations§
Source§impl JupiterRadiationConfig
impl JupiterRadiationConfig
Sourcepub fn default_model() -> Self
pub fn default_model() -> Self
Create the default model calibrated to Galileo-era data.
Dose rates in krad(Si)/hour behind 100 mil Al:
- Europa (~9.4 RJ): ~0.616 krad/h (= 5,400 krad/year)
- Ganymede (~15 RJ): ~0.0616 krad/h (= 540 krad/year)
- Callisto (~26 RJ): ~0.000114 krad/h (= 1 krad/year)
Sourcepub fn dose_rate_krad_h(&self, r_rj: f64) -> f64
pub fn dose_rate_krad_h(&self, r_rj: f64) -> f64
Instantaneous dose rate at distance r (in RJ) in krad/hour.
Returns 0 if r is beyond the magnetopause.
Sourcefn analytical_dose_segment(
region: &RadiationRegion,
r_start_rj: f64,
r_end_rj: f64,
v_radial_km_s: f64,
) -> f64
fn analytical_dose_segment( region: &RadiationRegion, r_start_rj: f64, r_end_rj: f64, v_radial_km_s: f64, ) -> f64
Analytical dose integral for a single power-law region.
For constant radial velocity v_r (km/s): Dose = ∫ D(r) dt = ∫ D(r) dr / v_r = (D0 * r0^alpha / v_r) * ∫[r1..r2] r^(-alpha) dr
For alpha ≠ 1: ∫ r^(-alpha) dr = r^(1-alpha) / (1-alpha)
Returns dose in krad. v_r in km/s, distances in RJ.
Sourcepub fn transit_analysis(
&self,
r_start_rj: f64,
r_end_rj: f64,
v_radial_km_s: f64,
shield_budget_krad: f64,
) -> JupiterTransitResult
pub fn transit_analysis( &self, r_start_rj: f64, r_end_rj: f64, v_radial_km_s: f64, shield_budget_krad: f64, ) -> JupiterTransitResult
Compute total accumulated dose along a radial transit.
Assumes constant radial velocity (reasonable for hyperbolic escape far from periapsis where gravity turn is small).
§Arguments
r_start_rj- Starting distance from Jupiter center (RJ)r_end_rj- Ending distance (RJ). Must be > r_start for outward.v_radial_km_s- Radial velocity component (km/s, positive = outward)shield_budget_krad- Total dose budget of the radiation shield (krad)
Trait Implementations§
Source§impl Clone for JupiterRadiationConfig
impl Clone for JupiterRadiationConfig
Source§fn clone(&self) -> JupiterRadiationConfig
fn clone(&self) -> JupiterRadiationConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more