Nalu
Nalu: a generalized unstructured massively parallel low Mach flow code designed to support a variety of energy applications of interest (most notably Wind ECP) built on the Sierra Toolkit and Trilinos solver Tpetra/Epetra stack. The open source BSD, clause 3 license model has been chosen for the code base. See LICENSE for more information. http://NaluCFD.org
Classes | Namespaces | Typedefs | Functions
PromoteElement.h File Reference
#include <stk_mesh/base/FieldBase.hpp>
#include <stk_mesh/base/CoordinateSystems.hpp>
#include <vector>
#include <tuple>
#include <unordered_map>
#include <stk_topology/topology.hpp>
#include <boost/functional/hash/hash.hpp>

Go to the source code of this file.

Classes

struct  sierra::nalu::promotion::internal::EntityIdVectorHash
 

Namespaces

 stk
 
 stk::mesh
 
 sierra
 
 sierra::nalu
 
 sierra::nalu::promotion
 
 sierra::nalu::promotion::internal
 

Typedefs

typedef std::vector< Entity > stk::mesh::EntityVector
 
typedef std::vector< EntityId > stk::mesh::EntityIdVector
 
typedef stk::mesh::Field< double, stk::mesh::Cartesian > VectorFieldType
 
using sierra::nalu::promotion::internal::ConnectivityMap = std::unordered_map< stk::mesh::Entity, stk::mesh::EntityIdVector >
 
using sierra::nalu::promotion::internal::NodesElemMap = std::unordered_map< stk::mesh::EntityIdVector, stk::mesh::Entity, EntityIdVectorHash >
 

Functions

std::pair< stk::mesh::PartVector, stk::mesh::PartVectorsierra::nalu::promotion::promote_elements (stk::mesh::BulkData &bulk, const ElementDescription &desc, const VectorFieldType &coordField, const stk::mesh::PartVector &partsToBePromoted, stk::mesh::Part *edgePart, stk::mesh::Part *facePart)
 
stk::mesh::PartVector sierra::nalu::promotion::create_boundary_elements (stk::mesh::BulkData &bulk, const ElementDescription &desc, const stk::mesh::PartVector &parts)
 
std::pair< stk::mesh::PartVector, stk::mesh::PartVectorsierra::nalu::promotion::internal::promote_elements_quad (stk::mesh::BulkData &bulk, const ElementDescription &desc, const VectorFieldType &coordField, const stk::mesh::PartVector &partsToBePromoted, stk::mesh::Part &edgePart)
 
std::pair< stk::mesh::PartVector, stk::mesh::PartVectorsierra::nalu::promotion::internal::promote_elements_hex (stk::mesh::BulkData &bulk, const ElementDescription &desc, const VectorFieldType &coordField, const stk::mesh::PartVector &partsToBePromoted, stk::mesh::Part &edgePart, stk::mesh::Part &facePart)
 
ConnectivityMap sierra::nalu::promotion::internal::connectivity_map_for_parent_rank (stk::mesh::BulkData &bulk, const int numNewNodesOnTopo, const stk::mesh::Selector &selector, stk::topology::rank_t parent_rank)
 
void sierra::nalu::promotion::internal::add_base_nodes_to_elem_connectivity (const stk::mesh::BulkData &bulk, const ElementDescription &desc, const stk::mesh::Entity elem, stk::mesh::EntityIdVector &allNodes)
 
void sierra::nalu::promotion::internal::add_edge_nodes_to_elem_connectivity (const stk::mesh::BulkData &bulk, const ElementDescription &desc, const ConnectivityMap &edgeConnectivity, const stk::mesh::Entity elem, stk::mesh::EntityIdVector &allNodes)
 
void sierra::nalu::promotion::internal::add_face_nodes_to_elem_connectivity (const stk::mesh::BulkData &bulk, const ElementDescription &desc, const ConnectivityMap &faceConnectivity, const stk::mesh::Entity elem, stk::mesh::EntityIdVector &allNodes)
 
void sierra::nalu::promotion::internal::add_volume_nodes_to_elem_connectivity (const stk::mesh::BulkData &bulk, const ElementDescription &desc, const ConnectivityMap &volumeConnectivity, const stk::mesh::Entity elem, stk::mesh::EntityIdVector &allNodes)
 
void sierra::nalu::promotion::internal::create_nodes_for_connectivity_map (stk::mesh::BulkData &bulk, const ConnectivityMap &map)
 
stk::mesh::PartVector sierra::nalu::promotion::internal::create_super_elements (stk::mesh::BulkData &bulk, const ElementDescription &desc, const stk::mesh::PartVector &elemPartsToBePromoted, const ConnectivityMap &edgeConnectivity, const ConnectivityMap &volumeConnectivity)
 
stk::mesh::PartVector sierra::nalu::promotion::internal::create_super_elements (stk::mesh::BulkData &bulk, const ElementDescription &desc, const stk::mesh::PartVector &elemPartsToBePromoted, const ConnectivityMap &edgeConnectivity, const ConnectivityMap &faceConnectivity, const ConnectivityMap &volumeConnectivity)
 
void sierra::nalu::promotion::internal::set_coordinates_quad (const stk::mesh::BulkData &bulk, const ElementDescription &desc, const stk::mesh::PartVector &promotedPartVector, const VectorFieldType &coordField)
 
void sierra::nalu::promotion::internal::set_coordinates_hex (const stk::mesh::BulkData &bulk, const ElementDescription &desc, const stk::mesh::PartVector &promotedPartVector, const VectorFieldType &coordField)
 
void sierra::nalu::promotion::internal::perform_parallel_consolidation_of_node_ids (const stk::mesh::BulkData &bulk, ConnectivityMap &connectivityMap)
 
void sierra::nalu::promotion::internal::destroy_entities (stk::mesh::BulkData &bulk, const stk::mesh::Selector &selector, stk::topology::rank_t rank)
 
NodesElemMap sierra::nalu::promotion::internal::make_base_nodes_to_elem_map_at_boundary (const ElementDescription &desc, const stk::mesh::BulkData &mesh, const stk::mesh::PartVector &meshParts)
 
std::unordered_map< stk::mesh::Entity, stk::mesh::Entity > sierra::nalu::promotion::internal::exposed_side_to_super_elem_map (const ElementDescription &desc, const stk::mesh::BulkData &bulk, const stk::mesh::PartVector &base_elem_mesh_parts)
 
stk::mesh::PartVector sierra::nalu::promotion::internal::create_boundary_elements (stk::mesh::BulkData &bulk, const ElementDescription &desc, const stk::mesh::PartVector &parts)
 

Typedef Documentation

typedef stk::mesh::Field<double, stk::mesh::Cartesian> VectorFieldType