ViennaGrid - The Vienna Grid Library  2.1.0
Namespaces | Functions
viennagrid/algorithm/circumcenter.hpp File Reference

Computes the circumcenter of n-cells. More...

#include <iostream>
#include <sstream>
#include <string>
#include <stdexcept>
#include "viennagrid/forwards.hpp"
#include "viennagrid/algorithm/spanned_volume.hpp"
#include "viennagrid/algorithm/cross_prod.hpp"
#include "viennagrid/topology/all.hpp"

Go to the source code of this file.

Namespaces

namespace  viennagrid
 

The main ViennaGrid namespace. Most user functionality resides directly in this namespace rather than in sub-namespaces.


namespace  viennagrid::detail
 

Namespace for implementation details. Not intended to be used directly by a library user.


Functions

template<typename ElementT , typename GeometricContainerT , typename ElementTag , typename DimensionTag >
viennagrid::result_of::point
< GeometricContainerT >::type 
circumcenter (ElementT const &, GeometricContainerT const &, ElementTag const &, DimensionTag const &)
 Throws a compile time error if the n-cell type is not supported.
template<typename PointAccessorT , typename ElementT >
PointAccessorT::value_type circumcenter (PointAccessorT const accessor, ElementT const &cell, viennagrid::vertex_tag)
 Implementation of the calculation of a circumcenter for a point (degenerate case)
template<typename PointAccessorT , typename ElementT , typename DimensionTag >
PointAccessorT::value_type circumcenter (PointAccessorT const accessor, ElementT const &cell, viennagrid::simplex_tag< 1 >, DimensionTag)
 Implementation of the calculation of a circumcenter for a line (1-simplex)
template<typename PointAccessorT , typename ElementT , typename DimensionTag >
PointAccessorT::value_type circumcenter (PointAccessorT const accessor, ElementT const &cell, viennagrid::hypercube_tag< 1 >, DimensionTag)
 Implementation of the calculation of a circumcenter for a line (1-hypercube)
template<typename PointAccessorT , typename ElementT >
PointAccessorT::value_type circumcenter (PointAccessorT const accessor, ElementT const &cell, viennagrid::triangle_tag, viennagrid::dimension_tag< 2 >)
 Implementation of the calculation of a circumcenter for a triangle in two dimensions.
template<typename PointAccessorT , typename ElementT >
PointAccessorT::value_type circumcenter (PointAccessorT const accessor, ElementT const &cell, viennagrid::quadrilateral_tag, viennagrid::dimension_tag< 2 >)
 Implementation of the calculation of a circumcenter for a quadrilateral in two dimensions. Mind that the user has to ensure that the quadrilateral actually has a circumcenter!
template<typename PointAccessorT , typename ElementT >
PointAccessorT::value_type circumcenter (PointAccessorT const accessor, ElementT const &cell, viennagrid::triangle_tag, viennagrid::dimension_tag< 3 >)
 Implementation of the calculation of a circumcenter for a triangle in three dimensions.
template<typename PointAccessorT , typename ElementT >
PointAccessorT::value_type circumcenter (PointAccessorT const accessor, ElementT const &cell, viennagrid::quadrilateral_tag, viennagrid::dimension_tag< 3 >)
 Implementation of the calculation of a circumcenter for a quadrilateral in three dimensions. Mind that the user has to ensure that the quadrilateral actually has a circumcenter!
template<typename PointAccessorT , typename ElementT >
PointAccessorT::value_type circumcenter (PointAccessorT const accessor, ElementT const &cell, viennagrid::hexahedron_tag, viennagrid::dimension_tag< 3 >)
 Implementation of the calculation of a circumcenter for a hexahedron in three dimensions. Mind that the user has to ensure that the quadrilateral actually has a circumcenter!
template<typename PointAccessorT , typename ElementT >
PointAccessorT::value_type circumcenter (PointAccessorT const accessor, ElementT const &element)
 The public interface function for the calculation of the circumcenter with explicit point accessor.
template<typename ElementT >
viennagrid::result_of::point
< ElementT >::type 
circumcenter (ElementT const &element)
 The public interface function for the calculation of the circumcenter.

Detailed Description

Computes the circumcenter of n-cells.