Namespaces | Functions

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

Computes the Voronoi information for a Delaunay triangulation. More...

#include <iostream>
#include <sstream>
#include <string>
#include <stdexcept>
#include "viennagrid/forwards.h"
#include "viennagrid/algorithm/circumcenter.hpp"
#include "viennagrid/algorithm/spanned_volume.hpp"
#include "viennagrid/algorithm/volume.hpp"
#include "viennadata/api.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 DomainType , typename InterfaceAreaKey , typename BoxVolumeKey >
void write_voronoi_info (DomainType const &domain, InterfaceAreaKey const &interface_key, BoxVolumeKey const &box_volume_key, viennagrid::simplex_tag< 1 >)
 Implementation of the computation of Voronoi quantities for a one-dimensional domain (line, 1-simplex).
template<typename DomainType , typename InterfaceAreaKey , typename BoxVolumeKey >
void write_voronoi_info (DomainType const &domain, InterfaceAreaKey const &interface_key, BoxVolumeKey const &box_volume_key, viennagrid::hypercube_tag< 1 >)
 Implementation of the computation of Voronoi quantities for a one-dimensional domain (line, 1-hypercube).
template<typename DomainType , typename InterfaceAreaKey , typename BoxVolumeKey >
void write_voronoi_info (DomainType const &domain, InterfaceAreaKey const &interface_key, BoxVolumeKey const &box_volume_key, viennagrid::quadrilateral_tag)
 Implementation of the computation of Voronoi quantities for a quadrilateral domain.
template<typename DomainType , typename InterfaceAreaKey , typename BoxVolumeKey >
void write_voronoi_info (DomainType const &domain, InterfaceAreaKey const &interface_key, BoxVolumeKey const &box_volume_key, viennagrid::triangle_tag)
 Implementation of the computation of Voronoi quantities for a triangular domain.
template<typename DomainType , typename InterfaceAreaKey , typename BoxVolumeKey >
void write_voronoi_info (DomainType const &domain, InterfaceAreaKey const &interface_key, BoxVolumeKey const &box_volume_key, viennagrid::tetrahedron_tag)
 Implementation of the computation of Voronoi quantities for a tetrahedral domain.
template<typename DomainType , typename InterfaceAreaKey , typename BoxVolumeKey >
void write_voronoi_info (DomainType const &domain, InterfaceAreaKey const &interface_key, BoxVolumeKey const &box_volume_key, viennagrid::hexahedron_tag)
 Implementation of the computation of Voronoi quantities for a hexahedral domain.
template<typename DomainType , typename InterfaceAreaKey , typename BoxVolumeKey >
void apply_voronoi (DomainType const &domain, InterfaceAreaKey const &interface_area_key=viennagrid::voronoi_interface_area_key(), BoxVolumeKey const &box_volume_key=viennagrid::voronoi_box_volume_key())
 Writes Voronoi information to the domain or segment using the provided keys.
template<typename DomainType >
void apply_voronoi (DomainType const &domain)
 Convenience overload for storing Voronoi information on a domain or segment. Uses the default keys for interface areas and box volumes.

Detailed Description

Computes the Voronoi information for a Delaunay triangulation.