Computes the inner product of vectors. More...
#include "viennagrid/forwards.h"
#include "viennagrid/traits/point.hpp"
#include "viennagrid/point.hpp"
Go to the source code of this file.
Data Structures | |
struct | inner_prod_impl< PointType, 1 > |
Implementation of the inner product in one dimension. More... | |
struct | inner_prod_impl< PointType, 2 > |
Implementation of the inner product in two dimensions. More... | |
struct | inner_prod_impl< PointType, 3 > |
Implementation of the inner product in three dimensions. More... | |
Namespaces | |
namespace | viennagrid |
The main ViennaGrid namespace. Most functionality resides in this namespace. | |
namespace | viennagrid::detail |
The namespace holding the implementations of domains, segments and ncells as well as some algorithm implementations. Not of interest for library users. | |
Functions | |
template<typename PointType1 , typename PointType2 , typename CSystem1 , typename CSystem2 > | |
traits::value_type< PointType1 > ::type | inner_prod_impl (PointType1 const &p1, PointType2 const &p2, CSystem1 const &, CSystem2 const &) |
Dispatched inner product function having full information about the coordinate systems. Transforms to Cartesian coordinates and forwards the calculation to the worker. | |
template<typename PointType1 , typename PointType2 , long d> | |
traits::value_type< PointType1 > ::type | inner_prod_impl (PointType1 const &p1, PointType2 const &p2, cartesian_cs< d >, cartesian_cs< d >) |
Dispatched inner product function having full information about the coordinate systems. Vectors/Points are in a Cartesian coordinate system already, thus no transformation required. | |
template<typename PointType1 , typename PointType2 > | |
traits::value_type< PointType1 > ::type | inner_prod (PointType1 const &p1, PointType2 const &p2) |
Returns the inner product of two vectors, which can be given in different coordinate systems. |
Computes the inner product of vectors.