A linear system assembler (residual and Jacobian) for staggered finite volume schemes. This is basically just a wrapper for the MultiDomainFVAssembler which simplifies the set-up of uncoupled problems using the staggered scheme. More...
#include <dumux/assembly/staggeredfvassembler.hh>
| TypeTag | the TypeTag | 
| diffMethod | the differentiation method to residual compute derivatives | 
| isImplicit | if to use an implicit or explicit time discretization | 
| Public Types | |
| using | GridGeometry = GetPropType<TypeTag, Properties::GridGeometry> | 
| using | GridVariables = GetPropType<TypeTag, Properties::GridVariables> | 
| using | CouplingManager = typename ParentType::CouplingManager | 
| using | ResidualType | 
| using | SolutionVector | 
| using | Traits | 
| using | Scalar | 
| using | LocalResidual | 
| using | JacobianMatrix | 
| Public Member Functions | |
| StaggeredFVAssembler (std::shared_ptr< const Problem > problem, std::shared_ptr< const GridGeometry > gridGeometry, std::shared_ptr< GridVariables > gridVariables) | |
| The constructor for stationary problems. | |
| StaggeredFVAssembler (std::shared_ptr< const Problem > problem, std::shared_ptr< const GridGeometry > gridGeometry, std::shared_ptr< GridVariables > gridVariables, std::shared_ptr< const TimeLoop > timeLoop, const SolutionVector &prevSol) | |
| The constructor for time-dependent problems. | |
| auto & | gridVariables () | 
| const auto & | gridVariables () const | 
| const GridGeometry & | gridGeometry () const | 
| void | assembleJacobianAndResidual (const SolutionVector &curSol) | 
| Assembles the global Jacobian of the residual and the residual for the current solution. | |
| void | assembleResidual (const SolutionVector &curSol) | 
| compute the residuals using the internal residual | |
| void | assembleResidual (ResidualType &r, const SolutionVector &curSol) | 
| assemble a residual r | |
| void | setLinearSystem (std::shared_ptr< JacobianMatrix > A, std::shared_ptr< ResidualType > r) | 
| Tells the assembler which jacobian and residual to use. This also resizes the containers to the required sizes and sets the sparsity pattern of the jacobian matrix. | |
| void | setLinearSystem () | 
| The version without arguments uses the default constructor to create the jacobian and residual objects in this assembler if you don't need them outside this class. | |
| void | setJacobianBuildMode (JacobianMatrix &jac) const | 
| Sets the jacobian build mode. | |
| void | updateAfterGridAdaption () | 
| Resizes jacobian and residual and recomputes colors. | |
| void | updateGridVariables (const SolutionVector &curSol) | 
| Updates the grid variables with the given solution. | |
| void | resetTimeStep (const SolutionVector &curSol) | 
| Resets the grid variables to the last time step. | |
| std::size_t | numDofs (Dune::index_constant< i > domainId) const | 
| the number of dof locations of domain i | |
| const auto & | problem (Dune::index_constant< i > domainId) const | 
| the problem of domain i | |
| const auto & | gridGeometry (Dune::index_constant< i > domainId) const | 
| the finite volume grid geometry of domain i | |
| const auto & | gridView (Dune::index_constant< i > domainId) const | 
| the grid view of domain i | |
| GridVariables< i > & | gridVariables (Dune::index_constant< i > domainId) | 
| the grid variables of domain i | |
| const GridVariables< i > & | gridVariables (Dune::index_constant< i > domainId) const | 
| the grid variables of domain i | |
| const CouplingManager & | couplingManager () const | 
| the coupling manager | |
| JacobianMatrix & | jacobian () | 
| the full Jacobian matrix | |
| ResidualType & | residual () | 
| the full residual vector | |
| const SolutionVector & | prevSol () const | 
| the solution of the previous time step | |
| void | setTimeManager (std::shared_ptr< const TimeLoop > timeLoop) | 
| Set time loop for instationary problems. | |
| void | setPreviousSolution (const SolutionVector &u) | 
| Sets the solution from which to start the time integration. Has to be called prior to assembly for time-dependent problems. | |
| bool | isStationaryProblem () const | 
| Whether we are assembling a stationary or instationary problem. | |
| LocalResidual< i > | localResidual (Dune::index_constant< i > domainId) const | 
| Create a local residual object (used by the local assembler) | |
| Static Public Member Functions | |
| static constexpr bool | isImplicit () | 
| Returns true if the assembler considers implicit assembly. | |
| Protected Attributes | |
| std::shared_ptr< CouplingManager > | couplingManager_ | 
| the coupling manager coupling the sub domains | |
| using Dumux::StaggeredFVAssembler< TypeTag, diffMethod, isImplicit >::CouplingManager = typename ParentType::CouplingManager | 
| using Dumux::StaggeredFVAssembler< TypeTag, diffMethod, isImplicit >::GridGeometry = GetPropType<TypeTag, Properties::GridGeometry> | 
| using Dumux::StaggeredFVAssembler< TypeTag, diffMethod, isImplicit >::GridVariables = GetPropType<TypeTag, Properties::GridVariables> | 
| 
 | inherited | 
| 
 | inherited | 
| using Dumux::MultiDomainFVAssembler< StaggeredMultiDomainTraits< TypeTag, TypeTag >, StaggeredCouplingManager< StaggeredMultiDomainTraits< TypeTag, TypeTag > >, diffMethod, useImplicitAssembly >::ResidualType | 
| 
 | inherited | 
| using Dumux::MultiDomainFVAssembler< StaggeredMultiDomainTraits< TypeTag, TypeTag >, StaggeredCouplingManager< StaggeredMultiDomainTraits< TypeTag, TypeTag > >, diffMethod, useImplicitAssembly >::SolutionVector | 
| 
 | inherited | 
| 
 | inline | 
| 
 | inline | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inline | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inline | 
| 
 | inline | 
| 
 | inlineinherited | 
| 
 | inlinestaticconstexprinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | protectedinherited |