IDEAS
Settle dataflows and formats (pts, dem, msh, sww, etc) (Ole)
finaltime to be renamed duration ?
Move test_all.py from pyvolution down to inundation level
Making methods private, using _private or write the API in a separate module.
Introduce create_quantity in domain.py: (Ole)
It will make a new named instance and populate it by calling set_quantity if desired. Create_quantity would be called automatically by shallow_water.
Make stage appear as any other quantity: Either
1: Make stage a subclass of quantity having knowledge of elevation and a special
limiter (or more limiters)
Or
2: Equip each quantity with a limiter class
(Con: A limiter for stage should never be applied to any other quantity)
Also, investigate if Quantity and Conserved_quantity should be one class (Steve).
Finally, reconcile the optimised gradient limiter of Matt's with the more general framework (see wiki:NumericalIssues)
Boundary (Dirichlet): Think about specifying values by quantity name (and having defaults)
Dirichlet(stage = 1.0, ymomentum = 0.2)
Finish MOST2SWW with bathymetry as one script
Make Steve's new boundary spatially dependent (Ole)
Look at matplotlib's verbosity object. It looks great.
Should we remove Python code superseded by C-extensions?
- Pros: Leaner code and no risk
- Cons: Less readable algorithms
Move py code into files such as quantity_ext.py and have python wrappers with doc strings for all functions. Name the code in extensions _ext and conditional import as usual.
Generally separate file_format stuff from functionality (and work with a small number of formats)
Have a .tms format for straight timeseries, use sww for f(t,x,y). Modify Interpolation function and file_function accordingly. (Use lwru2.py as test bed) (Done by Ole)