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

AMR-Wind API: /home/runner/work/amr-wind/amr-wind/amr-wind/equation_systems/icns/source_terms/CoriolisForcing.H Source File
AMR-Wind API v0.1.0
CFD solver for wind plant simulations
Loading...
Searching...
No Matches
CoriolisForcing.H
Go to the documentation of this file.
1#ifndef CORIOLISFORCING_H
2#define CORIOLISFORCING_H
3
6#include "AMReX_REAL.H"
7
8using namespace amrex::literals;
9
10namespace amr_wind::pde::icns {
11
16class CoriolisForcing : public MomentumSource::Register<CoriolisForcing>
17{
18public:
19 static std::string identifier() { return "CoriolisForcing"; }
20
21 explicit CoriolisForcing(const CFDSim& /*sim*/);
22
23 ~CoriolisForcing() override;
24
25 void operator()(
26 const int lev,
27 const amrex::MFIter& mfi,
28 const amrex::Box& bx,
29 const FieldState fstate,
30 const amrex::Array4<amrex::Real>& src_term) const override;
31
32private:
34
36
38 amrex::Vector<amrex::Real> m_east{1.0_rt, 0.0_rt, 0.0_rt};
39 amrex::Vector<amrex::Real> m_north{0.0_rt, 1.0_rt, 0.0_rt};
40 amrex::Vector<amrex::Real> m_up{0.0_rt, 0.0_rt, 1.0_rt};
42
45 amrex::Real m_latitude{0.0_rt};
46
47 amrex::Real m_sinphi{0.0_rt};
48 amrex::Real m_cosphi{0.0_rt};
49
51 amrex::Real m_omega{7.3e-5_rt};
52
54 amrex::Real m_coriolis_factor{0.0_rt};
55
56 bool m_is_horizontal{false};
57};
58
59} // namespace amr_wind::pde::icns
60
61#endif /* CORIOLISFORCING_H */
Definition CFDSim.H:54
Definition Field.H:116
amrex::Real m_latitude
Latitude where the Coriolis forcing is computed (+ve northern hemisphere)
Definition CoriolisForcing.H:45
amrex::Vector< amrex::Real > m_north
Definition CoriolisForcing.H:39
bool m_is_horizontal
Definition CoriolisForcing.H:56
CoriolisForcing(const CFDSim &)
Definition CoriolisForcing.cpp:27
amrex::Real m_sinphi
Definition CoriolisForcing.H:47
const Field & m_velocity
Definition CoriolisForcing.H:33
amrex::Real m_coriolis_factor
2.0_rt * omega
Definition CoriolisForcing.H:54
amrex::Real m_cosphi
Definition CoriolisForcing.H:48
amrex::Vector< amrex::Real > m_east
Definition CoriolisForcing.H:38
static std::string identifier()
Definition CoriolisForcing.H:19
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
Definition CoriolisForcing.cpp:59
amrex::Real m_omega
omega --> Earth’s rotation angular speed
Definition CoriolisForcing.H:51
amrex::Vector< amrex::Real > m_up
Definition CoriolisForcing.H:40
FieldState
Definition FieldDescTypes.H:14
Definition ABLForcing.cpp:14