5#ifndef DUNE_RT02DLOCALINTERPOLATION_HH 
    6#define DUNE_RT02DLOCALINTERPOLATION_HH 
   19  class RT02DLocalInterpolation
 
   24    RT02DLocalInterpolation (std::bitset<3> s = 0)
 
   27      for (std::size_t i=0; i<sign_.size(); i++)
 
   28        sign_[i] = (s[i]) ? -1.0 : 1.0;
 
   35      n_[2] = {1.0/sqrt(2.0), 1.0/sqrt(2.0)};
 
   36      c_[0] = ( 0.5*n_[0][0] - 1.0*n_[0][1]);
 
   37      c_[1] = (-1.0*n_[1][0] + 0.5*n_[1][1]);
 
   38      c_[2] = ( 0.5*n_[2][0] + 0.5*n_[2][1]);
 
   41    template<
typename F, 
typename C>
 
   42    void interpolate (
const F& f, std::vector<C>& out)
 const 
   48      for (
int i=0; i<3; i++)
 
   51        out[i] = (y[0]*n_[i][0]+y[1]*n_[i][1])*sign_[i]/c_[i];
 
   57    std::array<typename LB::Traits::RangeFieldType,3> sign_;
 
   59    std::array<typename LB::Traits::DomainType,3> m_;
 
   61    std::array<typename LB::Traits::DomainType,3> n_;
 
   63    std::array<typename LB::Traits::RangeFieldType,3> c_;
 
Dune namespace.
Definition: alignedallocator.hh:13