SpECTRE  2021.08.02
Poisson::Solutions::ProductOfSinusoids< Dim, Registrars > Class Template Reference

A product of sinusoids \(u(\boldsymbol{x}) = \prod_i \sin(k_i x_i)\). More...

#include <ProductOfSinusoids.hpp>

Classes

struct  WaveNumbers
 

Public Types

using options = tmpl::list< WaveNumbers >
 

Public Member Functions

 ProductOfSinusoids (const ProductOfSinusoids &) noexcept=default
 
ProductOfSinusoidsoperator= (const ProductOfSinusoids &) noexcept=default
 
 ProductOfSinusoids (ProductOfSinusoids &&) noexcept=default
 
ProductOfSinusoidsoperator= (ProductOfSinusoids &&) noexcept=default
 
 ProductOfSinusoids (const std::array< double, Dim > &wave_numbers) noexcept
 
template<typename DataType , typename... RequestedTags>
tuples::TaggedTuple< RequestedTags... > variables (const tnsr::I< DataType, Dim > &x, tmpl::list< RequestedTags... >) const noexcept
 
void pup (PUP::er &p) noexcept override
 
const std::array< double, Dim > & wave_numbers () const noexcept
 

Static Public Attributes

static constexpr Options::String help
 

Detailed Description

template<size_t Dim, typename Registrars = tmpl::list<Solutions::Registrars::ProductOfSinusoids<Dim>>>
class Poisson::Solutions::ProductOfSinusoids< Dim, Registrars >

A product of sinusoids \(u(\boldsymbol{x}) = \prod_i \sin(k_i x_i)\).

Details

Solves the Poisson equation \(-\Delta u(x)=f(x)\) for a source \(f(x)=\boldsymbol{k}^2\prod_i \sin(k_i x_i)\).

Member Data Documentation

◆ help

template<size_t Dim, typename Registrars = tmpl::list<Solutions::Registrars::ProductOfSinusoids<Dim>>>
constexpr Options::String Poisson::Solutions::ProductOfSinusoids< Dim, Registrars >::help
staticconstexpr
Initial value:
{
"A product of sinusoids that are taken of a wave number times the "
"coordinate in each dimension."}