https://mooseframework.inl.gov
Loading...
Searching...
No Matches
Classes | Functions
FeatureFloodCount.h File Reference

Go to the source code of this file.

Classes

class  FeatureFloodCount
 This object will mark nodes or elements of continuous regions all with a unique number for the purpose of counting or "coloring" unique regions in a solution. More...
 
class  FeatureFloodCount::FeatureData
 
struct  enable_bitmask_operators< FeatureFloodCount::Status >
 
struct  enable_bitmask_operators< FeatureFloodCount::BoundaryIntersection >
 

Functions

template<>
void dataStore (std::ostream &stream, FeatureFloodCount::FeatureData &feature, void *context)
 
template<>
void dataStore (std::ostream &stream, BoundingBox &bbox, void *context)
 
template<>
void dataLoad (std::istream &stream, FeatureFloodCount::FeatureData &feature, void *context)
 
template<>
void dataLoad (std::istream &stream, BoundingBox &bbox, void *context)
 

Function Documentation

◆ dataLoad() [1/2]

template<>
void dataLoad ( std::istream &  stream,
BoundingBox &  bbox,
void *  context 
)

Definition at line 86 of file FeatureFloodCount.C.

87{
88 loadHelper(stream, bbox.min(), context);
89 loadHelper(stream, bbox.max(), context);
90}
void loadHelper(std::istream &stream, P &data, void *context)

◆ dataLoad() [2/2]

template<>
void dataLoad ( std::istream &  stream,
FeatureFloodCount::FeatureData feature,
void *  context 
)

Note that _local_ids is not loaded here. It's not needed for restart, and not needed during the parallel merge operation

Definition at line 63 of file FeatureFloodCount.C.

64{
69 loadHelper(stream, feature._ghosted_ids, context);
70 loadHelper(stream, feature._halo_ids, context);
71 loadHelper(stream, feature._disjoint_halo_ids, context);
72 loadHelper(stream, feature._periodic_nodes, context);
73 loadHelper(stream, feature._var_index, context);
74 loadHelper(stream, feature._id, context);
75 loadHelper(stream, feature._bboxes, context);
76 loadHelper(stream, feature._orig_ids, context);
77 loadHelper(stream, feature._min_entity_id, context);
78 loadHelper(stream, feature._vol_count, context);
79 loadHelper(stream, feature._centroid, context);
80 loadHelper(stream, feature._status, context);
81 loadHelper(stream, feature._boundary_intersection, context);
82}
Status _status
The status of a feature (used mostly in derived classes like the GrainTracker)
std::vector< BoundingBox > _bboxes
The vector of bounding boxes completely enclosing this feature (multiple used with periodic constrain...
container_type _halo_ids
Holds the ids surrounding the feature.
BoundaryIntersection _boundary_intersection
Enumeration indicating boundary intersection status.
container_type _disjoint_halo_ids
Holds halo ids that extend onto a non-topologically connected surface.
std::list< std::pair< processor_id_type, unsigned int > > _orig_ids
Original processor/local ids.
dof_id_type _min_entity_id
The minimum entity seen in the _local_ids, used for sorting features.
std::size_t _var_index
The Moose variable where this feature was found (often the "order parameter")
Point _centroid
The centroid of the feature (average of coordinates from entities participating in the volume calcula...
unsigned int _id
An ID for this feature.
std::size_t _vol_count
The count of entities contributing to the volume calculation.
container_type _periodic_nodes
Holds the nodes that belong to the feature on a periodic boundary.
container_type _ghosted_ids
Holds the ghosted ids for a feature (the ids which will be used for stitching.

Referenced by FeatureFloodCount::deserialize().

◆ dataStore() [1/2]

template<>
void dataStore ( std::ostream &  stream,
BoundingBox &  bbox,
void *  context 
)

Definition at line 55 of file FeatureFloodCount.C.

56{
57 storeHelper(stream, bbox.min(), context);
58 storeHelper(stream, bbox.max(), context);
59}
void storeHelper(std::ostream &stream, P &data, void *context)

◆ dataStore() [2/2]

template<>
void dataStore ( std::ostream &  stream,
FeatureFloodCount::FeatureData feature,
void *  context 
)

Note that _local_ids is not stored here. It's not needed for restart, and not needed during the parallel merge operation

Definition at line 32 of file FeatureFloodCount.C.

33{
38 storeHelper(stream, feature._ghosted_ids, context);
39 storeHelper(stream, feature._halo_ids, context);
40 storeHelper(stream, feature._disjoint_halo_ids, context);
41 storeHelper(stream, feature._periodic_nodes, context);
42 storeHelper(stream, feature._var_index, context);
43 storeHelper(stream, feature._id, context);
44 storeHelper(stream, feature._bboxes, context);
45 storeHelper(stream, feature._orig_ids, context);
46 storeHelper(stream, feature._min_entity_id, context);
47 storeHelper(stream, feature._vol_count, context);
48 storeHelper(stream, feature._centroid, context);
49 storeHelper(stream, feature._status, context);
50 storeHelper(stream, feature._boundary_intersection, context);
51}

Referenced by FeatureFloodCount::serialize().