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
Public Member Functions | Private Member Functions | Private Attributes | List of all members
sierra::nalu::PromotedElementIO Class Reference

#include <PromotedElementIO.h>

Public Member Functions

 PromotedElementIO (const ElementDescription &elem, const stk::mesh::MetaData &metaData, stk::mesh::BulkData &bulkData, const stk::mesh::PartVector &baseParts, const std::string &fileName, const VectorFieldType &coordField)
 
virtual ~PromotedElementIO ()=default
 
void add_fields (const std::vector< stk::mesh::FieldBase * > &fields)
 
bool has_field (const std::string field_name)
 
void write_database_data (double currentTime)
 

Private Member Functions

void output_results (const std::vector< const stk::mesh::FieldBase * > fields) const
 
void write_element_connectivity (const stk::mesh::PartVector &baseParts, const std::vector< stk::mesh::EntityId > &entityIds)
 
void write_sideset_connectivity (const stk::mesh::PartVector &baseParts)
 
size_t sub_element_global_id () const
 
void write_node_block_definitions (const stk::mesh::PartVector &superElemParts)
 
void write_elem_block_definitions (const stk::mesh::PartVector &baseParts)
 
void write_sideset_definitions (const stk::mesh::PartVector &baseParts)
 
void write_coordinate_list (const stk::mesh::PartVector &superElemParts)
 
template<typename T >
void put_data_on_node_block (Ioss::NodeBlock &nodeBlock, const std::vector< int64_t > &ids, const stk::mesh::FieldBase &field, const stk::mesh::BucketVector &buckets) const
 
std::string storage_name (const stk::mesh::FieldBase &field) const
 

Private Attributes

const ElementDescriptionelem_
 
const stk::mesh::MetaData & metaData_
 
const stk::mesh::BulkData & bulkData_
 
const std::string & fileName_
 
const VectorFieldTypecoordinates_
 
const unsigned nDim_
 
stk::mesh::PartVector superElemParts_
 
std::map< const std::string, const stk::mesh::FieldBase * > fields_
 
std::map< const stk::mesh::Part *, Ioss::ElementBlock * > elementBlockPointers_
 
std::map< const stk::mesh::Part *, Ioss::SideBlock * > sideBlockPointers_
 
Ioss::NodeBlock * nodeBlock_
 
std::unique_ptr< Ioss::Region > output_
 
Ioss::DatabaseIO * databaseIO
 

Constructor & Destructor Documentation

sierra::nalu::PromotedElementIO::PromotedElementIO ( const ElementDescription elem,
const stk::mesh::MetaData &  metaData,
stk::mesh::BulkData &  bulkData,
const stk::mesh::PartVector baseParts,
const std::string &  fileName,
const VectorFieldType coordField 
)
virtual sierra::nalu::PromotedElementIO::~PromotedElementIO ( )
virtualdefault

Member Function Documentation

void sierra::nalu::PromotedElementIO::add_fields ( const std::vector< stk::mesh::FieldBase * > &  fields)
bool sierra::nalu::PromotedElementIO::has_field ( const std::string  field_name)
inline
void sierra::nalu::PromotedElementIO::output_results ( const std::vector< const stk::mesh::FieldBase * >  fields) const
private
template<typename T >
void sierra::nalu::PromotedElementIO::put_data_on_node_block ( Ioss::NodeBlock &  nodeBlock,
const std::vector< int64_t > &  ids,
const stk::mesh::FieldBase &  field,
const stk::mesh::BucketVector buckets 
) const
private
std::string sierra::nalu::PromotedElementIO::storage_name ( const stk::mesh::FieldBase &  field) const
private

Referenced by add_fields().

size_t sierra::nalu::PromotedElementIO::sub_element_global_id ( ) const
private
void sierra::nalu::PromotedElementIO::write_coordinate_list ( const stk::mesh::PartVector superElemParts)
private
void sierra::nalu::PromotedElementIO::write_database_data ( double  currentTime)
void sierra::nalu::PromotedElementIO::write_elem_block_definitions ( const stk::mesh::PartVector baseParts)
private
void sierra::nalu::PromotedElementIO::write_element_connectivity ( const stk::mesh::PartVector baseParts,
const std::vector< stk::mesh::EntityId > &  entityIds 
)
private
void sierra::nalu::PromotedElementIO::write_node_block_definitions ( const stk::mesh::PartVector superElemParts)
private
void sierra::nalu::PromotedElementIO::write_sideset_connectivity ( const stk::mesh::PartVector baseParts)
private

Referenced by PromotedElementIO().

void sierra::nalu::PromotedElementIO::write_sideset_definitions ( const stk::mesh::PartVector baseParts)
private

Member Data Documentation

const stk::mesh::BulkData& sierra::nalu::PromotedElementIO::bulkData_
private
const VectorFieldType& sierra::nalu::PromotedElementIO::coordinates_
private

Referenced by write_coordinate_list().

Ioss::DatabaseIO* sierra::nalu::PromotedElementIO::databaseIO
private
const ElementDescription& sierra::nalu::PromotedElementIO::elem_
private
std::map<const stk::mesh::Part*, Ioss::ElementBlock*> sierra::nalu::PromotedElementIO::elementBlockPointers_
private
std::map<const std::string, const stk::mesh::FieldBase*> sierra::nalu::PromotedElementIO::fields_
private

Referenced by add_fields(), and write_database_data().

const std::string& sierra::nalu::PromotedElementIO::fileName_
private

Referenced by PromotedElementIO().

const stk::mesh::MetaData& sierra::nalu::PromotedElementIO::metaData_
private
const unsigned sierra::nalu::PromotedElementIO::nDim_
private
Ioss::NodeBlock* sierra::nalu::PromotedElementIO::nodeBlock_
private
std::unique_ptr<Ioss::Region> sierra::nalu::PromotedElementIO::output_
private
std::map<const stk::mesh::Part*, Ioss::SideBlock*> sierra::nalu::PromotedElementIO::sideBlockPointers_
private
stk::mesh::PartVector sierra::nalu::PromotedElementIO::superElemParts_
private

The documentation for this class was generated from the following files: