From ac14b644be584c7958119d2f466f4ab0ae0dcd49 Mon Sep 17 00:00:00 2001 From: Jon Drobny Date: Mon, 3 Feb 2025 11:44:38 -0800 Subject: [PATCH] Added warning when input includes zero-length electronic stopping correction factors. --- src/geometry.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/geometry.rs b/src/geometry.rs index 8e3d31a..a915629 100644 --- a/src/geometry.rs +++ b/src/geometry.rs @@ -66,6 +66,7 @@ impl Geometry for Mesh0D { let electronic_stopping_correction_factor = input.electronic_stopping_correction_factor; let densities: Vec = input.densities.iter().map(|element| element/(length_unit).powi(3)).collect(); + assert!(densities.len() > 0, "Input Error: density list empty."); let total_density: f64 = densities.iter().sum(); @@ -135,6 +136,7 @@ impl Geometry for Mesh1D { let layer_thicknesses = geometry_input.layer_thicknesses.clone(); let electronic_stopping_correction_factors = geometry_input.electronic_stopping_correction_factors.clone(); + assert!(electronic_stopping_correction_factors.len() > 0, "Input Error: Electronic stopping correction factor list empty."); let n = layer_thicknesses.len(); let mut layers: Vec = Vec::with_capacity(n); @@ -433,7 +435,7 @@ impl Geometry for Mesh2D { let simulation_boundary_points = geometry_input.simulation_boundary_points.clone(); let electronic_stopping_correction_factors = geometry_input.electronic_stopping_correction_factors.clone(); - + assert!(electronic_stopping_correction_factors.len() > 0, "Input Error: Electronic stopping correction factor list empty."); let n = triangles.len(); let mut cells: Vec = Vec::with_capacity(n);