GithubHelp home page GithubHelp logo

lrenegar / tawhiri Goto Github PK

View Code? Open in Web Editor NEW

This project forked from cuspaceflight/tawhiri

1.0 1.0 0.0 1.03 MB

Balloon Landing Prediction Software

Home Page: http://predict.lukerenegar.com/

License: GNU General Public License v3.0

Python 43.52% CSS 7.28% JavaScript 41.76% HTML 6.88% Shell 0.56%

tawhiri's Introduction

Tāwhirimātea

Documentation Status

Introduction

Tawhiri is a trajectory prediction software for high-altitude balloons originally developed by the Cambridge University Spaceflight (CUSF) team behind http://predict.habhub.org. This version has been significantly modified from the original CUSF code to implement Monte Carlo capabilities in order to bettter account for uncertainty in the balloon's trajectory.

The name comes from a Māori god of weather, which rather aptly “drove Tangaroa and his progeny into the sea ” (WP).

More information

Please see the CUSF wiki, which contains pages on Tawhiri and prediction in general.

More detailed API and setup documentation.

Setup

See the deployment example in the deploy folder for a more comprehensive example.

$ apt install libgrib-api-dev libevent-dev libpng-dev libeccodes-dev
$ python3 -m venv venv
$ source venv/bin/activate
$ pip install numpy wheel
$ pip install pyproj
$ pip install pygrib gevent
$ pip install -r requirements.txt
$ python setup.py build_ext --inplace

The last line (re-)builds the Cython extensions, and needs to be run again after modifying any .pyx files.

License

Tawhiri is Copyright 2014 (see AUTHORS & individual files) and licensed under the GNU GPL 3 (see LICENSE).

tawhiri's People

Contributors

danielrichman avatar adamgreig avatar lrenegar avatar mattjudge avatar priyeshpatel avatar rjw57 avatar

Stargazers

Zach Burnett avatar

Watchers

 avatar

tawhiri's Issues

Google Maps API Key stored in source

The Google Maps API key is hard-coded into the index.html file, which is in source control. Not only has this API key been revoked, but storing it in source in the first place is a security vulnerability. The code needs to be refactored to load the API key from a location outside source control.

Startup.sh Security Vulnerability

The startup.sh script must be owned by root with restricted group and world write permissions in order to prevent arbitrary code execution vulnerabilities at startup. It is not wise to rely on this. Need to investigate other ways of creating the /run/tawhiri directory.

UI_DIR missing

Manager.py requires the Flask.app.config to contain a key called UI_DIR, which it does not by default. This does not seem to be documented in the setup documentation.

Documentation of Setup

It seems that calling python setup.py install is necessary to get tawhiri-webapp to work properly, but this isn't called out in the docs. This might be operator error, though.

On prediction failure, map zooms to 0N 180E

If no dataset is loaded and you try to run a prediction, it results in an error, as expected. However, this error causes the map to fly to 0N 180E, which is not desirable behavior. If this error occurs, the map should remain at its current position.

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.