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. |
Computes the Voronoi information for a Delaunay triangulation.