OpenFPM_pdata  4.1.0
Project that contain the implementation of distributed structures
 
Loading...
Searching...
No Matches
FD::grid_dist_expression_op< exp1, boost::mpl::int_< n >, g_comp > Class Template Reference

it take an expression and create the negatove of this expression More...

Detailed Description

template<typename exp1, int n>
class FD::grid_dist_expression_op< exp1, boost::mpl::int_< n >, g_comp >

it take an expression and create the negatove of this expression

Definition at line 1633 of file FD_expressions.hpp.

#include <FD_expressions.hpp>

Public Types

typedef std::false_type is_ker
 
typedef exp1::gtype gtype
 
typedef boost::mpl::at< typenamegtype::value_type::type, boost::mpl::int_< exp1::prop > >::type property_act
 property on which this view is acting
 

Public Member Functions

 grid_dist_expression_op (const exp1 &o1, int(&comp)[n], int var_id)
 constructor from an expresssion
 
const gtype & getGrid () const
 Return the vector on which is acting.
 
gtype & getGrid ()
 Return the vector on which is acting.
 
void init () const
 initialize the expression tree
 
auto value (grid_dist_key_dx< gtype::dims > &key, comb< gtype::dims > &c_where) const -> decltype(get_grid_dist_expression_op< n, n==rank_gen< property_act >::type::value >::get(o1, key, c_where, comp))
 Return the result of the expression.
 
auto value_ref (grid_dist_key_dx< gtype::dims > &key, comb< gtype::dims > &c_where) const -> decltype(get_grid_dist_expression_op< n, n==rank_gen< property_act >::type::value >::get_ref(o1, key, c_where, comp))
 Return the result of the expression.
 
auto get (grid_dist_key_dx< gtype::dims > &key, comb< gtype::dims > &c_where) const -> decltype(value(key, c_where))
 Return the result of the expression.
 
template<typename Sys_eqs , typename gmap_type , typename unordered_map_type >
void value_nz (const gmap_type &g_map, grid_dist_key_dx< Sys_eqs::dims > &key, const grid_sm< Sys_eqs::dims, void > &gs, typename Sys_eqs::stype(&spacing)[Sys_eqs::dims], unordered_map_type &cols, typename Sys_eqs::stype coeff, unsigned int comp_, comb< Sys_eqs::dims > &c_where) const
 
grid_dist_expression_op< exp1, boost::mpl::int_< n+1 >, g_compoperator[] (int comp_)
 
gtype::stype get (grid_dist_key_dx< gtype::dims > &key)
 
template<unsigned int prp2, typename gtype2 , unsigned int impl>
gtype & operator= (const grid_dist_expression< prp2, gtype2, impl > &v_exp)
 Fill the vector property with the evaluated expression.
 
template<typename exp1_ , typename exp2_ , typename op >
gtype & operator= (const grid_dist_expression_op< exp1_, exp2_, op > &v_exp)
 Fill the vector property with the evaluated expression.
 
gtype & operator= (double d)
 Fill the vector property with the double.
 
int isConstant ()
 

Static Public Attributes

static const unsigned int prop = exp1::prop
 Property id of the point.
 

Private Types

typedef grid_dist_expression_op< exp1, boost::mpl::int_< n >, g_compmyself
 

Private Member Functions

void setVarId (int var_id)
 

Private Attributes

exp1 o1
 expression 1
 
int comp [n]
 component
 
int var_id = 0
 

Member Typedef Documentation

◆ gtype

template<typename exp1 , int n>
typedef exp1::gtype FD::grid_dist_expression_op< exp1, boost::mpl::int_< n >, g_comp >::gtype

Definition at line 1653 of file FD_expressions.hpp.

◆ is_ker

template<typename exp1 , int n>
typedef std::false_type FD::grid_dist_expression_op< exp1, boost::mpl::int_< n >, g_comp >::is_ker

Definition at line 1651 of file FD_expressions.hpp.

◆ myself

template<typename exp1 , int n>
typedef grid_dist_expression_op<exp1,boost::mpl::int_<n>,g_comp> FD::grid_dist_expression_op< exp1, boost::mpl::int_< n >, g_comp >::myself
private

