Reference documentation for deal.II version 9.1.1
\(\newcommand{\dealcoloneq}{\mathrel{\vcenter{:}}=}\)
Public Member Functions | List of all members
Functions::PillowFunction< dim > Class Template Reference

#include <deal.II/base/function_lib.h>

Inheritance diagram for Functions::PillowFunction< dim >:
[legend]

Public Member Functions

 PillowFunction (const double offset=0.)
 
virtual double value (const Point< dim > &p, const unsigned int component=0) const override
 
virtual void value_list (const std::vector< Point< dim >> &points, std::vector< double > &values, const unsigned int component=0) const override
 
virtual Tensor< 1, dim > gradient (const Point< dim > &p, const unsigned int component=0) const override
 
virtual void gradient_list (const std::vector< Point< dim >> &points, std::vector< Tensor< 1, dim >> &gradients, const unsigned int component=0) const override
 
virtual double laplacian (const Point< dim > &p, const unsigned int component=0) const override
 
virtual void laplacian_list (const std::vector< Point< dim >> &points, std::vector< double > &values, const unsigned int component=0) const override
 
- Public Member Functions inherited from Function< dim >
 Function (const unsigned int n_components=1, const time_type initial_time=0.0)
 
virtual ~Function () override=0
 
Functionoperator= (const Function &f)
 
virtual void vector_value (const Point< dim > &p, Vector< double > &values) const
 
virtual void vector_value_list (const std::vector< Point< dim >> &points, std::vector< Vector< double >> &values) const
 
virtual void vector_values (const std::vector< Point< dim >> &points, std::vector< std::vector< double >> &values) const
 
virtual void vector_gradient (const Point< dim > &p, std::vector< Tensor< 1, dim, double >> &gradients) const
 
virtual void gradient_list (const std::vector< Point< dim >> &points, std::vector< Tensor< 1, dim, double >> &gradients, const unsigned int component=0) const
 
virtual void vector_gradients (const std::vector< Point< dim >> &points, std::vector< std::vector< Tensor< 1, dim, double >>> &gradients) const
 
virtual void vector_gradient_list (const std::vector< Point< dim >> &points, std::vector< std::vector< Tensor< 1, dim, double >>> &gradients) const
 
virtual void vector_laplacian (const Point< dim > &p, Vector< double > &values) const
 
virtual void vector_laplacian_list (const std::vector< Point< dim >> &points, std::vector< Vector< double >> &values) const
 
virtual SymmetricTensor< 2, dim, double > hessian (const Point< dim > &p, const unsigned int component=0) const
 
virtual void vector_hessian (const Point< dim > &p, std::vector< SymmetricTensor< 2, dim, double >> &values) const
 
virtual void hessian_list (const std::vector< Point< dim >> &points, std::vector< SymmetricTensor< 2, dim, double >> &values, const unsigned int component=0) const
 
virtual void vector_hessian_list (const std::vector< Point< dim >> &points, std::vector< std::vector< SymmetricTensor< 2, dim, double >>> &values) const
 
std::size_t memory_consumption () const
 
- Public Member Functions inherited from FunctionTime< Number >
 FunctionTime (const Number initial_time=Number(0.0))
 
virtual ~FunctionTime ()=default
 
Number get_time () const
 
virtual void set_time (const Number new_time)
 
virtual void advance_time (const Number delta_t)
 
- Public Member Functions inherited from Subscriptor
 Subscriptor ()
 
 Subscriptor (const Subscriptor &)
 
 Subscriptor (Subscriptor &&) noexcept
 
virtual ~Subscriptor ()
 
Subscriptoroperator= (const Subscriptor &)
 
Subscriptoroperator= (Subscriptor &&) noexcept
 
void subscribe (std::atomic< bool > *const validity, const std::string &identifier="") const
 
void unsubscribe (std::atomic< bool > *const validity, const std::string &identifier="") const
 
unsigned int n_subscriptions () const
 
template<typename StreamType >
void list_subscribers (StreamType &stream) const
 
void list_subscribers () const
 
template<class Archive >
void serialize (Archive &ar, const unsigned int version)
 

Additional Inherited Members

- Public Types inherited from Function< dim >
using time_type = typename FunctionTime< typename numbers::NumberTraits< double >::real_type >::time_type
 
- Public Types inherited from FunctionTime< Number >
using time_type = Number
 
- Static Public Member Functions inherited from Subscriptor
static ::ExceptionBaseExcInUse (int arg1, std::string arg2, std::string arg3)
 
static ::ExceptionBaseExcNoSubscriber (std::string arg1, std::string arg2)
 
- Public Attributes inherited from Function< dim >
const unsigned int n_components
 
- Static Public Attributes inherited from Function< dim >
static const unsigned int dimension
 

Detailed Description

template<int dim>
class Functions::PillowFunction< dim >

d-quadratic pillow on the unit hypercube.

This is a function for testing the implementation. It has zero Dirichlet boundary values on the domain \((-1,1)^d\). In the inside, it is the product of \(1-x_i^2\) over all space dimensions.

Providing a non-zero argument to the constructor, the whole function can be offset by a constant.

Together with the function, its derivatives and Laplacian are defined.

Author
: Guido Kanschat, 1999

Definition at line 155 of file function_lib.h.

Constructor & Destructor Documentation

◆ PillowFunction()

template<int dim>
Functions::PillowFunction< dim >::PillowFunction ( const double  offset = 0.)

Constructor. Provide a constant that will be added to each function value.

Definition at line 254 of file function_lib.cc.

Member Function Documentation

◆ value()

template<int dim>
double Functions::PillowFunction< dim >::value ( const Point< dim > &  p,
const unsigned int  component = 0 
) const
overridevirtual

The value at a single point.

Reimplemented from Function< dim >.

Definition at line 261 of file function_lib.cc.

◆ value_list()

template<int dim>
void Functions::PillowFunction< dim >::value_list ( const std::vector< Point< dim >> &  points,
std::vector< double > &  values,
const unsigned int  component = 0 
) const
overridevirtual

Values at multiple points.

Reimplemented from Function< dim >.

Definition at line 280 of file function_lib.cc.

◆ gradient()

template<int dim>
Tensor< 1, dim > Functions::PillowFunction< dim >::gradient ( const Point< dim > &  p,
const unsigned int  component = 0 
) const
overridevirtual

Gradient at a single point.

Reimplemented from Function< dim >.

Definition at line 364 of file function_lib.cc.

◆ gradient_list()

template<int dim>
void Functions::PillowFunction< dim >::gradient_list ( const std::vector< Point< dim >> &  points,
std::vector< Tensor< 1, dim >> &  gradients,
const unsigned int  component = 0 
) const
overridevirtual

Gradients at multiple points.

Definition at line 389 of file function_lib.cc.

◆ laplacian()

template<int dim>
double Functions::PillowFunction< dim >::laplacian ( const Point< dim > &  p,
const unsigned int  component = 0 
) const
overridevirtual

Laplacian at a single point.

Reimplemented from Function< dim >.

Definition at line 313 of file function_lib.cc.

◆ laplacian_list()

template<int dim>
void Functions::PillowFunction< dim >::laplacian_list ( const std::vector< Point< dim >> &  points,
std::vector< double > &  values,
const unsigned int  component = 0 
) const
overridevirtual

Laplacian at multiple points.

Reimplemented from Function< dim >.

Definition at line 333 of file function_lib.cc.


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