DragForcing Class Reference

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

#include <DragForcing.H>

Inheritance diagram for amr_wind::pde::icns::DragForcing:
[legend]
Collaboration diagram for amr_wind::pde::icns::DragForcing:
[legend]

Public Member Functions

 DragForcing (const CFDSim &sim)
 ~DragForcing () override
void operator() (const int lev, const amrex::MFIter &mfi, const amrex::Box &bx, const FieldState fstate, const amrex::Array4< amrex::Real > &src_term) const override

Static Public Member Functions

static std::string identifier ()

Private Attributes

const SimTimem_time
const CFDSimm_sim
const amrex::AmrCore & m_mesh
const Fieldm_velocity
const Fieldm_target_vel {nullptr}
const Fieldm_target_levelset {nullptr}
amrex::Gpu::DeviceVector< amrex::Real > m_device_vel_ht
amrex::Gpu::DeviceVector< amrex::Real > m_device_vel_vals
amrex::Real m_drag_coefficient {10.0}
amrex::Real m_sponge_strength {1.0}
amrex::Real m_sponge_density {1.0}
amrex::Real m_sponge_distance_west {-1000}
amrex::Real m_sponge_distance_east {1000}
amrex::Real m_sponge_distance_south {-1000}
amrex::Real m_sponge_distance_north {1000}
int m_sponge_west {0}
int m_sponge_east {1}
int m_sponge_south {0}
int m_sponge_north {1}
bool m_is_laminar {false}
bool m_terrain_is_waves {false}
bool m_apply_MOSD {false}
std::string m_wall_het_model {"none"}
amrex::Real m_monin_obukhov_length {constants::LARGE_NUM}
amrex::Real m_kappa {0.41}
amrex::Real m_gamma_m {5.0}
amrex::Real m_beta_m {16.0}

Detailed Description

Adds the forcing term to include the presence of immersed boundary

Constructor & Destructor Documentation

◆ DragForcing()

amr_wind::pde::icns::DragForcing::DragForcing ( const CFDSim & sim)
explicit

◆ ~DragForcing()

amr_wind::pde::icns::DragForcing::~DragForcing ( )
overridedefault

Member Function Documentation

◆ identifier()

std::string amr_wind::pde::icns::DragForcing::identifier ( )
inlinestatic

◆ operator()()

void amr_wind::pde::icns::DragForcing::operator() ( const int lev,
const amrex::MFIter & mfi,
const amrex::Box & bx,
const FieldState fstate,
const amrex::Array4< amrex::Real > & src_term ) const
override

Member Data Documentation

◆ m_apply_MOSD

bool amr_wind::pde::icns::DragForcing::m_apply_MOSD {false}
private

◆ m_beta_m

amrex::Real amr_wind::pde::icns::DragForcing::m_beta_m {16.0}
private

◆ m_device_vel_ht

amrex::Gpu::DeviceVector<amrex::Real> amr_wind::pde::icns::DragForcing::m_device_vel_ht
private

◆ m_device_vel_vals

amrex::Gpu::DeviceVector<amrex::Real> amr_wind::pde::icns::DragForcing::m_device_vel_vals
private

◆ m_drag_coefficient

amrex::Real amr_wind::pde::icns::DragForcing::m_drag_coefficient {10.0}
private

◆ m_gamma_m

amrex::Real amr_wind::pde::icns::DragForcing::m_gamma_m {5.0}
private

◆ m_is_laminar

bool amr_wind::pde::icns::DragForcing::m_is_laminar {false}
private

◆ m_kappa

amrex::Real amr_wind::pde::icns::DragForcing::m_kappa {0.41}
private

◆ m_mesh

const amrex::AmrCore& amr_wind::pde::icns::DragForcing::m_mesh
private

◆ m_monin_obukhov_length

amrex::Real amr_wind::pde::icns::DragForcing::m_monin_obukhov_length {constants::LARGE_NUM}
private

◆ m_sim

const CFDSim& amr_wind::pde::icns::DragForcing::m_sim
private

◆ m_sponge_density

amrex::Real amr_wind::pde::icns::DragForcing::m_sponge_density {1.0}
private

◆ m_sponge_distance_east

amrex::Real amr_wind::pde::icns::DragForcing::m_sponge_distance_east {1000}
private

◆ m_sponge_distance_north

amrex::Real amr_wind::pde::icns::DragForcing::m_sponge_distance_north {1000}
private

◆ m_sponge_distance_south

amrex::Real amr_wind::pde::icns::DragForcing::m_sponge_distance_south {-1000}
private

◆ m_sponge_distance_west

amrex::Real amr_wind::pde::icns::DragForcing::m_sponge_distance_west {-1000}
private

◆ m_sponge_east

int amr_wind::pde::icns::DragForcing::m_sponge_east {1}
private

◆ m_sponge_north

int amr_wind::pde::icns::DragForcing::m_sponge_north {1}
private

◆ m_sponge_south

int amr_wind::pde::icns::DragForcing::m_sponge_south {0}
private

◆ m_sponge_strength

amrex::Real amr_wind::pde::icns::DragForcing::m_sponge_strength {1.0}
private

◆ m_sponge_west

int amr_wind::pde::icns::DragForcing::m_sponge_west {0}
private

◆ m_target_levelset

const Field* amr_wind::pde::icns::DragForcing::m_target_levelset {nullptr}
private

◆ m_target_vel

const Field* amr_wind::pde::icns::DragForcing::m_target_vel {nullptr}
private

◆ m_terrain_is_waves

bool amr_wind::pde::icns::DragForcing::m_terrain_is_waves {false}
private

◆ m_time

const SimTime& amr_wind::pde::icns::DragForcing::m_time
private

◆ m_velocity

const Field& amr_wind::pde::icns::DragForcing::m_velocity
private

◆ m_wall_het_model

std::string amr_wind::pde::icns::DragForcing::m_wall_het_model {"none"}
private

The documentation for this class was generated from the following files:
  • /home/runner/work/amr-wind/amr-wind/amr-wind/equation_systems/icns/source_terms/DragForcing.H
  • /home/runner/work/amr-wind/amr-wind/amr-wind/equation_systems/icns/source_terms/DragForcing.cpp