dune-fem 2.8.0
Loading...
Searching...
No Matches
Namespaces | Functions
common/interpolate.hh File Reference
#include <algorithm>
#include <type_traits>
#include <utility>
#include <dune/common/typetraits.hh>
#include <dune/grid/common/partitionset.hh>
#include <dune/grid/common/rangegenerators.hh>
#include <dune/fem/common/bindguard.hh>
#include <dune/fem/function/common/discretefunction.hh>
#include <dune/fem/function/common/gridfunctionadapter.hh>
#include <dune/fem/function/common/localcontribution.hh>
#include <dune/fem/function/localfunction/const.hh>
#include <dune/fem/space/common/capabilities.hh>
#include <dune/fem/space/common/localinterpolation.hh>

Go to the source code of this file.

Namespaces

namespace  Dune
 
namespace  Dune::Fem
 

Functions

template<class GridFunction , class DiscreteFunction >
static void Dune::Fem::interpolate (const GridFunction &u, DiscreteFunction &v)
 perform native interpolation of a discrete function space
 
template<class Function , class DiscreteFunction , unsigned int partitions>
static std::enable_if_t< !std::is_convertible< Function, HasLocalFunction >::value > Dune::Fem::interpolate (const Function &u, DiscreteFunction &v, PartitionSet< partitions > ps)
 
template<class GridFunction , class DiscreteFunction , unsigned int partitions>
static std::enable_if_t< std::is_convertible< GridFunction, HasLocalFunction >::value &&Capabilities::hasInterpolation< typename DiscreteFunction::DiscreteFunctionSpaceType >::v > Dune::Fem::interpolate (const GridFunction &u, DiscreteFunction &v, PartitionSet< partitions > ps)
 
template<class GridFunction , class DiscreteFunction , class Weight >
static auto Dune::Fem::interpolate (const GridFunction &u, DiscreteFunction &v, Weight &&weight) -> std::enable_if_t< !std::is_const< std::remove_reference_t< Weight > >::value >
 
template<class GridFunction , class DiscreteFunction , class Weight >
static auto Dune::Fem::interpolate (const GridFunction &u, DiscreteFunction &v, Weight &&weight, DiscreteFunction &w) -> std::enable_if_t< std::is_base_of< HasLocalFunction, GridFunction >::value &&Capabilities::hasInterpolation< typename DiscreteFunction::DiscreteFunctionSpaceType >::v, void_t< decltype(std::declval< Weight >().setEntity(std::declval< const typename DiscreteFunction::DiscreteFunctionSpaceType::EntityType & >())) > >