godunov 0.1.0

Godunov's method in Rust.
docs.rs failed to build godunov-0.1.0
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.

Use Godunov's method to solve linear partial differential equations in 1D.

Godunov's idea:

  1. Discretize domain into non-overlapping cells.
  2. Compute average of the initial condition in each cell.
  3. Solve a Riemann problem on each boundary to find the fluxes.
  4. Advance each cell average.

This implementation uses simple convective upwinding.

Properties

Godunov's method is 1st-order in space and time. Twice as many cells cuts the error in half.

When would I use this?

This scheme was cutting edge in 1959. These days, it's used as a basis for more advanced methods.

That said, it's a classic result from one of the founding fathers of computational fluid dynamics.