TiogaInterface Class Reference

AMR-Wind API: amr_wind::TiogaInterface Class Reference
AMR-Wind API v0.1.0
CFD solver for wind plant simulations
Loading...
Searching...
No Matches

#include <TiogaInterface.H>

Inheritance diagram for amr_wind::TiogaInterface:
[legend]
Collaboration diagram for amr_wind::TiogaInterface:
[legend]

Public Member Functions

 TiogaInterface (CFDSim &sim)
 
void post_init_actions () override
 
void post_regrid_actions () override
 
void pre_overset_conn_work () override
 
void post_overset_conn_work () override
 
void register_solution (const std::vector< std::string > &cell_vars, const std::vector< std::string > &node_vars) override
 
void update_solution () override
 
AMROversetInfoamr_overset_info ()
 
ScratchFieldqvars_cell ()
 
ScratchFieldqvars_node ()
 

Static Public Member Functions

static std::string identifier ()
 

Private Member Functions

void amr_to_tioga_mesh ()
 
void amr_to_tioga_iblank ()
 

Private Attributes

CFDSimm_sim
 
IntFieldm_iblank_cell
 IBLANK on cell centered fields.
 
IntFieldm_iblank_node
 IBLANK for nodal fields.
 
std::unique_ptr< IntScratchFieldm_iblank_cell_host
 IBLANK on cell centered fields on host.
 
std::unique_ptr< IntScratchFieldm_iblank_node_host
 IBLANK for nodal fields on host.
 
IntFieldm_mask_cell
 AMReX mask for linear system solves.
 
IntFieldm_mask_node
 
std::unique_ptr< AMROversetInfom_amr_data
 
std::unique_ptr< ScratchFieldm_qcell
 
std::unique_ptr< ScratchFieldm_qnode
 
std::unique_ptr< ScratchFieldm_qcell_host
 
std::unique_ptr< ScratchFieldm_qnode_host
 
std::vector< std::string > m_cell_vars
 
std::vector< std::string > m_node_vars
 
bool m_disable_nodal_proj {false}
 

Constructor & Destructor Documentation

◆ TiogaInterface()

amr_wind::TiogaInterface::TiogaInterface ( CFDSim & sim)
explicit

Member Function Documentation

◆ amr_overset_info()

AMROversetInfo & amr_wind::TiogaInterface::amr_overset_info ( )
inline

◆ amr_to_tioga_iblank()

void amr_wind::TiogaInterface::amr_to_tioga_iblank ( )
private

◆ amr_to_tioga_mesh()

void amr_wind::TiogaInterface::amr_to_tioga_mesh ( )
private

◆ identifier()

static std::string amr_wind::TiogaInterface::identifier ( )
inlinestatic

◆ post_init_actions()

void amr_wind::TiogaInterface::post_init_actions ( )
override

Perform one-time initialization actions.

This method is called after the initial mesh and solution fields have been created.

◆ post_overset_conn_work()

void amr_wind::TiogaInterface::post_overset_conn_work ( )
override

Updates necessary after overset connectivity has been updated.

Update dependent fields or data structures as a result of changes in overset connectivity.

◆ post_regrid_actions()

void amr_wind::TiogaInterface::post_regrid_actions ( )
override

Perform necessary updates after a regrid.

◆ pre_overset_conn_work()

void amr_wind::TiogaInterface::pre_overset_conn_work ( )
override

Perform actions before initializing connectivity through overset library.

This method is called before performing connectivity. The implementation should update all necessary mesh data and metadata that will be used for overset connectivity.

◆ qvars_cell()

ScratchField & amr_wind::TiogaInterface::qvars_cell ( )
inline

◆ qvars_node()

ScratchField & amr_wind::TiogaInterface::qvars_node ( )
inline

◆ register_solution()

void amr_wind::TiogaInterface::register_solution ( const std::vector< std::string > & cell_vars,
const std::vector< std::string > & node_vars )
override

Perform actions necessary to register fields for overset exchange.

This method will be called at least once every timestep and, perhaps, multiple times within a timestep.

◆ update_solution()

void amr_wind::TiogaInterface::update_solution ( )
override

Additional work after solution fields have been exchanged.

Member Data Documentation

◆ m_amr_data

std::unique_ptr<AMROversetInfo> amr_wind::TiogaInterface::m_amr_data
private

◆ m_cell_vars

std::vector<std::string> amr_wind::TiogaInterface::m_cell_vars
private

◆ m_disable_nodal_proj

bool amr_wind::TiogaInterface::m_disable_nodal_proj {false}
private

◆ m_iblank_cell

IntField& amr_wind::TiogaInterface::m_iblank_cell
private

IBLANK on cell centered fields.

◆ m_iblank_cell_host

std::unique_ptr<IntScratchField> amr_wind::TiogaInterface::m_iblank_cell_host
private

IBLANK on cell centered fields on host.

◆ m_iblank_node

IntField& amr_wind::TiogaInterface::m_iblank_node
private

IBLANK for nodal fields.

◆ m_iblank_node_host

std::unique_ptr<IntScratchField> amr_wind::TiogaInterface::m_iblank_node_host
private

IBLANK for nodal fields on host.

◆ m_mask_cell

IntField& amr_wind::TiogaInterface::m_mask_cell
private

AMReX mask for linear system solves.

◆ m_mask_node

IntField& amr_wind::TiogaInterface::m_mask_node
private

◆ m_node_vars

std::vector<std::string> amr_wind::TiogaInterface::m_node_vars
private

◆ m_qcell

std::unique_ptr<ScratchField> amr_wind::TiogaInterface::m_qcell
private

◆ m_qcell_host

std::unique_ptr<ScratchField> amr_wind::TiogaInterface::m_qcell_host
private

◆ m_qnode

std::unique_ptr<ScratchField> amr_wind::TiogaInterface::m_qnode
private

◆ m_qnode_host

std::unique_ptr<ScratchField> amr_wind::TiogaInterface::m_qnode_host
private

◆ m_sim

CFDSim& amr_wind::TiogaInterface::m_sim
private

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