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

Provides routines for transferring quantities defined for elements of one topological dimensions to elements of other topological dimension. More...

#include <vector>
#include "viennagrid/forwards.hpp"
#include "viennagrid/mesh/mesh.hpp"

Go to the source code of this file.

Data Structures

struct  boundary_quantity_transfer_tag
 Indicates a transfer from higher to lower topological dimension (boundary operation) More...
struct  coboundary_quantity_transfer_tag
 Indicates a transfer from lower to higher topological dimension (coboundary operation) More...
struct  quantity_transfer_dispatcher< SourceTag, DestinationTag, less_than, larger_than >
struct  quantity_transfer_dispatcher< SourceTag, DestinationTag, false, true >
struct  quantity_transfer_dispatcher< SourceTag, DestinationTag, true, false >

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 SourceTag , typename DestinationTag , typename MeshOrSegmentT , typename SourceAccessorT , typename DestinationSetterT , typename AveragerT , typename SourceFilterT , typename DestinationFilterT >
void quantity_transfer (MeshOrSegmentT const &mesh_or_segment, SourceAccessorT const &accessor_src, DestinationSetterT &setter_dest, AveragerT const &averager, SourceFilterT const &filter_src, DestinationFilterT const &filter_dest, boundary_quantity_transfer_tag)
template<typename SourceTag , typename DestinationTag , typename MeshOrSegmentT , typename SourceAccessorT , typename DestinationSetterT , typename AveragerT , typename SourceFilterT , typename DestinationFilterT >
void quantity_transfer (MeshOrSegmentT const &mesh_or_segment, SourceAccessorT const &accessor_src, DestinationSetterT &setter_dest, AveragerT const &averager, SourceFilterT const &filter_src, DestinationFilterT const &filter_dest, coboundary_quantity_transfer_tag)
template<typename SourceTypeOrTag , typename DestinationTypeOrTag , typename MeshOrSegmentT , typename SourceAccessorT , typename DestinationSetterT , typename AveragerT , typename SourceFilterT , typename DestinationFilterT >
void quantity_transfer (MeshOrSegmentT const &mesh_or_segment, SourceAccessorT const &accessor_src, DestinationSetterT &setter_dest, AveragerT const &averager, SourceFilterT const &filter_src, DestinationFilterT const &filter_dest)
 Transfers data defined on 'source' elements to 'destination' elements. For example, values defined on cells are tranferred to vertices.

Detailed Description

Provides routines for transferring quantities defined for elements of one topological dimensions to elements of other topological dimension.