It model an expression expr1 * expr2. More...
It model an expression expr1 * expr2.
| expr1 | |
| expr2 |
#include <mul.hpp>
Public Types | |
|
typedef boost::mpl::vector < expr... > | v_expr |
| Transform from variadic template to boost mpl vector. | |
|
typedef boost::mpl::size < v_expr >::type | v_sz |
| size of v_expr | |
|
typedef boost::mpl::at< v_expr, boost::mpl::int_ < v_sz::type::value-1 > >::type | Sys_eqs |
| type on which this expression operate | |
Static Public Member Functions | |
| static void | value (const grid_dist_id< Sys_eqs::dims, typename Sys_eqs::stype, aggregate< size_t >, typename Sys_eqs::b_grid::decomposition::extended_type > &g_map, grid_dist_key_dx< Sys_eqs::dims > &kmap, const grid_sm< Sys_eqs::dims, void > &gs, typename Sys_eqs::stype(&spacing)[Sys_eqs::dims], std::unordered_map< long int, typename Sys_eqs::stype > &cols, typename Sys_eqs::stype coeff) |
| Calculate which colums of the Matrix are non zero. More... | |
| static grid_key_dx< Sys_eqs::dims > | position (grid_key_dx< Sys_eqs::dims > &pos, const grid_sm< Sys_eqs::dims, void > &gs, const comb< Sys_eqs::dims >(&s_pos)[Sys_eqs::nvar]) |
| Calculate the position in the cell where the mul operator is performed. More... | |
|
inlinestatic |
Calculate the position in the cell where the mul operator is performed.
it just return the position of the staggered property in the last expression
| pos | position where we are calculating the derivative |
| gs | Grid info |
| s_pos | staggered position of the properties |
|
inlinestatic |
Calculate which colums of the Matrix are non zero.
| g_map | mapping grid |
| kmap | position where the multiplication is calculated |
| gs | Grid info |
| spacing | of the grid |
| cols | non-zero colums calculated by the function |
| coeff | coefficent (constant in front of the derivative) |
Last element of multiplication