Namespaces | Functions

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

Computes the volume of different cell types as well as domains and segments. More...

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

Go to the source code of this file.

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 ElementType >
ElementType::config_type::numeric_type volume_impl (ElementType const &cell, viennagrid::point_tag)
 Computes the volume of topologically zero-dimensional elements (vertices). Degenerate case, returns 1.
template<typename ElementType >
ElementType::config_type::numeric_type volume_impl (ElementType const &cell, viennagrid::simplex_tag< 1 >)
 Computes the volume of topologically one-dimensional elements (lines, 1-simplex).
template<typename ElementType >
ElementType::config_type::numeric_type volume_impl (ElementType const &cell, viennagrid::hypercube_tag< 1 >)
 Computes the volume of topologically one-dimensional elements (lines, 1-hypercube).
template<typename ElementType >
ElementType::config_type::numeric_type volume_impl (ElementType const &cell, viennagrid::triangle_tag)
 Computes the two-dimensional volume of a triangle.
template<typename ElementType >
ElementType::config_type::numeric_type volume_impl (ElementType const &cell, viennagrid::quadrilateral_tag)
 Computes the two-dimensional volume of a quadrilateral.
template<typename ElementType >
ElementType::config_type::numeric_type volume_impl (ElementType const &cell, viennagrid::tetrahedron_tag)
 Computes the three-dimensional volume of a tetrahedron.
template<typename ElementType >
ElementType::config_type::numeric_type volume_impl (ElementType const &cell, viennagrid::hexahedron_tag)
 Computes the three-dimensional volume of a hexahedron.
template<typename ContainerType >
ContainerType::config_type::numeric_type volume_domainsegment (ContainerType const &d)
 Dispatched function for computing the volume of a domain or segment.
template<typename ElementType >
ElementType::config_type::numeric_type volume (ElementType const &cell)
 Returns the n-dimensional volume of a n-cell.
template<typename ConfigType >
ConfigType::numeric_type volume (domain_t< ConfigType > const &d)
 Returns the N-dimensional volume of a domain, where the cell type has topological dimension N.
template<typename ConfigType >
ConfigType::numeric_type volume (segment_t< ConfigType > const &d)
 Returns the N-dimensional volume of a segment, where the cell type has topological dimension N.

Detailed Description

Computes the volume of different cell types as well as domains and segments.