Definition at line 1647 of file FD_expressions.hpp.

◆ property_act

template<typename exp1 , int n>
typedef boost::mpl::at<typenamegtype::value_type::type,boost::mpl::int_<exp1::prop>>::type FD::grid_dist_expression_op< exp1, boost::mpl::int_< n >, g_comp >::property_act

property on which this view is acting

Definition at line 1698 of file FD_expressions.hpp.

Constructor & Destructor Documentation

◆ grid_dist_expression_op()

template<typename exp1 , int n>
FD::grid_dist_expression_op< exp1, boost::mpl::int_< n >, g_comp >::grid_dist_expression_op ( const exp1 &  o1,
int(&)  comp[n],
int  var_id 
)
inline

constructor from an expresssion

Definition at line 1660 of file FD_expressions.hpp.

Member Function Documentation

◆ get() [1/2]

template<typename exp1 , int n>
gtype::stype FD::grid_dist_expression_op< exp1, boost::mpl::int_< n >, g_comp >::get ( grid_dist_key_dx< gtype::dims > &  key)
inline

Definition at line 1781 of file FD_expressions.hpp.

◆ get() [2/2]

template<typename exp1 , int n>
auto FD::grid_dist_expression_op< exp1, boost::mpl::int_< n >, g_comp >::get ( grid_dist_key_dx< gtype::dims > &  key,
comb< gtype::dims > &  c_where 
) const -> decltype(value(key,c_where))
inline

Return the result of the expression.

Note
this function must be deactivated on transitional objects. Suppose we are slicing a tensor of rank 2 an object of rank 1 is implicitly created for such object we have to deactivate this function because ill-formed
Parameters
keypoint where to evaluate

Definition at line 1740 of file FD_expressions.hpp.

◆ getGrid() [1/2]

template<typename exp1 , int n>
gtype & FD::grid_dist_expression_op< exp1, boost::mpl::int_< n >, g_comp >::getGrid ( )
inline

Return the vector on which is acting.

It return the vector used in getVExpr, to get this object

Returns
the vector

Definition at line 1686 of file FD_expressions.hpp.

◆ getGrid() [2/2]

template<typename exp1 , int n>
const gtype & FD::grid_dist_expression_op< exp1, boost::mpl::int_< n >, g_comp >::getGrid ( ) const
inline

Return the vector on which is acting.

It return the vector used in getVExpr, to get this object

Returns
the vector

Definition at line 1674 of file FD_expressions.hpp.

◆ init()

template<typename exp1 , int n>
void FD::grid_dist_expression_op< exp1, boost::mpl::int_< n >, g_comp >::init ( ) const
inline

initialize the expression tree

Definition at line 1692 of file FD_expressions.hpp.

◆ isConstant()

template<typename exp1 , int n>
int FD::grid_dist_expression_op< exp1, boost::mpl::int_< n >, g_comp >::isConstant ( )
inline

Definition at line 1876 of file FD_expressions.hpp.

◆ operator=() [1/3]

template<typename exp1 , int n>
template<unsigned int prp2, typename gtype2 , unsigned int impl>
gtype & FD::grid_dist_expression_op< exp1, boost::mpl::int_< n >, g_comp >::operator= ( const grid_dist_expression< prp2, gtype2, impl > &  v_exp)
inline

Fill the vector property with the evaluated expression.

Parameters
v_expexpression to evaluate
Returns
itself

Definition at line 1796 of file FD_expressions.hpp.

◆ operator=() [2/3]

template<typename exp1 , int n>
template<typename exp1_ , typename exp2_ , typename op >
gtype & FD::grid_dist_expression_op< exp1, boost::mpl::int_< n >, g_comp >::operator= ( const grid_dist_expression_op< exp1_, exp2_, op > &  v_exp)
inline

Fill the vector property with the evaluated expression.

Parameters
v_expexpression to evaluate
Returns
itself

Definition at line 1826 of file FD_expressions.hpp.

◆ operator=() [3/3]

