diff --git a/softy/src/constraints/penalty_point_contact.rs b/softy/src/constraints/penalty_point_contact.rs index 2feb3c3..22386bb 100644 --- a/softy/src/constraints/penalty_point_contact.rs +++ b/softy/src/constraints/penalty_point_contact.rs @@ -3842,7 +3842,7 @@ mod tests { use crate::attrib_defines::*; use crate::nl_fem::state::{ResidualState, State}; use crate::nl_fem::{NonLinearProblem, SimParams, SolverBuilder}; - use crate::test_utils::{default_solid, num_static_configs, static_nl_params}; + use crate::test_utils::{default_solid, static_nl_params, static_configs}; use crate::{Elasticity, MaterialIdType}; use ad::F1; use approx::assert_relative_eq; @@ -4035,7 +4035,7 @@ mod tests { vec![1; surface.num_vertices()], )?; - for config_idx in 0..num_static_configs() { + for config_idx in static_configs() { let params = SimParams { max_iterations: 50, gravity: [0.0f32, -9.81, 0.0], diff --git a/softy/src/test_utils.rs b/softy/src/test_utils.rs index 83f7016..d00ee0a 100644 --- a/softy/src/test_utils.rs +++ b/softy/src/test_utils.rs @@ -11,11 +11,6 @@ use geo::mesh::VertexPositions; use geo::ops::*; use geo::topology::{CellVertex, CellVertexIndex}; -/// Returns the total number of configurations availble. -pub fn num_static_configs() -> u32 { - 4 -} - /// Returns an iterator of supported configs. pub fn static_configs() -> impl Iterator { static_config_slice().iter().cloned() @@ -41,7 +36,7 @@ pub fn static_config_slice() -> &'static [u32] { /// Gets the name of the config which points to a ron file in the assets directory. pub fn config_name(config: u32) -> &'static str { - assert!(config < num_static_configs()); + assert!(config < 4); match config { 0 => "direct_static_nl_params", 1 => "direct_assisted_static_nl_params", diff --git a/softy/tests/bend_nl.rs b/softy/tests/bend_nl.rs index 097157f..9e26521 100644 --- a/softy/tests/bend_nl.rs +++ b/softy/tests/bend_nl.rs @@ -127,7 +127,7 @@ fn quasi_static_deformed() -> Result<(), Error> { // Running the same sim again should produce deterministically identical results. // This used to fail with bending enabled. - for config_idx in 0..num_static_configs() { + for config_idx in static_configs() { let mesh = make_three_tri_mesh(); let mut solver = SolverBuilder::new(SimParams { velocity_clear_frequency: 20.0, diff --git a/softy/tests/box_nl.rs b/softy/tests/box_nl.rs index bee6629..7535af9 100644 --- a/softy/tests/box_nl.rs +++ b/softy/tests/box_nl.rs @@ -17,7 +17,7 @@ pub use test_utils::*; #[test] fn equilibrium() -> Result<(), Error> { init_logger(); - for config_idx in 0..num_static_configs() { + for config_idx in static_configs() { let params = SimParams { max_iterations: 1, gravity: [0.0f32; 3], @@ -48,7 +48,7 @@ fn equilibrium() -> Result<(), Error> { #[test] fn stretch_plain() -> Result<(), Error> { init_logger(); - for config_idx in 0..num_static_configs() { + for config_idx in static_configs() { let mesh = make_stretched_box(4); let material: Material = load_material("assets/medium_solid_material.ron")?; let mut solver = SolverBuilder::new(NLParams { @@ -70,7 +70,7 @@ fn stretch_plain() -> Result<(), Error> { #[ignore] fn stretch_plain_large() -> Result<(), Error> { init_logger(); - for config_idx in 0..num_static_configs() { + for config_idx in static_configs() { let mesh = make_stretched_box(10); let material: Material = load_material("assets/medium_solid_material.ron")?; let mut solver = SolverBuilder::new(NLParams { @@ -88,7 +88,7 @@ fn stretch_plain_large() -> Result<(), Error> { #[test] fn stretch_volume_penalty() -> Result<(), Error> { init_logger(); - for config_idx in 0..num_static_configs() { + for config_idx in static_configs() { let material: Material = load_material("assets/medium_solid_material.ron")?; let mut mesh = make_stretched_box(4); mesh.insert_attrib_data::( @@ -118,7 +118,7 @@ fn stretch_volume_penalty() -> Result<(), Error> { #[test] fn stretch_triangles() -> Result<(), Error> { init_logger(); - for config_idx in 0..num_static_configs() { + for config_idx in static_configs() { let material: Material = load_material("assets/soft_shell_material.ron")?; let mesh = make_stretched_box(2); let mesh = mesh.surface_trimesh(); @@ -143,7 +143,7 @@ fn stretch_triangles() -> Result<(), Error> { fn stretch_volume_penalty_triangles() -> Result<(), Error> { use geo::attrib::Attrib; init_logger(); - for config_idx in 0..num_static_configs() { + for config_idx in static_configs() { let material: Material = load_material("assets/soft_shell_material.ron")?; let mesh = make_stretched_box(3); let mut mesh = mesh.surface_trimesh(); @@ -173,7 +173,7 @@ fn stretch_volume_penalty_triangles() -> Result<(), Error> { #[test] fn twist_plain() -> Result<(), Error> { init_logger(); - for config_idx in 0..num_static_configs() { + for config_idx in static_configs() { let material: Material = load_material("assets/no_poisson_soft_solid_material.ron")?; let mesh = geo::io::load_tetmesh("assets/box_twist.vtk")?; let params = NLParams { diff --git a/softy/tests/contact_nl.rs b/softy/tests/contact_nl.rs index 7c34964..22a6537 100644 --- a/softy/tests/contact_nl.rs +++ b/softy/tests/contact_nl.rs @@ -211,7 +211,7 @@ fn single_tri_push() -> Result<(), Error> { let contact_tolerance = 0.001; - for config_idx in 0..num_static_configs() { + for config_idx in static_configs() { let params = static_nl_params(config_idx); let mut solver = SolverBuilder::new(params.clone()) .set_mesh(Mesh::from(trimesh.clone())) @@ -324,7 +324,7 @@ fn tet_push() -> Result<(), Error> { compute_distance_potential_tetmesh(&orig_trimesh, &orig_tetmesh, kernel); - for config_idx in 0..num_static_configs() { + for config_idx in static_configs() { let params = SimParams { gravity: [0.0f32; 3], ..static_nl_params(config_idx) @@ -439,7 +439,7 @@ fn ball_tri_push_tester( vec![1; tetmesh.num_cells()], )?; - for config_idx in 0..num_static_configs() { + for config_idx in static_configs() { let params = static_nl_params(config_idx); // If material is omitted it is assumed to be material 0 which is a completely fixed/animated mesh. diff --git a/softy/tests/friction_nl.rs b/softy/tests/friction_nl.rs index 43ec76e..0953624 100644 --- a/softy/tests/friction_nl.rs +++ b/softy/tests/friction_nl.rs @@ -395,7 +395,7 @@ fn box_slide_experiment() -> Result<(), Error> { ..Default::default() }; - for config_idx in 0..num_static_configs() { + for config_idx in static_configs() { let mut params = static_nl_params(config_idx); let pi = std::f64::consts::PI; diff --git a/softy/tests/one_tet_nl.rs b/softy/tests/one_tet_nl.rs index e655c7e..da83c0e 100644 --- a/softy/tests/one_tet_nl.rs +++ b/softy/tests/one_tet_nl.rs @@ -21,7 +21,7 @@ fn one_tet_solver(config_idx: u32) -> Solver, f64>, /// Test that the solver produces no change for an equilibrium configuration. #[test] fn equilibrium() { - for config_idx in 0..num_static_configs() { + for config_idx in static_configs() { let params = SimParams { gravity: [0.0f32, 0.0, 0.0], ..static_nl_params(config_idx) @@ -48,7 +48,7 @@ fn equilibrium() { #[test] fn simple_deformed() { init_logger(); - for config_idx in 0..num_static_configs() { + for config_idx in static_configs() { let mut solver = one_tet_solver(config_idx); geo::io::save_mesh(&solver.mesh(), "./out/before_one_tet.vtk").unwrap(); @@ -71,7 +71,7 @@ fn simple_deformed() { #[test] fn consistent_outer_iterations() -> Result<(), Error> { init_logger(); - for config_idx in 0..num_static_configs() { + for config_idx in static_configs() { let params = SimParams { ..static_nl_params(config_idx) }; @@ -105,7 +105,7 @@ fn volume_penalty() -> Result<(), Error> { let material = default_solid(); - for config_idx in 0..num_static_configs() { + for config_idx in static_configs() { let mut solver = SolverBuilder::new(static_nl_params(config_idx)) .set_mesh(mesh.clone()) .set_material(material) @@ -130,7 +130,7 @@ fn volume_penalty_triangles() -> Result<(), Error> { let material = default_shell(); - for config_idx in 0..num_static_configs() { + for config_idx in static_configs() { let mut solver = SolverBuilder::new(static_nl_params(config_idx)) .set_mesh(mesh.clone()) .set_material(material) diff --git a/softy/tests/test_utils/mod.rs b/softy/tests/test_utils/mod.rs index 4fa8b99..8978001 100644 --- a/softy/tests/test_utils/mod.rs +++ b/softy/tests/test_utils/mod.rs @@ -38,7 +38,7 @@ pub fn contact_tester( num_steps: u32, ) -> Result<(), Error> { init_logger(); - for config_idx in 0..num_static_configs() { + for config_idx in static_configs() { let params = SimParams { time_step: Some(0.01), ..static_nl_params(config_idx)