Reference documentation for deal.II version 9.0.0
|
#include <deal.II/base/function_cspline.h>
Public Member Functions | |
CSpline (const std::vector< double > &interpolation_points, const std::vector< double > &interpolation_values) | |
virtual | ~CSpline () |
virtual double | value (const Point< dim > &point, const unsigned int component=0) const |
virtual Tensor< 1, dim > | gradient (const Point< dim > &p, const unsigned int component=0) const |
virtual SymmetricTensor< 2, dim > | hessian (const Point< dim > &p, const unsigned int component=0) const |
virtual double | laplacian (const Point< dim > &p, const unsigned int component=0) const |
Public Member Functions inherited from Function< dim > | |
Function (const unsigned int n_components=1, const double initial_time=0.0) | |
virtual | ~Function ()=0 |
Function & | operator= (const Function &f) |
virtual void | vector_value (const Point< dim > &p, Vector< double > &values) const |
virtual void | value_list (const std::vector< Point< dim > > &points, std::vector< double > &values, const unsigned int component=0) 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 | laplacian_list (const std::vector< Point< dim > > &points, std::vector< double > &values, const unsigned int component=0) const |
virtual void | vector_laplacian_list (const std::vector< Point< dim > > &points, std::vector< Vector< double > > &values) 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 () |
Subscriptor & | operator= (const Subscriptor &) |
Subscriptor & | operator= (Subscriptor &&) noexcept |
void | subscribe (const char *identifier=nullptr) const |
void | unsubscribe (const char *identifier=nullptr) const |
unsigned int | n_subscriptions () const |
void | list_subscribers () const |
template<class Archive > | |
void | serialize (Archive &ar, const unsigned int version) |
Private Attributes | |
const std::vector< double > | interpolation_points |
const std::vector< double > | interpolation_values |
gsl_interp_accel * | acc |
gsl_spline * | cspline |
Threads::Mutex | acc_mutex |
Additional Inherited Members | |
Static Public Member Functions inherited from Subscriptor | |
static ::ExceptionBase & | ExcInUse (int arg1, std::string arg2, std::string arg3) |
static ::ExceptionBase & | ExcNoSubscriber (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 |
The cubic spline function using GNU Scientific Library. The resulting curve is piecewise cubic on each interval, with matching first and second derivatives at the supplied data-points. The second derivative is chosen to be zero at the first point and last point.
Definition at line 69 of file function_cspline.h.
Functions::CSpline< dim >::CSpline | ( | const std::vector< double > & | interpolation_points, |
const std::vector< double > & | interpolation_values | ||
) |
Constructor which should be provided with a set of points at which interpolation is to be done interpolation_points
and a set of function values interpolation_values
.
Definition at line 28 of file function_cspline.cc.
|
virtual |
Virtual destructor.
Definition at line 55 of file function_cspline.cc.
|
virtual |
Return the value of the function at the given point. Unless there is only one component (i.e. the function is scalar), you should state the component you want to have evaluated; it defaults to zero, i.e. the first component.
Reimplemented from Function< dim >.
Definition at line 67 of file function_cspline.cc.
|
virtual |
Return the gradient of the specified component of the function at the given point.
Reimplemented from Function< dim >.
Definition at line 86 of file function_cspline.cc.
|
virtual |
Compute the Hessian of a given component at point p
, that is the gradient of the gradient of the function.
Reimplemented from Function< dim >.
Definition at line 127 of file function_cspline.cc.
|
virtual |
Compute the Laplacian of a given component at point p
.
Reimplemented from Function< dim >.
Definition at line 108 of file function_cspline.cc.
|
private |
Points at which interpolation is provided
Definition at line 103 of file function_cspline.h.
|
private |
Values of the function at interpolation points
Definition at line 108 of file function_cspline.h.
|
private |
GSL accelerator for spline interpolation
Definition at line 113 of file function_cspline.h.
|
private |
GSL cubic spline interpolator
Definition at line 118 of file function_cspline.h.
|
mutableprivate |
A mutex for accelerator object.
Definition at line 123 of file function_cspline.h.