/home/runner/work/amr-wind/amr-wind/amr-wind/physics/multiphase/VortexPatchScalarVel.H Source File

AMR-Wind API: /home/runner/work/amr-wind/amr-wind/amr-wind/physics/multiphase/VortexPatchScalarVel.H Source File
AMR-Wind API v0.1.0
CFD solver for wind plant simulations
Loading...
Searching...
No Matches
VortexPatchScalarVel.H
Go to the documentation of this file.
1#ifndef VortexPatchScalarVel_H
2#define VortexPatchScalarVel_H
3
6#include "AMReX_REAL.H"
7
8using namespace amrex::literals;
9
14
20
21namespace amr_wind {
22
23class VortexPatchScalarVel : public Physics::Register<VortexPatchScalarVel>
24{
25 static_assert(
26 AMREX_SPACEDIM == 3,
27 "VortexPatchScalarVel requires 3 dimensional mesh");
28
29public:
30 static std::string identifier() { return "VortexPatchScalarVel"; }
31
32 explicit VortexPatchScalarVel(CFDSim& sim);
33
34 ~VortexPatchScalarVel() override = default;
35
37
38 void initialize_fields(int level, const amrex::Geometry& geom) override;
39
40 void post_init_actions() override {}
41
42 void post_regrid_actions() override {}
43
44 void pre_advance_work() override;
45
46 void post_advance_work() override;
47
48private:
49 const CFDSim& m_sim;
50
54
56 amrex::Vector<amrex::Real> m_loc{0.35_rt, 0.35_rt, 0.35_rt};
57
59 amrex::Real m_radius{0.15_rt};
60
62 amrex::Real m_sfactor{1.0_rt};
63
65 amrex::Real m_TT{3.0_rt};
66};
67
68} // namespace amr_wind
69
70#endif /* VortexPatchScalarVel_H */
Definition CFDSim.H:54
Definition Field.H:116
amrex::Real m_TT
prescribed velocity period
Definition VortexPatchScalarVel.H:65
static std::string identifier()
Definition VortexPatchScalarVel.H:30
Field & m_velocity
Definition VortexPatchScalarVel.H:51
const CFDSim & m_sim
Definition VortexPatchScalarVel.H:49
void pre_advance_work() override
Definition VortexPatchScalarVel.cpp:130
void initialize_fields(int level, const amrex::Geometry &geom) override
Initialize the levelset and velocity fields for Vortex Patch simulations.
Definition VortexPatchScalarVel.cpp:31
~VortexPatchScalarVel() override=default
amrex::Real m_sfactor
smoothing factor
Definition VortexPatchScalarVel.H:62
void post_advance_work() override
Definition VortexPatchScalarVel.cpp:187
void post_init_actions() override
Definition VortexPatchScalarVel.H:40
VortexPatchScalarVel(CFDSim &sim)
Definition VortexPatchScalarVel.cpp:11
Field & m_density
Definition VortexPatchScalarVel.H:53
amrex::Vector< amrex::Real > m_loc
Initial VortexPatchScalarVel location.
Definition VortexPatchScalarVel.H:56
Field & m_levelset
Definition VortexPatchScalarVel.H:52
void post_regrid_actions() override
Definition VortexPatchScalarVel.H:42
amrex::Real m_radius
vortex patch radius value
Definition VortexPatchScalarVel.H:59
This test case is intended as an evaluation of the momentum advection scheme.
Definition BCInterface.cpp:10