MADNESS 0.10.1
|
The constant on a sphere problem, with inhomogeneity. More...
#include <test_problems.h>
Public Member Functions | |
InhomoConstantSphere (int k, double thresh, double eps, std::string penalty_name, double penalty_prefact, double radius, Mask mask) | |
virtual std::vector< Vector< double, 3 > > | check_pts () const |
A list of points where we should compare the computed solution to the exact solution. | |
double | DirichletCond (const Vector< double, 3 > &x) const |
double | ExactSol (const Vector< double, 3 > &x) const |
double | Inhomogeneity (const Vector< double, 3 > &x) const |
double | SurfaceIntegral () const |
The surface area of the domain. | |
double | VolumeIntegral () const |
The volume of the domain. | |
![]() | |
EmbeddedDirichlet (double penalty_prefact, std::string penalty_name, double eps, int k, double thresh, Mask mask) | |
Sets up the data for the problem-inspecific parts. | |
virtual | ~EmbeddedDirichlet () |
void | load_balance (World &world, const Function< double, 3 > &f) const |
Load balances using the provided Function. | |
double | operator() (const Vector< double, 3 > &x) const |
The operator for projecting a MADNESS function. | |
void | printout () const |
Do a standard Printout of the problem details. | |
![]() | |
FunctionFunctorInterface () | |
virtual | ~FunctionFunctorInterface () |
virtual coeffT | coeff (const keyT &) const |
virtual void | operator() (const Vector< double *, 1 > &xvals, double *fvals, int npts) const |
virtual void | operator() (const Vector< double *, 2 > &xvals, double *fvals, int npts) const |
virtual void | operator() (const Vector< double *, 3 > &xvals, double *fvals, int npts) const |
virtual void | operator() (const Vector< double *, 4 > &xvals, double *fvals, int npts) const |
virtual void | operator() (const Vector< double *, 5 > &xvals, double *fvals, int npts) const |
virtual void | operator() (const Vector< double *, 6 > &xvals, double *fvals, int npts) const |
virtual double | operator() (const Vector< double, NDIM > &x) const=0 |
You should implement this to return f(x) | |
virtual bool | provides_coeff () const |
does this functor directly provide sum coefficients? or only function values? | |
virtual bool | screened (const Vector< double, NDIM > &c1, const Vector< double, NDIM > &c2) const |
Can we screen this function based on the bounding box information? | |
void | set_length_scale (double lo) |
adapt the special level to resolve the smallest length scale | |
virtual Level | special_level () const |
Override this to change the minimum level of refinement at special points (default is 6) | |
virtual std::vector< Vector< double, NDIM > > | special_points () const |
Override this to return list of special points to be refined more deeply. | |
virtual bool | supports_vectorized () const |
Does the interface support a vectorized operator()? | |
virtual coeffT | values (const keyT &key, const Tensor< double > &tensor) const |
Protected Member Functions | |
bool | isHomogeneous () const |
Protected Attributes | |
double | radius |
![]() | |
DomainMaskInterface * | dmi |
std::string | domain_mask_name |
double | eps |
double | penalty_prefact |
std::string | problem_name |
std::string | problem_specific_info |
SignedDFInterface< 3 > * | sdfi |
Additional Inherited Members | |
![]() | |
typedef GenTensor< double > | coeffT |
typedef Key< NDIM > | keyT |
typedef double | value_type |
![]() | |
FunctorOutput | fop |
![]() | |
Level | special_level_ |
The constant on a sphere problem, with inhomogeneity.
A list of points where we should compare the computed solution to the exact solution.
Reimplemented from EmbeddedDirichlet.
References madness::nonlinear_vector_solver(), radius, and madness::vec().
Implements EmbeddedDirichlet.
Implements EmbeddedDirichlet.
References madness::nonlinear_vector_solver(), and radius.
Implements EmbeddedDirichlet.
References radius.
|
inlineprotectedvirtual |
Implements EmbeddedDirichlet.
|
inlinevirtual |
The surface area of the domain.
Implements EmbeddedDirichlet.
References madness::constants::pi, and radius.
|
inlinevirtual |
The volume of the domain.
Implements EmbeddedDirichlet.
References madness::constants::pi, and radius.
|
protected |
Referenced by InhomoConstantSphere(), check_pts(), ExactSol(), Inhomogeneity(), SurfaceIntegral(), and VolumeIntegral().