/home/runner/work/amr-wind/amr-wind/amr-wind/equation_systems/icns/source_terms/MetMastForcing.H Source File

AMR-Wind API: /home/runner/work/amr-wind/amr-wind/amr-wind/equation_systems/icns/source_terms/MetMastForcing.H Source File
AMR-Wind API v0.1.0
CFD solver for wind plant simulations
Loading...
Searching...
No Matches
MetMastForcing.H
Go to the documentation of this file.
1#ifndef METMASTFORCING_H
2#define METMASTFORCING_H
3
6#include "amr-wind/CFDSim.H"
7
8namespace amr_wind::pde::icns {
9
10class MetMastForcing : public MomentumSource::Register<MetMastForcing>
11{
12public:
13 static std::string identifier() { return "MetMastForcing"; }
14
15 explicit MetMastForcing(const CFDSim& sim);
16
17 ~MetMastForcing() override;
18
19 void operator()(
20 const int lev,
21 const amrex::MFIter& mfi,
22 const amrex::Box& bx,
23 const FieldState /*fstate*/,
24 const amrex::Array4<amrex::Real>& src_term) const override;
25
26private:
28 const amrex::AmrCore& m_mesh;
29 std::string m_1d_metmast;
31 amrex::Vector<amrex::Real> m_metmast_x;
32 amrex::Vector<amrex::Real> m_metmast_y;
33 amrex::Vector<amrex::Real> m_metmast_z;
34 amrex::Vector<amrex::Real> m_u_values;
35 amrex::Vector<amrex::Real> m_v_values;
36 amrex::Vector<amrex::Real> m_w_values;
37 amrex::Gpu::DeviceVector<amrex::Real> m_metmast_x_d;
38 amrex::Gpu::DeviceVector<amrex::Real> m_metmast_y_d;
39 amrex::Gpu::DeviceVector<amrex::Real> m_metmast_z_d;
40 amrex::Gpu::DeviceVector<amrex::Real> m_u_values_d;
41 amrex::Gpu::DeviceVector<amrex::Real> m_v_values_d;
42 amrex::Gpu::DeviceVector<amrex::Real> m_w_values_d;
43 amrex::Real m_meso_timescale{30};
44 amrex::Real m_long_radius{500};
45 amrex::Real m_vertical_radius{25};
46 amrex::Real m_damping_radius{1400};
47 const CFDSim& m_sim;
48};
49
50} // namespace amr_wind::pde::icns
51#endif
Definition CFDSim.H:54
Definition Field.H:116
Definition SimTime.H:30
amrex::Gpu::DeviceVector< amrex::Real > m_metmast_z_d
Definition MetMastForcing.H:39
amrex::Real m_meso_timescale
Definition MetMastForcing.H:43
amrex::Real m_damping_radius
Definition MetMastForcing.H:46
amrex::Vector< amrex::Real > m_metmast_x
Definition MetMastForcing.H:31
amrex::Real m_long_radius
Definition MetMastForcing.H:44
static std::string identifier()
Definition MetMastForcing.H:13
const Field & m_velocity
Definition MetMastForcing.H:30
amrex::Vector< amrex::Real > m_v_values
Definition MetMastForcing.H:35
amrex::Gpu::DeviceVector< amrex::Real > m_w_values_d
Definition MetMastForcing.H:42
amrex::Vector< amrex::Real > m_u_values
Definition MetMastForcing.H:34
std::string m_1d_metmast
Definition MetMastForcing.H:29
amrex::Real m_vertical_radius
Definition MetMastForcing.H:45
amrex::Vector< amrex::Real > m_metmast_z
Definition MetMastForcing.H:33
amrex::Gpu::DeviceVector< amrex::Real > m_u_values_d
Definition MetMastForcing.H:40
amrex::Gpu::DeviceVector< amrex::Real > m_v_values_d
Definition MetMastForcing.H:41
const amrex::AmrCore & m_mesh
Definition MetMastForcing.H:28
void operator()(const int lev, const amrex::MFIter &mfi, const amrex::Box &bx, const FieldState, const amrex::Array4< amrex::Real > &src_term) const override
Definition MetMastForcing.cpp:71
amrex::Gpu::DeviceVector< amrex::Real > m_metmast_x_d
Definition MetMastForcing.H:37
MetMastForcing(const CFDSim &sim)
Definition MetMastForcing.cpp:11
const SimTime & m_time
Definition MetMastForcing.H:27
amrex::Vector< amrex::Real > m_w_values
Definition MetMastForcing.H:36
amrex::Gpu::DeviceVector< amrex::Real > m_metmast_y_d
Definition MetMastForcing.H:38
amrex::Vector< amrex::Real > m_metmast_y
Definition MetMastForcing.H:32
const CFDSim & m_sim
Definition MetMastForcing.H:47
FieldState
Definition FieldDescTypes.H:14
Definition ABLForcing.cpp:11