|
SpECTRE
v2026.06.09.01
|
Performs a linear interpolation; this class can be chosen via the options factory mechanism as a possible SpanInterpolator. More...
#include <LinearSpanInterpolator.hpp>
Public Types | |
| using | options = tmpl::list<> |
| Public Types inherited from intrp::SpanInterpolator | |
| using | creatable_classes |
Public Member Functions | |
| LinearSpanInterpolator (const LinearSpanInterpolator &)=default | |
| LinearSpanInterpolator & | operator= (const LinearSpanInterpolator &)=default |
| LinearSpanInterpolator (LinearSpanInterpolator &&)=default | |
| LinearSpanInterpolator & | operator= (LinearSpanInterpolator &&)=default |
| WRAPPED_PUPable_decl_template (LinearSpanInterpolator) | |
| LinearSpanInterpolator (CkMigrateMessage *) | |
| void | pup (PUP::er &) override |
| std::unique_ptr< SpanInterpolator > | get_clone () const override |
| Produce a std::unique_ptr that points to a copy of `*this``. | |
| double | interpolate (const gsl::span< const double > &source_points, const gsl::span< const double > &values, double target_point) const override |
| Perform the interpolation of function represented by values at source_points to the requested target_point, returning the interpolation result. | |
| std::complex< double > | interpolate (const gsl::span< const double > &source_points, const gsl::span< const std::complex< double > > &values, double target_point) const |
| double | derivative (const gsl::span< const double > &source_points, const gsl::span< const double > &values, double target_point) const override |
| Evaluate the derivative of the interpolant of the function represented by values at source_points, evaluated at the requested target_point. | |
| std::complex< double > | derivative (const gsl::span< const double > &source_points, const gsl::span< const std::complex< double > > &values, double target_point) const override |
| Evaluate the derivative of the interpolant of the function represented by complex values at source_points, evaluated at the requested target_point. This generic implementation calls the real version on the real and imaginary parts separately; derived classes should override it when a specialized complex implementation that avoids the split is more efficient. | |
| size_t | required_number_of_points_before_and_after () const override |
| The number of domain points that should be both before and after the requested target point for best interpolation. For instance, for a linear interpolator, this function would return 1 to request that the target is between the two domain points passed to source_points. | |
| Public Member Functions inherited from intrp::SpanInterpolator | |
| WRAPPED_PUPable_abstract (SpanInterpolator) | |
| std::complex< double > | interpolate (const gsl::span< const double > &source_points, const gsl::span< const std::complex< double > > &values, double target_point) const |
| Perform the interpolation of function represented by complex values at source_points to the requested target_point, returning the (complex) interpolation result. | |
Static Public Attributes | |
| static constexpr Options::String | help = {"Linear interpolator."} |
Performs a linear interpolation; this class can be chosen via the options factory mechanism as a possible SpanInterpolator.
|
overridevirtual |
Evaluate the derivative of the interpolant of the function represented by values at source_points, evaluated at the requested target_point.
Implements intrp::SpanInterpolator.
|
overridevirtual |
Evaluate the derivative of the interpolant of the function represented by complex values at source_points, evaluated at the requested target_point. This generic implementation calls the real version on the real and imaginary parts separately; derived classes should override it when a specialized complex implementation that avoids the split is more efficient.
Reimplemented from intrp::SpanInterpolator.
|
inlineoverridevirtual |
Produce a std::unique_ptr that points to a copy of `*this``.
Implements intrp::SpanInterpolator.
|
overridevirtual |
Perform the interpolation of function represented by values at source_points to the requested target_point, returning the interpolation result.
Implements intrp::SpanInterpolator.
|
inlineoverridevirtual |
The number of domain points that should be both before and after the requested target point for best interpolation. For instance, for a linear interpolator, this function would return 1 to request that the target is between the two domain points passed to source_points.
Implements intrp::SpanInterpolator.