1pub use drag_model::DragModel;
7pub use cli_api::{
8 BallisticInputs, TrajectorySolver, WindConditions, AtmosphericConditions,
9 TrajectoryResult, TrajectoryPoint, MonteCarloParams, MonteCarloResults,
10 run_monte_carlo, run_monte_carlo_with_wind, calculate_zero_angle, calculate_zero_angle_with_conditions,
11 estimate_bc_from_trajectory, BallisticsError,
12};
13
14mod drag_model;
16pub mod cli_api;
17pub mod ffi;
18mod constants;
19mod drag;
20mod drag_tables;
21mod atmosphere;
22mod wind;
23mod wind_shear;
24mod derivatives;
25mod trajectory_solver;
26pub mod trajectory_sampling;
27mod fast_trajectory;
28mod spin_drift;
29pub mod spin_decay;
30pub mod pitch_damping;
31mod precession_nutation;
32mod aerodynamic_jump;
33mod angle_calculations;
34pub mod transonic_drag;
35mod reynolds;
36mod form_factor;
37mod monte_carlo;
38pub mod bc_estimation;
39pub mod stability;
40
41pub(crate) type InternalBallisticInputs = BallisticInputs;
43
44#[derive(Debug, Clone)]
46pub struct BCSegmentData {
47 pub velocity_min: f64,
48 pub velocity_max: f64,
49 pub bc_value: f64,
50}