Giter Club home page Giter Club logo

dipplanner's Introduction

dipplanner Quick Start

Warning

This software is provided free of charge for experienced divers to evaluate diving profiles. This software is highly experimental, it probably contains bugs and should not be relied upon for actual dives. Use it at your own risk.

If you follow dive schedules generated by this software you could suffer decompression sickness, serious injury or possibly death. The author does not warrant that this software accurately reflects Buhlmann's algorithms, or that it will produce safe, reliable, results.

Diving in general is fraught with risk, and decompression diving using mixed gases and rebreathers adds significantly more risk. This software is not intended for uneducated users. This software and the decompression schedules it produces are tools for experienced divers only.

IF YOU DO NOT UNDERSTAND OR DO NOT AGREE TO THIS STATEMENT DO NOT USE THIS SOFTWARE

Description

Model supported

  • Bülhmann ZH-L16B with Gradient Factor
  • Bülhmann ZH-L16C with Gradient Factor

Gases

any mix of oxygen, helium and nitrogen is supported, this include:

  • Air
  • Nitrox
  • Oxygen
  • Trimix
  • Heliox
  • ...

Other Features

  • Open Circuit Dives
  • CCR Dives
    • setpoint
    • bailout
  • Tank planification
    • Tank size and pressure
    • Simple or Double Tank
    • gaz consumption rate
    • rules for warning (rules of third, rules in remaining pressure, etc..)
    • automatic (or non automatic) refill of Tank between successive dives
  • Multigaz (multi Tank)
  • Automatic selection of best gaz
  • Multilevel Dives
  • Altitude Dives
  • Successive Dives
  • No Flight Time Calculation
  • CNS Tracking
  • OTU Tracking
  • MOD Calculation
  • END Calculation
  • Adjustable gradient factor and stop depth level

Calculations

The main principe of dipplanner calculation are to be as accurate as possible, using the most precise algorithm.

  • All internal calculation in SI Units
  • Most precise calculations (trying to avoid any approximation):
    • second to second decompression time calculation (adjustable)
    • real water density calculation
    • real gaz pressure calculation in tanks using van der waals
    • real surface pressure calculation (using Antoine equation for ppH2O)
    • ...
  • Every parameter is adjustable

Warning

in result of the "precise" calculations, the planned dives may be shorter than other equivalent dive planification programs.

Users of dipplanner MUST be aware of this difference and adjust the conservatisms to their wishes.

On the other way, with the most precise calculations, dipplanner try to avoid unexpected effects (or worse: unseen effects) of approximations. (approximation effect to conservatism are sometimes counter-intuitive and may in some cases reduce the conservatism without warning)

Get the sources

latest source code (unstable)

please use git to clone the repository :

git clone git://github.com/ThomasChiroux/dipplanner.git

Preparation: virtualvenv

It is recommended (but optional) to setup a virtualvenv before running or installing. In this way, you will not break or change your real environment. So after getting the source, go in the dipplanner directory:

cd dipplanner
mkdir venv
virtualenv venv
source venv/bin/activate

Installing

Inside the dipplanner source directory, run:

python setup.py install

Using

This version if currently only usable in command line

Run the program

ex:

dipplanner --help

Planning one dive

To plan a dive, you should at least provide one tank and one dive segment. Here is below a sample for a 12l tank with 200b of air and a dive of 25min at 30m

dipplanner -t "airtank;0.21;0.0;12;200;50b" -s "30;25*60;airtank;0.0"

You can provide more than one tank and of course multiple segments (they will be processed in the order you provided it) Deco tanks will be automaticaly choosen if appropriate. Here is below a sample for a trimix dive : bi 12l-cylinder of Tx21/30 and Deco Nx80 (S80), 50m - 20mins:

dipplanner -t "tx;0.21;0.30;24;200;50b" -t "deco;0.8;0.0;12;200;50b" -s "50;20*60;tx;0.0"

Change some parameters of the dive

See

dipplanner --help

output to see all available parameters

You can also read :ref:`dipplanner_cmdline`

Config files

You can provide one or several config files to the program. The config file can overide any default parameter. see config/default_config.cfg for all the details

parameter are changed using this order:

  1. default parameter
  2. parameter set in config files
  3. parameter set in command line

You can also read :ref:`dipplanner_configfile`

Units : SI or Imperial

dipplanner uses only SI unit internally. However a config parameter or a command line parameter can change this behaviour. and use imperial Units

if imperial unit is set in a config file :
all the parameters from this config file and all the config files read after will be considered imperial (including command line parameters) But all the parameter in previous config files will still be considered as SI All the ouput will be done in imperial units
if imperial unit is set in command line :
all the parameter given in command line will be considered imperial, but not the parameters eventually given using config files All the output will be done in imperial units

SI and imperial unit converter uses the following correspondances:

  • bar <--> psi
  • liter <--> cubic feet
  • meter <--> feet

References

Open Source and Licence

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/gpl.html

dipplanner's People

Contributors

thomaschiroux avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.