NiHu  2.0

declaration of class NiHu::weighted_residual More...

#include <type_traits>
#include "../tmp/bool.hpp"
#include "../util/crtp_base.hpp"
#include "result_matrix.hpp"
#include "function_space.hpp"
#include "integral_transform.hpp"
Include dependency graph for weighted_residual.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  NiHu::wr_base< Derived >
 base class of all weighted residual expressions More...
 
class  NiHu::weighted_residual< TestSpace, Projection >
 A weighted residual proxy storing a function_space and an integral_transform. More...
 
struct  NiHu::is_weighted_residual< Wr >
 metafunction determining if argument is weighted_residual expression More...
 
class  NiHu::wr_sum< Left, Right >
 the sum of two weighted residual expressions More...
 

Functions

template<class LeftWr , class RightWr >
wr_sum< typename std::enable_if< is_weighted_residual< LeftWr >::value, LeftWr >::type, typename std::enable_if< is_weighted_residual< RightWr >::value, RightWr >::type > NiHu::operator+ (LeftWr &&lhs, RightWr &&rhs)
 factory operator for sum of wr-s More...
 
template<class Test , class Proj >
weighted_residual< typename std::enable_if< is_function_space< Test >::value, Test >::type, typename std::enable_if< is_integral_transform< Proj >::value, Proj >::type > NiHu::operator* (Test &&test, Proj &&proj)
 factory operator to create a wr from a test space and an integral_transform More...
 
template<class WR , class Res >
std::enable_if< is_weighted_residual< WR >::value &&is_result_matrix< Res >::value, Res & >::type NiHu::operator<< (Res &res, WR &&wr)
 operator to evaluate a weighted residual into a result matrix More...
 

Detailed Description

declaration of class NiHu::weighted_residual

Definition in file weighted_residual.hpp.

Function Documentation

◆ operator*()

template<class Test , class Proj >
weighted_residual< typename std::enable_if<is_function_space<Test>::value, Test>::type, typename std::enable_if<is_integral_transform<Proj>::value, Proj>::type> NiHu::operator* ( Test &&  test,
Proj &&  proj 
)

factory operator to create a wr from a test space and an integral_transform

Template Parameters
Testthe test space type
Projthe integral_transform type
Parameters
[in]testthe test space reference
[in]projthe integral_transform reference
Returns
the weighted residual

Definition at line 181 of file weighted_residual.hpp.

◆ operator+()

template<class LeftWr , class RightWr >
wr_sum< typename std::enable_if<is_weighted_residual<LeftWr>::value, LeftWr>::type, typename std::enable_if<is_weighted_residual<RightWr>::value, RightWr>::type> NiHu::operator+ ( LeftWr &&  lhs,
RightWr &&  rhs 
)

factory operator for sum of wr-s

Template Parameters
LeftWrleft hand side wr
RightWrright hand side wr
Parameters
[in]lhsthe left hand side
[in]rhsthe right hand side

Definition at line 160 of file weighted_residual.hpp.

◆ operator<<()

template<class WR , class Res >
std::enable_if< is_weighted_residual<WR>::value && is_result_matrix<Res>::value, Res &>::type NiHu::operator<< ( Res &  res,
WR &&  wr 
)

operator to evaluate a weighted residual into a result matrix

Template Parameters
WRthe weighted residual
Resthe result matrix
Parameters
[in]wrthe weighted residual instance
[in,out]resthe result matrix instance
Returns
(reference to) the result matrix

Definition at line 202 of file weighted_residual.hpp.