Skip to content

Latest commit

 

History

History
77 lines (56 loc) · 2.41 KB

ToDo.md

File metadata and controls

77 lines (56 loc) · 2.41 KB

TO DO

Docker environments

  • Dockerfile: needs mpirun in the path (0.5)
  • Dockerfile: needs to have the proper token stuff for Jupyter (0.5)
  • Dockerfile: add the help script etc.
  • Separate binder version (branch) (0.6)

CI /CD

  • Github actions for testing, deployment / docs
  • PyPi wheels
  • Conda wheels

MeshVariable implementation:

  • MeshVariable: add print function to output array value __str__ and __repr__ (0.5)
  • MeshVariable: add gradient and interpolation / evaluate methods (0.5)
  • mesh.add_variable ... cf underworld (0.5)

Functions

  • eliminate need for mesh in parameter functions (0.6)
  • expose DM labels as functions / meshVariables
  • dependency tracking (useful for non-linearity detection in solvers) (0.7)
  • human-readable naming for fns (meshes / solvers too) (0.7)
  • store values at each evaluate statement to reuse (?)
  • Sympy integration (for differentiation !) (for 1.x)

Meshing

  • Pixmesh: add an interpolate method.
  • Spherical meshing framework (0.8)

Scaling

  • Add scaling module - i.e. from quagmire import scaling (0.6)
  • Integrate scaling into MeshVariable view / getter
  • Integrate scaling into meshes
  • Save / Load ? Scaling dictionary ?

Input / output

  • Save xmf files for Paraview (0.7)
  • Save xmf time series (0.7)
  • Save / load project file (.quag ?) (0.7)
  • Check if hdf5 is a valid viewer for PETSc (should not crash completely)

Equation solvers

  • Explicit
    • Diffusion (0.6)
      • Linear, constant diffusivity + benchmark (0.6)
      • Spatially variable diffusity + example (0.6)
      • Non-linear diffusivity
      • Timestep for non-linear case (meaning of provided step ?)
      • Semi-implicit (?)
    • Erosion-deposition (0.7)
      • Erosion / deposition governing equations + example (0.7)
      • Linear, constant erodability (0.7)
      • Spatially verying erodability (0.7)
    • Integrated erosion-deposition-diffusion time stepping

Testing

  • Example notebooks with reasonable coverage - all passing
  • Unit test scripts (serial)
  • Unit test scripts (parallel)

Visualisation

  • lavavu examples (0.3)
  • lavavu parallel wrappers (cf gLucifer)
  • lavavu mesh variable wrappers (cf gLucifer)
  • lavavu + shapely for maps (?)