45 const auto view = hyperbolic_system_.template view<dim, Number>();
46 const Number g = view.gravity();
48 const auto &x = point[0];
50 const Number celerity = std::sqrt(g * (amplitude_ + depth_));
51 const Number width = std::sqrt(
52 3. * amplitude_ / (4. * depth_ * depth_ * (amplitude_ + depth_)));
53 const Number sechSqd =
54 1. / std::pow(cosh(width * (x - celerity * t)), 2);
57 const Number profile = depth_ + amplitude_ * sechSqd;
58 const Number h = std::max(profile, Number(0.));
60 const Number v = celerity * (profile - depth_) / profile;