12#ifndef CL_INTERFACEPROCESSOR_HPP
13#define CL_INTERFACEPROCESSOR_HPP
44 uint mNumberOfSideSets = 0 ;
120 const uint mNumOriginalSidesets ;
154 const uint aNumOriginalSideSets,
155 const id_t aMaxNodeID );
164 create_interface_sets();
170 duplicates_at(
Facet * aFacet )
const ;
177 refuse_mixed_master_types()
const ;
180 connect_sidesets_to_interface_sets();
183 populate_interface_sets();
189 pair_cross_set_periodic_duplicates();
195 add_duplicate_nodes_to_mesh();
A bounds-checked wrapper around std::vector.
Definition cl_Cell.hpp:45
Runtime-sized bitset; one bit per flag, packed into 64-bit words.
Definition cl_DynamicBitset.hpp:33
Hash map (unordered key-value).
Definition cl_Map.hpp:75
Top-level container for all mesh entities.
Definition cl_Mesh.hpp:60
Definition cl_Facet.hpp:24
InterfaceProcessor(Mesh *aMesh, Topology *aTopology, Cell< Node * > &aAbstractNodes, const uint aNumOriginalSideSets, const id_t aMaxNodeID)
Definition cl_InterfaceProcessor.cpp:327
Definition cl_InterfaceProcessor.hpp:35
void collect_nodes_and_elements()
Definition cl_InterfaceProcessor.cpp:106
index_t number_of_nodes() const
Definition cl_InterfaceProcessor.cpp:304
void allocate_sideset_container()
Definition cl_InterfaceProcessor.cpp:93
Map< id_t, Node * > & original_map()
Definition cl_InterfaceProcessor.hpp:240
void increment_sideset_counter()
Definition cl_InterfaceProcessor.cpp:87
void duplicate_nodes(id_t &aMaxNodeID, Map< id_t, Node * > &aSharedDuplicates)
takes the copy of each collected node from aSharedDuplicates, keyed by the node's own id,...
Definition cl_InterfaceProcessor.cpp:201
Map< id_t, Node * > & duplicate_map()
Definition cl_InterfaceProcessor.hpp:234
bool shares_duplicates() const
Definition cl_InterfaceProcessor.hpp:228
void add_duplicates(index_t &aCount, Cell< Node * > &aDuplicates, Map< id_t, Node * > &aOriginalMap)
a set with private copies appends them to aDuplicates; a tie-weight set registers the original of eac...
Definition cl_InterfaceProcessor.cpp:310
InterfaceSet(Mesh *aMesh, const string aBitsetHex)
Definition cl_InterfaceProcessor.cpp:64
DomainType master_type() const
Definition cl_InterfaceProcessor.hpp:222
void relink_elements()
Definition cl_InterfaceProcessor.cpp:277
InterfaceTreatment treatment() const
Definition cl_InterfaceProcessor.hpp:216
void add_sideset(SideSet *aSideSet)
Definition cl_InterfaceProcessor.cpp:100
Definition cl_Node.hpp:30
Definition cl_SideSet.hpp:29
Analyzes and classifies mesh topology for finite element simulations.
Definition cl_Topology.hpp:44
Definition cl_EF_EdgeFunction.hpp:24
InterfaceTreatment
Definition cl_InterfaceProcessor.hpp:29
@ TieWeight1
Definition cl_InterfaceProcessor.hpp:30
@ Decouple
Definition cl_InterfaceProcessor.hpp:31
USER GUIDES:
Definition cl_Capacitor.cpp:16
unsigned int uint
Definition typedefs.hpp:30
unsigned int id_t
Definition typedefs.hpp:41
uint32_t index_t
Definition typedefs.hpp:52
DomainType
Definition en_DomainType.hpp:20
@ UNDEFINED
Definition en_DomainType.hpp:80
@ Conductor
Definition en_DomainType.hpp:31