Giter Club home page Giter Club logo

windninja's Introduction

WindNinja

example workflow DOI

WindNinja is a diagnostic wind model developed for use in wildland fire modeling.

Web: http://firelab.org/project/windninja

Source & wiki: https://github.com/firelab/windninja

FAQ: https://github.com/firelab/windninja/wiki/Frequently-Asked-Questions

IRC: irc://irc.freenode.net/#windninja

Building on Linux

Building on Windows

Directories:

  • autotest -> testing suite
  • cmake -> cmake support scripts
  • data -> testing data
  • doc -> documentation
  • images -> splash image and icons for gui
  • src -> source files

Dependencies (versions are versions we build against for the Windows installer):

  • Boost 1.46:
    • boost_date_time
    • boost_program_options
    • boost_test
  • NetCDF 4.1.1
  • GDAL 2.2.2
    • NetCDF support
    • PROJ.4 support
    • GEOS support
    • CURL support
  • Qt 4.8.5
    • QtGui
    • QtCore
    • QtNetwork/Phonon
    • QtWebKit
  • OpenFOAM 2.2.x

See INSTALL for more information (coming soon)

See CREDITS for authors

See NEWS for release information

========= Example output

windninja's People

Contributors

chrismarsh avatar greynathan avatar hdiaz-tsyl avatar hged13 avatar jeffreycunn avatar jforthofer avatar ksshannon avatar latwood avatar lmnn3 avatar masonwillman avatar nc410 avatar nicknc410 avatar nwagenbrenner avatar ofirgan avatar pcmehlitz avatar ruizhang-kwf8 avatar sandiadedia avatar santiagomonedero avatar stubrittain avatar tfinney9 avatar yokohono avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

windninja's Issues

delete ninja after each run

I added this for runs where a multiband geotiff output is specified (dust simulations) to reduce memory. We should probably do this for wx model runs (the only other case where ninjas.size() > 1) too, but there is some issue with deleting the last ninja of those runs.

Add data file for nomads wx models

This will allow update without recompile. It wouldn't be much work, and could be binary or human readable (sqlite or xml). SQLite would be easier to implement, CPLXML* could handle xml parsing. The file could be used as a default override for hardcoded values, or user supplied.

Fix version file.

Use better #defines, and write major, minor, patch:

#define WINDNINJA_VERSION_MAJOR        2
#define WINDNINJA_VERSION_MINOR        5
#define WINDNINJA_VERSION_PATCH        0
#define WINDNINJA_VERSION_STRING       "2.5.0" //from above defines.
#define WINDNINJA_GIT_REVISION             "3fc1dfd955c2d6220b1434ed3d8487515905f671"

change the filename to windninja_version.h

Point Initialization with stability=on doesn't converge

Point initialization with stability on and diurnal on doesn't seem to converge for the mackay test case. It appears the simulation starts to bounce between negative and positive diffs (difference between measured and simulated values at points).

Testing plans for WindNinja

A testing protocol should be developed before releases. Basically a list of human-run tests with feedback. Run all weather models, all data download, etc. As tests get merged into the autotesting suite, we can discard them. We'll all have to work on the testing, but Jason gives the last OK.

Time zone data unsynced

The boost time zone data base and the tzinfo generated shapefile aren't completely in sync. Unfortuneately, I don't think there is an obvious fix. Boost doesn't make a spatial file, and the available shapefile is based on tzinfo. Generating a boost compatible csv from the tzinfo data seems like a possible alternative. This stems from #25 where the zone from the map had an 'extra' 'Argentina' in the name, and the boost spec did not.

Implement progress and cancel in gdal_fetch

We need to add a progress callback that allows for cancelling. We can use GDALProgressFunc() and kin. Currently the DEM downloader window can be cancelled, but it just leaves the process running.

NOMADS GFS run fails

The simulation blows up after pushing the solve button. Info:
Windows 64-bit release version
mackay.tif
trees
coarse
America/Boise
diurnal off
stability off
wx model initialization
NOMADS-GFS-GLOBAL-0.25-DEG
6 hrs download
google earth checked
threads = 8

When it blows up, "Generating mesh..." is the last thing written in the console.

Possibly remove VTK from GUI

Do we need this output in the GUI? I think we can remove this, or conditionally compile it. We just have to explain that users shouldn't use it.

add option to write config file from GUI settings

It would be very useful to have an option in the GUI to write a config file using the current GUI settings. This would be especially useful to help us replicate problems users are having. Also, this could be the start of a File->Save As type feature to save run settings.

Minor naming inconsistencies with shapefile outputs

This is definitely somewhat trivial but while creating server-side and client UI for the output, consistency in the naming pattern makes coding a little easier and less error prone to all the different flavors. I haven't checked all the models or other output types but here's what we see:

FIRST: Ninja outputs vs Wx outputs

Ninja output files are named in the pattern:
{surface file}{date}{time}_{grid?}

Wx model output files are named in the pattern:
{model name}-{date}_{time}

Finding date/time in both requires two different patterns. The model names have underscores in them so that presents a problem for using the underscore as the consistent separator... maybe dot? not sure how the other platforms like dots inside the files names.

SECOND: Wx model name prefixes
NOMADS and UCAR models write their wx shapefile outputs differently as well:
NOMADS: hrrr_conus-02-17-2015_2000
UCAR: UCAR-NAM-CONUS-12-KM-02-17-2015_1700

In this case it would be nice to regurgitate the entire model name consistently.

Nit-picky stuff but these are some of the things we bump into creating workflows downstream of the output.

Output height exceeds mesh domain

Imported from svn:

On small DEM files, this can happen causing an invalid read. See r3251, r3252 and r3253 for fixes and assertions in trunk/branches/2.4

Wx models should allow subsetting in time

We need to implement start, stop, stride as times and time deltas. Currently, we just use an end time. We go back to the last available forecast run, and do each time step until we are told to stop. So if the user asks for 6 hours of forecast from NAM, and the last run was 3 hours ago, they'd get 9 runs, when They'd probably expect 6. Additionally, we should allow for stride setting, so we can use higher spatial res models for fewer runs (eg HRRR). This is semi-implemented in the NOMADS fetcher, at least exposed in the NomadsFetch routine, but not tested, nor implemented in the actual interface. This will cut down on runs if we ever initialize OpenFOAM runs with a wx model.

Case file for windninja

Design and implement a case file.

  • Case files will be optional.
  • Case files will be immutable.
  • Users can load an existing file but not save back to it, unless they overwrite the old.
  • Output grids will be saved to the file.

Problem using internet features of WindNinja when a proxy server is used.

This problem occurred in Sardinia on computers that were using a proxy server on the LAN settings. This setup required every program that used the internet to authenticate to allow internet access. So, for example, each time Internet Explorer or Google Earth was started, a pop up box opened asking for the username and password. This was required EACH TIME the program was opened. When WindNinja was run, this pop up box did not open, and so the internet features of WindNinja didn't work (DEM grabber, some GDAL features, wx model downloads).
To test possible fixes, we can send installers to Michele Salis in Sardinia, he can test this every Thursday during his class.

high NDFD values

When trying to run WindNinja 2.4.0 with NDFD downloaded data for hour values ranging from 120-168 (5-7 days out), the program cannot solve. I'm quite certain the issue is with this particular parameter, as I have tested varying locations and DEM resolutions.

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.