Skip to content
Snippets Groups Projects
Commit b2ab39d0 authored by Dennis Gläser's avatar Dennis Gläser
Browse files

[mpfa][localassemblerbase] add function to reconstruct face unknowns

parent 9c58d0cf
No related branches found
No related tags found
1 merge request!1325Feature/mpfa-scv-gradient-reconstruction
...@@ -138,6 +138,29 @@ class InteractionVolumeAssemblerBase ...@@ -138,6 +138,29 @@ class InteractionVolumeAssemblerBase
DUNE_THROW(Dune::NotImplemented, "Implementation does not provide a assemble() function for the cell/Dirichlet unknowns"); DUNE_THROW(Dune::NotImplemented, "Implementation does not provide a assemble() function for the cell/Dirichlet unknowns");
} }
/*!
* \brief Assembles the vector of face unknowns within an interaction volume.
* \note This requires the data handle to be fully assembled already.
*
* \param handle The data handle in which the vector is stored
* \param iv The interaction volume
*/
template< class DataHandle, class IV >
static typename IV::Traits::MatVecTraits::FaceVector
assembleFaceUnkowns(const DataHandle& handle, const IV& iv)
{
typename IV::Traits::MatVecTraits::FaceVector u;
resizeVector_(u, iv.numFaces());
handle.AB().mv(handle.uj(), u);
// maybe add gravity terms
if (handle.deltaG().size() == iv.numUnknowns())
handle.AB().umv(handle.deltaG(), u);
return u;
}
/*! /*!
* \brief Assembles the gravitational flux contributions on the scvfs within an * \brief Assembles the gravitational flux contributions on the scvfs within an
* interaction volume. * interaction volume.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment