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