87 Spline(
const std::vector<double> &X,
88 const std::vector<double> &Y,
89 const bool isSubdivPowerLawGrid =
false,
93 double left_value = 0.0,
95 double right_value = 0.0);
107 const std::vector<double> &y,
126 deriv(
int order,
double x)
const;
142 assert(!
d_x.empty());
148 assert(!
d_x.empty());
157 namespace splineInternal
176 return (
int)
d_upper.size() - 1;
181 return (
int)
d_lower.size() - 1;
196 r_solve(
const std::vector<double> &b)
const;
198 l_solve(
const std::vector<double> &b)
const;
200 lu_solve(
const std::vector<double> &b,
bool is_lu_decomposed =
false);
double d_right_value
Definition: Spline.h:72
double d_left_value
Definition: Spline.h:72
double deriv(int order, double x) const
Definition: Spline.cpp:560
double get_x_max() const
Definition: Spline.h:146
spline_type d_type
Definition: Spline.h:70
void set_points(const std::vector< double > &x, const std::vector< double > &y, spline_type type=cspline)
Definition: Spline.cpp:192
double get_x_min() const
Definition: Spline.h:140
double d_r
Definition: Spline.h:75
unsigned int d_numSubDiv
Definition: Spline.h:76
double d_c0
Definition: Spline.h:69
void set_boundary(bd_type left, double left_value, bd_type right, double right_value)
Definition: Spline.cpp:152
std::vector< double > get_y() const
Definition: Spline.h:135
bd_type
Definition: Spline.h:58
@ second_deriv
Definition: Spline.h:60
@ first_deriv
Definition: Spline.h:59
bd_type d_left
Definition: Spline.h:71
spline_type
Definition: Spline.h:50
@ cspline
Definition: Spline.h:52
@ cspline_hermite
Definition: Spline.h:53
@ linear
Definition: Spline.h:51
std::vector< double > d_b
Definition: Spline.h:68
std::vector< double > d_y
Definition: Spline.h:64
double operator()(double x) const
Definition: Spline.cpp:490
bd_type d_right
Definition: Spline.h:71
std::vector< double > coefficients(double x) const
Definition: Spline.cpp:521
std::vector< double > d_d
Definition: Spline.h:68
bool d_made_monotonic
Definition: Spline.h:73
std::string info() const
Definition: Spline.cpp:623
size_t find_closest(double x) const
Definition: Spline.cpp:434
Spline()
Definition: Spline.cpp:111
std::vector< double > get_x() const
Definition: Spline.h:130
bool make_monotonic()
Definition: Spline.cpp:373
void set_coeffs_from_b()
Definition: Spline.cpp:166
std::vector< double > d_c
Definition: Spline.h:68
std::vector< double > d_x
Definition: Spline.h:64
bool d_isSubdivPowerLawGrid
Definition: Spline.h:74
double d_a
Definition: Spline.h:75
std::vector< std::vector< double > > d_lower
Definition: Spline.h:164
int num_lower() const
Definition: Spline.h:179
band_matrix()
Definition: Spline.h:166
std::vector< std::vector< double > > d_upper
Definition: Spline.h:163
~band_matrix()
Definition: Spline.h:168
double & saved_diag(int i)
Definition: Spline.cpp:711
std::vector< double > r_solve(const std::vector< double > &b) const
Definition: Spline.cpp:780
int num_upper() const
Definition: Spline.h:174
std::vector< double > l_solve(const std::vector< double > &b) const
Definition: Spline.cpp:762
int dim() const
Definition: Spline.cpp:664
void resize(int dim, int n_u, int n_l)
Definition: Spline.cpp:647
double & operator()(int i, int j)
Definition: Spline.cpp:680
std::vector< double > lu_solve(const std::vector< double > &b, bool is_lu_decomposed=false)
Definition: Spline.cpp:798
void lu_decompose()
Definition: Spline.cpp:719
dealii includes
Definition: AtomFieldDataSpherical.cpp:31