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
 
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}
 

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()

static 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_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_is_laminar

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

◆ m_mesh

const amrex::AmrCore& amr_wind::pde::icns::DragForcing::m_mesh
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_time

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

◆ m_velocity

const Field& amr_wind::pde::icns::DragForcing::m_velocity
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