1pub use drag_model::DragModel;
19pub use cli_api::{
20 BallisticInputs, TrajectorySolver, WindConditions, AtmosphericConditions,
21 TrajectoryResult, TrajectoryPoint, MonteCarloParams, MonteCarloResults,
22 run_monte_carlo, run_monte_carlo_with_wind, calculate_zero_angle, calculate_zero_angle_with_conditions,
23 estimate_bc_from_trajectory, BallisticsError,
24};
25
26mod drag_model;
28pub mod cli_api;
29pub mod ffi;
30#[cfg(target_arch = "wasm32")]
31pub mod wasm;
32#[cfg(test)]
33mod wasm_tests;
34mod constants;
35mod drag;
36mod drag_tables;
37mod atmosphere;
38mod wind;
39mod wind_shear;
40mod derivatives;
41mod trajectory_solver;
42pub mod trajectory_sampling;
43mod fast_trajectory;
44mod spin_drift;
45pub mod spin_decay;
46pub mod pitch_damping;
47mod precession_nutation;
48mod aerodynamic_jump;
49mod angle_calculations;
50pub mod transonic_drag;
51mod reynolds;
52mod form_factor;
53mod monte_carlo;
54pub mod bc_estimation;
55pub mod stability;
56
57pub(crate) type InternalBallisticInputs = BallisticInputs;
59
60#[derive(Debug, Clone)]
62pub struct BCSegmentData {
63 pub velocity_min: f64,
64 pub velocity_max: f64,
65 pub bc_value: f64,
66}