SpECTRE  v2024.05.11
Burgers::Solutions::Bump Class Reference

A solution resembling a bump. More...

#include <Bump.hpp>

Classes

struct  Center
 
struct  HalfWidth
 
struct  Height
 

Public Types

using options = tmpl::list< HalfWidth, Height, Center >
 

Public Member Functions

 Bump (const Bump &)=default
 
Bumpoperator= (const Bump &)=default
 
 Bump (Bump &&)=default
 
Bumpoperator= (Bump &&)=default
 
 Bump (double half_width, double height, double center=0.)
 
auto get_clone () const -> std::unique_ptr< evolution::initial_data::InitialData > override
 
template<typename T >
Scalar< T > u (const tnsr::I< T, 1 > &x, double t) const
 
template<typename T >
Scalar< T > du_dt (const tnsr::I< T, 1 > &x, double t) const
 
tuples::TaggedTuple< Tags::Uvariables (const tnsr::I< DataVector, 1 > &x, double t, tmpl::list< Tags::U >) const
 
tuples::TaggedTuple<::Tags::dt< Burgers::Tags::U > > variables (const tnsr::I< DataVector, 1 > &x, double t, tmpl::list<::Tags::dt< Tags::U > >) const
 
void pup (PUP::er &p) override
 
virtual auto get_clone () const -> std::unique_ptr< InitialData >=0
 

Static Public Attributes

static constexpr Options::String help {"A bump solution"}
 

Detailed Description

A solution resembling a bump.

At \(t=0\), the solution is a parabola:

\begin{equation*} u(x, t) = h \left(1 - \left(\frac{x - c}{w}\right)^2\right), \end{equation*}

where \(h\) is the height, \(c\) is the center, and \(w\) is the distance from the center to the zeros. A shock propagates in from infinity and reaches one of the zeros at \(t = \frac{w}{2 h}\).

Member Function Documentation

◆ get_clone()

auto Burgers::Solutions::Bump::get_clone ( ) const -> std::unique_ptr< evolution::initial_data::InitialData >
overridevirtual

The documentation for this class was generated from the following file: