Workflow in FV
In order to create a Finite Volume problem you have several options you should think through and decide:
Geometry, i.e. the cells and interfaces on which your finite volume problem is defined can be generated in two ways:- prior using this guide
- on the fly: passing arguments to
VoronoiFVProblemin the third step below as if it was aVoronoiGeometry.
- You may whish to define some step functions or interface function or any type of customized functions from integrated data using this guide
- Create a
VoronoiFVProblem(if not done in first step)- provide the
VoronoiGeometry - optionally provide
integralfunctionswhose values are infered on cells and interfaces using the chosen integration method - optionally provide
discretefunctionswhose values are infered by pointwise evaluation - optionally provide
fluxesas a named tuple of description how fluxes should be calculated using this guide - optionally provide
rhs_functionsa named tuple of descriptions how to compute a potential right hand side in the FV problem using this guide - optionally provide
bulk_integralsas a way to integrate a function over the tessellation using this guide - optionally provide
flux_integralsas a way to integrate a function over the interfaces of the tessallation using this guide
- provide the
- You may whish to define some more step functions or interface function or any type of customized functions from integrated data using this guide and the integrate information in
VoronoiFVProblemusing this guide - Call
linearVoronoiFVProblemwith a given description of fluxes and right hand sides provided byVoronoiFVProblemand your favorite boundary conditions using this guide. (caution: since boundary conditions rely on a given boundary, the periodic boundary conditions are subject ofVoronoiGeometry, resp.Boundary, so this has to be implemented in the very first step.)