|
|
| Lorentzian (const Lorentzian &)=default |
|
Lorentzian & | operator= (const Lorentzian &)=default |
|
| Lorentzian (Lorentzian &&)=default |
|
Lorentzian & | operator= (Lorentzian &&)=default |
|
| Lorentzian (const double constant, const double complex_phase=0.) |
|
double | constant () const |
|
double | complex_phase () const |
| std::unique_ptr< elliptic::analytic_data::AnalyticSolution > | get_clone () const override |
|
template<typename... RequestedTags> |
| tuples::TaggedTuple< RequestedTags... > | variables (const tnsr::I< DataVector, Dim > &x, tmpl::list< RequestedTags... >) const |
|
void | pup (PUP::er &p) override |
template<size_t Dim, typename DataType = DataVector>
class Poisson::Solutions::Lorentzian< Dim, DataType >
A Lorentzian solution to the Poisson equation.
Details
This implements the Lorentzian solution \(u(\boldsymbol{x})=\left(1+r^2\right)^{-\frac{1}{2}}\) to the three-dimensional Poisson equation \(-\Delta u(\boldsymbol{x})=f(\boldsymbol{x})\), where \(r^2=x^2+y^2+z^2\). The corresponding source is \(f(\boldsymbol{x})=3\left(1+r^2\right)^{-\frac{5}{2}}\).
If DataType is ComplexDataVector, the solution is multiplied by exp(i * complex_phase) to rotate it in the complex plane. This allows to use this solution for the complex Poisson equation.
- Note
- Corresponding 1D and 2D solutions are not implemented yet.