KransAxell Class Reference

AMR-Wind API: amr_wind::pde::tke::KransAxell Class Reference
AMR-Wind API v0.1.0
CFD solver for wind plant simulations

#include <KransAxell.H>

Inheritance diagram for amr_wind::pde::tke::KransAxell:
[legend]
Collaboration diagram for amr_wind::pde::tke::KransAxell:
[legend]

Public Member Functions

 KransAxell (const CFDSim &)
 
 ~KransAxell () 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

Fieldm_turb_lscale
 
Fieldm_shear_prod
 
Fieldm_buoy_prod
 
Fieldm_dissip
 
Fieldm_tke
 
amrex::Real m_Cmu {0.556}
 
amrex::Real m_heat_flux {0.0}
 
amrex::Real m_z0 {0.1}
 
amrex::Real m_kappa {0.41}
 
amrex::Real m_meso_start {600}
 
amrex::Vector< amrex::Real > m_gravity {0.0, 0.0, -9.81}
 
const SimTimem_time
 
const CFDSimm_sim
 
const amrex::AmrCore & m_mesh
 
const Fieldm_velocity
 
std::string m_1d_rans
 
amrex::Vector< amrex::Real > m_wind_heights
 
amrex::Vector< amrex::Real > m_tke_values
 
amrex::Gpu::DeviceVector< amrex::Real > m_wind_heights_d
 
amrex::Gpu::DeviceVector< amrex::Real > m_tke_values_d
 
const transport::TransportModelm_transport
 Transport model.
 
std::unique_ptr< ScratchFieldm_ref_theta
 Reference temperature.
 
bool m_horizontal_sponge {false}
 
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}
 

Detailed Description

TKE source term based on Axell 2011 paper Axell, L. B., & Liungman, O. (2001). A one-equation turbulence model for geophysical applications: comparison with data and the k− ε model. Environmental Fluid Mechanics, 1, 71-106.

Constructor & Destructor Documentation

◆ KransAxell()

amr_wind::pde::tke::KransAxell::KransAxell ( const CFDSim & sim)
explicit

◆ ~KransAxell()

amr_wind::pde::tke::KransAxell::~KransAxell ( )
overridedefault

Member Function Documentation

◆ identifier()

static std::string amr_wind::pde::tke::KransAxell::identifier ( )
inlinestatic

◆ operator()()

void amr_wind::pde::tke::KransAxell::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_1d_rans

std::string amr_wind::pde::tke::KransAxell::m_1d_rans
private

◆ m_buoy_prod

Field& amr_wind::pde::tke::KransAxell::m_buoy_prod
private

◆ m_Cmu

amrex::Real amr_wind::pde::tke::KransAxell::m_Cmu {0.556}
private

◆ m_dissip

Field& amr_wind::pde::tke::KransAxell::m_dissip
private

◆ m_gravity

amrex::Vector<amrex::Real> amr_wind::pde::tke::KransAxell::m_gravity {0.0, 0.0, -9.81}
private

◆ m_heat_flux

amrex::Real amr_wind::pde::tke::KransAxell::m_heat_flux {0.0}
private

◆ m_horizontal_sponge

bool amr_wind::pde::tke::KransAxell::m_horizontal_sponge {false}
private

◆ m_kappa

amrex::Real amr_wind::pde::tke::KransAxell::m_kappa {0.41}
private

◆ m_mesh

const amrex::AmrCore& amr_wind::pde::tke::KransAxell::m_mesh
private

◆ m_meso_start

amrex::Real amr_wind::pde::tke::KransAxell::m_meso_start {600}
private

◆ m_ref_theta

std::unique_ptr<ScratchField> amr_wind::pde::tke::KransAxell::m_ref_theta
private

Reference temperature.

◆ m_shear_prod

Field& amr_wind::pde::tke::KransAxell::m_shear_prod
private

◆ m_sim

const CFDSim& amr_wind::pde::tke::KransAxell::m_sim
private

◆ m_sponge_density

amrex::Real amr_wind::pde::tke::KransAxell::m_sponge_density {1.0}
private

◆ m_sponge_distance_east

amrex::Real amr_wind::pde::tke::KransAxell::m_sponge_distance_east {1000}
private

◆ m_sponge_distance_north

amrex::Real amr_wind::pde::tke::KransAxell::m_sponge_distance_north {1000}
private

◆ m_sponge_distance_south

amrex::Real amr_wind::pde::tke::KransAxell::m_sponge_distance_south {-1000}
private

◆ m_sponge_distance_west

amrex::Real amr_wind::pde::tke::KransAxell::m_sponge_distance_west {-1000}
private

◆ m_sponge_east

int amr_wind::pde::tke::KransAxell::m_sponge_east {1}
private

◆ m_sponge_north

int amr_wind::pde::tke::KransAxell::m_sponge_north {1}
private

◆ m_sponge_south

int amr_wind::pde::tke::KransAxell::m_sponge_south {0}
private

◆ m_sponge_strength

amrex::Real amr_wind::pde::tke::KransAxell::m_sponge_strength {1.0}
private

◆ m_sponge_west

int amr_wind::pde::tke::KransAxell::m_sponge_west {0}
private

◆ m_time

const SimTime& amr_wind::pde::tke::KransAxell::m_time
private

◆ m_tke

Field& amr_wind::pde::tke::KransAxell::m_tke
private

◆ m_tke_values

amrex::Vector<amrex::Real> amr_wind::pde::tke::KransAxell::m_tke_values
private

◆ m_tke_values_d

amrex::Gpu::DeviceVector<amrex::Real> amr_wind::pde::tke::KransAxell::m_tke_values_d
private

◆ m_transport

const transport::TransportModel& amr_wind::pde::tke::KransAxell::m_transport
private

Transport model.

◆ m_turb_lscale

Field& amr_wind::pde::tke::KransAxell::m_turb_lscale
private

◆ m_velocity

const Field& amr_wind::pde::tke::KransAxell::m_velocity
private

◆ m_wind_heights

amrex::Vector<amrex::Real> amr_wind::pde::tke::KransAxell::m_wind_heights
private

◆ m_wind_heights_d

amrex::Gpu::DeviceVector<amrex::Real> amr_wind::pde::tke::KransAxell::m_wind_heights_d
private

◆ m_z0

amrex::Real amr_wind::pde::tke::KransAxell::m_z0 {0.1}
private

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