[−][src]Crate capra
Dive planning library
Quick example
A quick example showing how to use this library:
use time::Duration; use capra_core::{common, deco}; use capra::DivePlan; use capra::modes::OpenCircuit; fn main() { // Make a new gas let air = common::Gas::new(21, 0, 79).unwrap(); // Make a new ZHL16 decompression model let zhl16 = deco::zhl16::ZHL16::new_by_variant( deco::Tissue::default(), 50, 70, deco::zhl16::Variant::B, ); // Make a dive segment let dive_segment = common::DiveSegment::new( common::SegmentType::DiveSegment, 45, 45, Duration::minutes(60), -10, 20, ) .unwrap(); let deco_gases = vec![(air, None)]; let segments = vec![(dive_segment, air)]; let open_circuit = OpenCircuit::new( zhl16, &deco_gases, &segments, -10, 20, common::DENSITY_SALTWATER, 20, 15, ); let results = open_circuit.plan(); for (segment, gas) in results.total_segments() { println!("{:?}, {:?}", segment, gas); } for (gas, qty) in results.gas_used() { println!("{:?}: {}", gas, qty); } }
Re-exports
pub use dive_plan::DivePlan; |
pub use dive_result::DiveResult; |
Modules
dive_plan | |
dive_result | |
modes |
Constants
PPO2_MAXIMUM_DECO | A default, placeholder maximum ppO2 for use during decompression stops. |
PPO2_MAXIMUM_DIVE | A default, placeholder maximum ppO2 for use during bottom segments. |
PPO2_MINIMUM | A default, placeholder minimum ppO2. |