Image from Wikipedia: A tornado near Anadarko, Oklahoma, 1999. The funnel is the thin tube reaching from the cloud to the ground. The lower part of this tornado is surrounded by a translucent dust cloud, kicked up by the tornado's strong winds at the surface. The wind of the tornado has a much wider radius than the funnel itself.
This repository 1 contains statistical models for forecasting tornadoes.
If you want to collaborate and create a model, please clone this repository via:
git clone [email protected]:AFg6K7h4fhy2/Forecasting-Tornadoes.git
and then create a new branch with your model git checkout -b <your_branch>
. If you have feedback for the authors of this repository, please make an issue.
This repository uses poetry
for dependency management. To install poetry, you can run pipx install poetry
2. And to activate the environment for this repository, run poetry install
. If you would like to learn more about where poetry
is installing the dependencies associated with this project, please run poetry env info --path
.
The canonical structure for building and documenting a model in this repository is as follows:
- Create a branch with your model name:
git checkout -b model_example_01
- Create a new folder in the
models
directory:cd model
,mkdir model_example_01
,cd model_example_01
- Within your model directory, create
src
,test
, andout
folder, and aparams.toml
file.- Within
src
, create arun.py
andmodel.py
file, whererun.py
performs ETL tasks, model execution, and post-processing tasks andmodel.py
contains the model, which will typically be written in NumPyro. Output should be written toout
. You can write an additionalutils
. - The optional
test
folder should containtests
written viapytest
. - The
params.toml
file should contain parameters and values used in the modeling process (this is a config file).
- Within
- Write a model description in
./website/posts
. Follow existing examples for theyaml
header of the.qmd
file. - Update your edits and modifications (hopefully not in a single commit!):
git add -A
;git commit -m <message>
;git push -u origin <model_example_01>
. To have your model onmain
, please make a pull request.
Footnotes
-
Lightweight repositories for forecasting and inference, such as this one (usually created by @AFg6K7h4fhy2), are typically made as experimental test units for tackling Metaculus questions with statistical modeling or for the sake of the collaborators' understanding of statistical methods. ↩