Data Structures | Namespaces | Functions

/export/development/ViennaGrid/release/ViennaGrid-1.0.0/viennagrid/algorithm/spanned_volume.hpp File Reference

Computes the volume of n-simplices spanned by points. More...

#include <math.h>
#include "viennagrid/forwards.h"
#include "viennagrid/algorithm/cross_prod.hpp"
#include "viennagrid/algorithm/norm.hpp"
#include "viennagrid/algorithm/inner_prod.hpp"
#include "viennagrid/traits/point.hpp"

Go to the source code of this file.

Data Structures

struct  spanned_volume_impl< PointType, 1 >
 Implementation of the volume spanned by two points in one dimension. More...
struct  spanned_volume_impl< PointType, 2 >
 Implementation of the volume of simplices spanned by points in two geometrical dimension. More...
struct  spanned_volume_impl< PointType, 3 >
 Implementation of the volume of simplices spanned by points in three geometrical dimension. 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 
spanned_volume_impl (PointType1 const &p1, PointType2 const &p2, CSystem1 const &, CSystem2 const &)
 Dispatch facility for two points with possibly different coordinate systems.
template<typename PointType1 , typename PointType2 , typename PointType3 , typename CSystem1 , typename CSystem2 , typename CSystem3 >
traits::value_type< PointType1 >
::type 
spanned_volume_impl (PointType1 const &p1, PointType2 const &p2, PointType3 const &p3, CSystem1 const &, CSystem2 const &, CSystem3 const &)
 Dispatch facility for three points with possibly different coordinate systems.
template<typename PointType1 , typename PointType2 , typename PointType3 , typename PointType4 , typename CSystem1 , typename CSystem2 , typename CSystem3 , typename CSystem4 >
traits::value_type< PointType1 >
::type 
spanned_volume_impl (PointType1 const &p1, PointType2 const &p2, PointType3 const &p3, PointType4 const &p4, CSystem1 const &, CSystem2 const &, CSystem3 const &, CSystem4 const &)
 Dispatch facility for four points with possibly different coordinate systems.
template<typename PointType1 , typename PointType2 , long d>
traits::value_type< PointType1 >
::type 
spanned_volume_impl (PointType1 const &p1, PointType2 const &p2, cartesian_cs< d >, cartesian_cs< d >)
 Dispatch facility for two points in Cartesian coordinates.
template<typename PointType1 , typename PointType2 , typename PointType3 , long d>
traits::value_type< PointType1 >
::type 
spanned_volume_impl (PointType1 const &p1, PointType2 const &p2, PointType3 const &p3, cartesian_cs< d >, cartesian_cs< d >, cartesian_cs< d >)
 Dispatch facility for three points in Cartesian coordinates.
template<typename PointType1 , typename PointType2 , typename PointType3 , typename PointType4 , long d>
traits::value_type< PointType1 >
::type 
spanned_volume_impl (PointType1 const &p1, PointType2 const &p2, PointType3 const &p3, PointType4 const &p4, cartesian_cs< d >, cartesian_cs< d >, cartesian_cs< d >, cartesian_cs< d >)
 Dispatch facility for four points in Cartesian coordinates.
template<typename PointType1 , typename PointType2 >
traits::value_type< PointType1 >
::type 
spanned_volume (PointType1 const &p1, PointType2 const &p2)
 Returns the volume of the 1-simplex (line) spanned by the two points.
template<typename PointType1 , typename PointType2 , typename PointType3 >
traits::value_type< PointType1 >
::type 
spanned_volume (PointType1 const &p1, PointType2 const &p2, PointType3 const &p3)
 Returns the two-dimensional volume of the 2-simplex (triangle) spanned by the three points.
template<typename PointType1 , typename PointType2 , typename PointType3 , typename PointType4 >
traits::value_type< PointType1 >
::type 
spanned_volume (PointType1 const &p1, PointType2 const &p2, PointType3 const &p3, PointType4 const &p4)
 Returns the three-dimensional volume of the 3-simplex (tetrahedron) spanned by the four points.

Detailed Description

Computes the volume of n-simplices spanned by points.