MOAB: Mesh Oriented datABase  (version 5.4.1)
MBMesquite::ParallelHelper Class Reference

#include <ParallelHelperInterface.hpp>

+ Inheritance diagram for MBMesquite::ParallelHelper:

Public Member Functions

virtual void set_parallel_mesh (ParallelMesh *mesh)=0
virtual void set_communicator (size_t comm)=0
virtual void set_communication_model (int model, MsqError &)=0
virtual void set_generate_random_numbers (int grn, MsqError &)=0
virtual ~ParallelHelper ()

Protected Member Functions

virtual void smoothing_init (MsqError &)=0
virtual void compute_first_independent_set (std::vector< Mesh::VertexHandle > &fixed_vertices)=0
virtual void communicate_first_independent_set (MsqError &)=0
virtual bool compute_next_independent_set ()=0
virtual bool get_next_partition_boundary_vertex (MBMesquite::Mesh::VertexHandle &vertex_handle)=0
virtual void communicate_next_independent_set (MsqError &)=0
virtual void smoothing_close (MsqError &)=0
virtual int get_rank () const =0
virtual int get_nprocs () const =0
virtual bool is_our_element (Mesh::ElementHandle element_handle, MsqError &) const =0
virtual bool is_our_vertex (Mesh::VertexHandle vertex_handle, MsqError &) const =0
virtual void communicate_min_max_to_all (double *minimum, double *maximum, MsqError &) const =0
virtual void communicate_min_max_to_zero (double *minimum, double *maximum, MsqError &) const =0
virtual void communicate_sums_to_zero (size_t *freeElementCount, int *invertedElementCount, size_t *elementCount, int *invertedSampleCount, size_t *sampleCount, long unsigned int *count, long unsigned int *invalid, double *sum, double *sqrSum, MsqError &) const =0
virtual void communicate_power_sum_to_zero (double *pMean, MsqError &) const =0
virtual void communicate_histogram_to_zero (std::vector< int > &histogram, MsqError &) const =0
virtual void communicate_all_true (bool &value, MsqError &err) const =0
virtual void communicate_any_true (bool &value, MsqError &err) const =0

Friends

class VertexMover
class QualityAssessor

Detailed Description

is an abstract class which defines methods used by VertexMover and QualityAssessor to parallelize operations so the details and includes for MPI communication do not need to be exposed when running Mesquite in serial mode.

Definition at line 47 of file ParallelHelperInterface.hpp.


Constructor & Destructor Documentation

virtual MBMesquite::ParallelHelper::~ParallelHelper ( ) [inline, virtual]

Definition at line 56 of file ParallelHelperInterface.hpp.

{}

Member Function Documentation

virtual void MBMesquite::ParallelHelper::communicate_all_true ( bool &  value,
MsqError err 
) const [protected, pure virtual]
virtual void MBMesquite::ParallelHelper::communicate_any_true ( bool &  value,
MsqError err 
) const [protected, pure virtual]
virtual void MBMesquite::ParallelHelper::communicate_histogram_to_zero ( std::vector< int > &  histogram,
MsqError  
) const [protected, pure virtual]
virtual void MBMesquite::ParallelHelper::communicate_min_max_to_all ( double *  minimum,
double *  maximum,
MsqError  
) const [protected, pure virtual]
virtual void MBMesquite::ParallelHelper::communicate_min_max_to_zero ( double *  minimum,
double *  maximum,
MsqError  
) const [protected, pure virtual]
virtual void MBMesquite::ParallelHelper::communicate_power_sum_to_zero ( double *  pMean,
MsqError  
) const [protected, pure virtual]
virtual void MBMesquite::ParallelHelper::communicate_sums_to_zero ( size_t *  freeElementCount,
int *  invertedElementCount,
size_t *  elementCount,
int *  invertedSampleCount,
size_t *  sampleCount,
long unsigned int *  count,
long unsigned int *  invalid,
double *  sum,
double *  sqrSum,
MsqError  
) const [protected, pure virtual]
virtual void MBMesquite::ParallelHelper::compute_first_independent_set ( std::vector< Mesh::VertexHandle > &  fixed_vertices) [protected, pure virtual]
virtual int MBMesquite::ParallelHelper::get_nprocs ( ) const [protected, pure virtual]
virtual int MBMesquite::ParallelHelper::get_rank ( ) const [protected, pure virtual]
virtual bool MBMesquite::ParallelHelper::is_our_element ( Mesh::ElementHandle  element_handle,
MsqError  
) const [protected, pure virtual]
virtual bool MBMesquite::ParallelHelper::is_our_vertex ( Mesh::VertexHandle  vertex_handle,
MsqError  
) const [protected, pure virtual]
virtual void MBMesquite::ParallelHelper::set_communication_model ( int  model,
MsqError  
) [pure virtual]
virtual void MBMesquite::ParallelHelper::set_communicator ( size_t  comm) [pure virtual]
virtual void MBMesquite::ParallelHelper::set_generate_random_numbers ( int  grn,
MsqError  
) [pure virtual]
virtual void MBMesquite::ParallelHelper::set_parallel_mesh ( ParallelMesh mesh) [pure virtual]
virtual void MBMesquite::ParallelHelper::smoothing_close ( MsqError ) [protected, pure virtual]
virtual void MBMesquite::ParallelHelper::smoothing_init ( MsqError ) [protected, pure virtual]

Friends And Related Function Documentation

friend class QualityAssessor [friend]

Reimplemented in MBMesquite::ParallelHelperImpl.

Definition at line 70 of file ParallelHelperInterface.hpp.

friend class VertexMover [friend]

Reimplemented in MBMesquite::ParallelHelperImpl.

Definition at line 59 of file ParallelHelperInterface.hpp.

List of all members.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines