IB Class Reference

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

#include <IB.H>

Inheritance diagram for amr_wind::ib::IB:
[legend]
Collaboration diagram for amr_wind::ib::IB:
[legend]

Public Member Functions

 IB (CFDSim &)
 
 ~IB () override
 
void initialize_fields (int, const amrex::Geometry &) override
 
void pre_init_actions () override
 
void post_init_actions () override
 
void post_regrid_actions () override
 
void pre_advance_work () override
 
void post_advance_work () override
 
void pre_pressure_correction_work () override
 
void post_pressure_correction_work () override
 

Static Public Member Functions

static std::string identifier ()
 

Protected Member Functions

int num_ibs () const
 Total number of immersed boundaries.
 
virtual void prepare_outputs ()
 

Private Member Functions

void update_velocities ()
 
void compute_forces ()
 

Static Private Member Functions

static void update_positions ()
 

Private Attributes

CFDSimm_sim
 
std::vector< std::unique_ptr< ImmersedBoundaryModel > > m_ibs
 
Fieldm_ib_levelset
 Immersed boundary levelset for cell-centers.
 
Fieldm_ib_normal
 Immersed boundary normal vector defined on cell-centers.
 

Detailed Description

Immersed boundary modeling for non-blade wind components and complex terrain

This class provides an interface to model

See also
ImmersedBoundaryModel

Constructor & Destructor Documentation

◆ IB()

amr_wind::ib::IB::IB ( CFDSim & sim)
explicit

◆ ~IB()

amr_wind::ib::IB::~IB ( )
overridedefault

Member Function Documentation

◆ compute_forces()

void amr_wind::ib::IB::compute_forces ( )
private

Helper method to compute forces on all immersed boundary components

◆ identifier()

static std::string amr_wind::ib::IB::identifier ( )
inlinestatic

◆ initialize_fields()

void amr_wind::ib::IB::initialize_fields ( int ,
const amrex::Geometry &  )
inlineoverride

◆ num_ibs()

int amr_wind::ib::IB::num_ibs ( ) const
inlineprotected

Total number of immersed boundaries.

◆ post_advance_work()

void amr_wind::ib::IB::post_advance_work ( )
override

◆ post_init_actions()

void amr_wind::ib::IB::post_init_actions ( )
override

◆ post_pressure_correction_work()

void amr_wind::ib::IB::post_pressure_correction_work ( )
override

◆ post_regrid_actions()

void amr_wind::ib::IB::post_regrid_actions ( )
override

◆ pre_advance_work()

void amr_wind::ib::IB::pre_advance_work ( )
override

◆ pre_init_actions()

void amr_wind::ib::IB::pre_init_actions ( )
override

◆ pre_pressure_correction_work()

void amr_wind::ib::IB::pre_pressure_correction_work ( )
override

◆ prepare_outputs()

void amr_wind::ib::IB::prepare_outputs ( )
protectedvirtual

◆ update_positions()

void amr_wind::ib::IB::update_positions ( )
staticprivate

Update immersed boundary positions.

This method loops over all immersed boundaries and updates their position. Their new location may be prescribed or computed

See also
IB::update_velocities

◆ update_velocities()

void amr_wind::ib::IB::update_velocities ( )
private

Provide updated velocities to immersed boundary instances

See also
IB::update_positions

Member Data Documentation

◆ m_ib_levelset

Field& amr_wind::ib::IB::m_ib_levelset
private

Immersed boundary levelset for cell-centers.

◆ m_ib_normal

Field& amr_wind::ib::IB::m_ib_normal
private

Immersed boundary normal vector defined on cell-centers.

◆ m_ibs

std::vector<std::unique_ptr<ImmersedBoundaryModel> > amr_wind::ib::IB::m_ibs
private

◆ m_sim

CFDSim& amr_wind::ib::IB::m_sim
private

The documentation for this class was generated from the following files:
  • /home/runner/work/amr-wind/amr-wind/amr-wind/immersed_boundary/IB.H
  • /home/runner/work/amr-wind/amr-wind/amr-wind/immersed_boundary/IB.cpp