![]() |
Multiscale Universal Interface
2.0
A Concurrent Framework for Coupling Heterogeneous Solvers
|
Container structure for a point data type, including specialism and manipulation. More...
#include <array>#include <cmath>#include <cassert>

Go to the source code of this file.
Classes | |
| struct | mui::same_type< T1, T2 > |
| struct | mui::same_type< T, T > |
| struct | mui::vexpr< VEX, SCALAR, D > |
| struct | mui::point< SCALAR, D > |
| struct | mui::vexpr_add< E1, E2, SCALAR, D > |
| struct | mui::vexpr_sub< E1, E2, SCALAR, D > |
| struct | mui::vexpr_neg< E, SCALAR, D > |
| struct | mui::vexpr_mul< E1, E2, SCALAR, D > |
| struct | mui::vexpr_scale< E, SCALAR, D > |
| struct | mui::vexpr_div< E1, E2, SCALAR, D > |
| struct | mui::vexpr_rscale< E, SCALAR, D > |
| struct | mui::vexpr_rcp< E, SCALAR, D > |
| struct | mui::vexpr_scale_rcp< E, SCALAR, D > |
| struct | mui::vexpr_apply1< E, OP, SCALAR, D > |
| struct | mui::vexpr_apply2< E1, E2, OP, SCALAR, D > |
Namespaces | |
| mui | |
Typedefs | |
| using | mui::ulong = unsigned long |
Functions | |
| template<class E1 , class E2 , typename SCALAR , uint D> | |
| vexpr_add< E1, E2, SCALAR, D > | mui::operator+ (vexpr< E1, SCALAR, D > const &u, vexpr< E2, SCALAR, D > const &v) |
| template<class E1 , class E2 , typename SCALAR , uint D> | |
| vexpr_sub< E1, E2, SCALAR, D > | mui::operator- (vexpr< E1, SCALAR, D > const &u, vexpr< E2, SCALAR, D > const &v) |
| template<class E , typename SCALAR , uint D> | |
| vexpr_neg< E, SCALAR, D > | mui::operator- (vexpr< E, SCALAR, D > const &u) |
| template<class E1 , class E2 , typename SCALAR , uint D> | |
| vexpr_mul< E1, E2, SCALAR, D > | mui::operator* (vexpr< E1, SCALAR, D > const &u, vexpr< E2, SCALAR, D > const &v) |
| template<class E , typename SCALAR , uint D> | |
| vexpr_scale< E, SCALAR, D > | mui::operator* (vexpr< E, SCALAR, D > const &u, SCALAR const a) |
| template<class E , typename SCALAR , uint D> | |
| vexpr_scale< E, SCALAR, D > | mui::operator* (SCALAR const a, vexpr< E, SCALAR, D > const &u) |
| template<class E , typename SCALAR , uint D> | |
| vexpr_scale< E, SCALAR, D > | mui::operator/ (vexpr< E, SCALAR, D > const &u, SCALAR const a) |
| template<class E1 , class E2 , typename SCALAR , uint D> | |
| vexpr_div< E1, E2, SCALAR, D > | mui::operator/ (vexpr< E1, SCALAR, D > const &u, vexpr< E2, SCALAR, D > const &v) |
| template<class E , typename SCALAR , uint D> | |
| vexpr_scale_rcp< E, SCALAR, D > | mui::operator/ (SCALAR const a, vexpr< E, SCALAR, D > const &u) |
| template<class E1 , class E2 , typename SCALAR > | |
| point< SCALAR, 3U > | mui::cross (vexpr< E1, SCALAR, 3U > const &u, vexpr< E2, SCALAR, 3U > const &v) |
| template<class E , class OP , typename SCALAR , uint D> | |
| SCALAR | mui::reduce (vexpr< E, SCALAR, D > const &u, OP const &op) |
| template<class E , typename SCALAR , uint D> | |
| SCALAR | mui::max (vexpr< E, SCALAR, D > const &u) |
| template<class E , typename SCALAR , uint D> | |
| SCALAR | mui::min (vexpr< E, SCALAR, D > const &u) |
| template<class E , typename SCALAR , uint D> | |
| SCALAR | mui::sum (vexpr< E, SCALAR, D > const &u) |
| template<class E , typename SCALAR , uint D> | |
| SCALAR | mui::mean (vexpr< E, SCALAR, D > const &u) |
| template<class E1 , class E2 , typename SCALAR , uint D> | |
| SCALAR | mui::dot (vexpr< E1, SCALAR, D > const &u, vexpr< E2, SCALAR, D > const &v) |
| template<class E , typename SCALAR , uint D> | |
| SCALAR | mui::normsq (vexpr< E, SCALAR, D > const &u) |
| template<class E , typename SCALAR , uint D> | |
| SCALAR | mui::norm (vexpr< E, SCALAR, D > const &u) |
| template<class E , class OP , typename SCALAR , uint D> | |
| vexpr_apply1< E, OP, SCALAR, D > | mui::apply (vexpr< E, SCALAR, D > const &u, OP const &op) |
| template<class E1 , class E2 , class OP , typename SCALAR , uint D> | |
| vexpr_apply2< E1, E2, OP, SCALAR, D > | mui::apply (vexpr< E1, SCALAR, D > const &u, vexpr< E2, SCALAR, D > const &v, OP const &op) |
Container structure for a point data type, including specialism and manipulation.