From 38347fea89cbfb5d34588342701ffe8c0d1873fa Mon Sep 17 00:00:00 2001 From: Joshua Coles Date: Fri, 17 Mar 2023 19:46:29 +0000 Subject: [PATCH] Change CLI slightly --- src/cli/cli.rs | 16 ++++++++++++---- src/main.rs | 20 +++----------------- 2 files changed, 15 insertions(+), 21 deletions(-) diff --git a/src/cli/cli.rs b/src/cli/cli.rs index 5ff76be..6d452ed 100644 --- a/src/cli/cli.rs +++ b/src/cli/cli.rs @@ -9,7 +9,7 @@ pub enum OutputFormat { #[derive(Args, Debug)] pub struct InitialCli { - pub grid_size: u32 + pub grid_size: u32, } #[derive(Args, Debug)] @@ -18,6 +18,11 @@ pub struct StickProbabilityCli { pub stick_probability: f32, } +#[derive(Args, Debug)] +pub struct KDStickProbabilityCli { + pub stick_probability: f32, +} + #[derive(Args, Debug)] pub struct BallsCli { pub ball_radius: f32, @@ -37,12 +42,15 @@ pub struct SurfaceProbabilityMeasureCli { pub enum PCM { Initial(InitialCli), StickProbability(StickProbabilityCli), - Grid3KD(StickProbabilityCli), - Grid3KDTsang(StickProbabilityCli), - Grid3(StickProbabilityCli), + + Grid3d(KDStickProbabilityCli), + Grid3dOffAxis(KDStickProbabilityCli), + Hex(StickProbabilityCli), + Balls2d(BallsCli), Balls(BallsCli), + SurfaceProbabilityMeasure(SurfaceProbabilityMeasureCli), } diff --git a/src/main.rs b/src/main.rs index ccdc107..d922842 100644 --- a/src/main.rs +++ b/src/main.rs @@ -5,7 +5,7 @@ use clap::Parser; use rand::prelude::*; use crate::cli::{drive_system}; -use crate::cli::cli::{StickProbabilityCli, InitialCli, BallsCli, PCM, ModelCli, SurfaceProbabilityMeasureCli}; +use crate::cli::cli::{StickProbabilityCli, InitialCli, BallsCli, PCM, ModelCli, SurfaceProbabilityMeasureCli, KDStickProbabilityCli}; use crate::cli::cli::PCM::Balls2d; use crate::cli::output::write; use crate::surface_probability_measure::{LoggerSticker, ReadOnlyVectorStorage}; @@ -57,7 +57,7 @@ fn main() { write(&sys, cli.format, &cli.output); } - PCM::Grid3KD(StickProbabilityCli { grid_size, stick_probability }) => { + PCM::Grid3d(KDStickProbabilityCli { stick_probability }) => { let mut sys = DLASystem::<_, Grid3D, _, _, _, _>::new( SmallRng::seed_from_u64(cli.seed), KDSpace::new(), @@ -71,7 +71,7 @@ fn main() { write(&sys, cli.format, &cli.output); } - PCM::Grid3KDTsang(StickProbabilityCli { grid_size, stick_probability }) => { + PCM::Grid3dOffAxis(KDStickProbabilityCli { stick_probability }) => { let mut sys = DLASystem::<_, Grid3D, _, _, _, _>::new( SmallRng::seed_from_u64(cli.seed), KDSpace::new(), @@ -85,20 +85,6 @@ fn main() { write(&sys, cli.format, &cli.output); } - PCM::Grid3(StickProbabilityCli { grid_size, stick_probability }) => { - let mut sys = DLASystem::<_, Grid3D, _, _, _, _>::new( - SmallRng::seed_from_u64(cli.seed), - VectorStorage::new(grid_size, 3), - LocalRandomWalker, - UniformSpawner, - ProbabilisticSticking::new(stick_probability).unwrap(), - cli.max_particles, - ); - - drive_system(&mut sys, cli.max_frames, cli.notify_every); - write(&sys, cli.format, &cli.output); - } - PCM::Hex(StickProbabilityCli { grid_size, stick_probability }) => { let mut sys = DLASystem::<_, HexPosition, _, _, _, _>::new( SmallRng::seed_from_u64(cli.seed),