6template <auto Pa_, auto U_, auto T_, auto P0_>
9 constexpr auto lambda = U_ * T_;
10 constexpr auto xShift = -0.75 * lambda;
12 const auto xShifted =
x + xShift;
15 const auto phase = (xShifted / U_) - t;
18 const auto raw = 2.0 * phase / T_;
19 const auto tt = std::round(raw);
21 if (tt >= 0 && tt <= 1) {
24 const auto damping = std::exp(-5.0 * tt);
26 const auto omega = 2.0 * M_PI / T_;
28 return P0_ - (Pa_ * damping * std::sin(omega * phase));
static auto atmosphericPressure(const auto x, const auto y, const auto t)
Computes the pressure field p(x, y, t) following the Jörn test-case logic.