template<typename exp1 , int n>
gtype & FD::grid_dist_expression_op< exp1, boost::mpl::int_< n >, g_comp >::operator= ( double  d)
inline

Fill the vector property with the double.

Parameters
dvalue to fill
Returns
the internal vector

Definition at line 1856 of file FD_expressions.hpp.

◆ operator[]()

template<typename exp1 , int n>
grid_dist_expression_op< exp1, boost::mpl::int_< n+1 >, g_comp > FD::grid_dist_expression_op< exp1, boost::mpl::int_< n >, g_comp >::operator[] ( int  comp_)
inline

Definition at line 1767 of file FD_expressions.hpp.

◆ setVarId()

template<typename exp1 , int n>
void FD::grid_dist_expression_op< exp1, boost::mpl::int_< n >, g_comp >::setVarId ( int  var_id)
inlineprivate

Definition at line 1642 of file FD_expressions.hpp.

◆ value()

template<typename exp1 , int n>
auto FD::grid_dist_expression_op< exp1, boost::mpl::int_< n >, g_comp >::value ( grid_dist_key_dx< gtype::dims > &  key,
comb< gtype::dims > &  c_where 
) const -> decltype(get_grid_dist_expression_op<n,n == rank_gen<property_act>::type::value>::get(o1,key,c_where,comp))
inline

Return the result of the expression.

Note
this function must be deactivated on transitional objects. Suppose we are slicing a tensor of rank 2 an object of rank 1 is implicitly created for such object we have to deactivate this function because ill-formed
Parameters
keypoint where to evaluate

Definition at line 1710 of file FD_expressions.hpp.

◆ value_nz()

template<typename exp1 , int n>
template<typename Sys_eqs , typename gmap_type , typename unordered_map_type >
void FD::grid_dist_expression_op< exp1, boost::mpl::int_< n >, g_comp >::value_nz ( const gmap_type &  g_map,
grid_dist_key_dx< Sys_eqs::dims > &  key,
const grid_sm< Sys_eqs::dims, void > &  gs,
typename Sys_eqs::stype(&)  spacing[Sys_eqs::dims],
unordered_map_type &  cols,
typename Sys_eqs::stype  coeff,
unsigned int  comp_,
comb< Sys_eqs::dims > &  c_where 
) const
inline

Definition at line 1746 of file FD_expressions.hpp.

◆ value_ref()

template<typename exp1 , int n>
auto FD::grid_dist_expression_op< exp1, boost::mpl::int_< n >, g_comp >::value_ref ( grid_dist_key_dx< gtype::dims > &  key,
comb< gtype::dims > &  c_where 
) const -> decltype(get_grid_dist_expression_op<n,n == rank_gen<property_act>::type::value>::get_ref(o1,key,c_where,comp))
inline

Return the result of the expression.

Note
this function must be deactivated on transitional objects. Suppose we are slicing a tensor of rank 2 an object of rank 1 is implicitly created for such object we have to deactivate this function because ill-formed
Parameters
keypoint where to evaluate

Definition at line 1725 of file FD_expressions.hpp.

Field Documentation

◆ comp

template<typename exp1 , int n>
int FD::grid_dist_expression_op< exp1, boost::mpl::int_< n >, g_comp >::comp[n]
private

component

Definition at line 1639 of file FD_expressions.hpp.

◆ o1

template<typename exp1 , int n>
exp1 FD::grid_dist_expression_op< exp1, boost::mpl::int_< n >, g_comp >::o1
private

expression 1

Definition at line 1636 of file FD_expressions.hpp.

◆ prop

template<typename exp1 , int n>
const unsigned int FD::grid_dist_expression_op< exp1, boost::mpl::int_< n >, g_comp >::prop = exp1::prop
static

Property id of the point.

Definition at line 1656 of file FD_expressions.hpp.

◆ var_id

template<typename exp1 , int n>
int FD::grid_dist_expression_op< exp1, boost::mpl::int_< n >, g_comp >::var_id = 0
private

Definition at line 1641 of file FD_expressions.hpp.


The documentation for this class was generated from the following file: