18#include <BSMPT/utility/spline/spline.h>
139 cvspline(
const std::vector<std::vector<double>> &phipath_in);
147 cvspline(
const std::vector<std::vector<double>> &phipath_in,
148 int input_num_inter);
162 const std::vector<double> &new_vev,
163 const bool &compile =
true);
171 std::vector<double>
deriv(
int order,
double x);
178 std::vector<double>
dl(
double l);
185 std::vector<double>
d2l(
double l);
192 std::vector<double>
operator()(
double l)
const;
204 void save_path(
const std::string &file_name,
const bool &header =
true);
Constructs a spline with constant velocity, i.e. . acts as the length alongisde the spline....
Definition const_velocity_spline.h:34
void initialize()
initialize the constant velocity spline using the given path
Definition const_velocity_spline.cpp:64
double Simpson_step(double t0, double t1)
Integrates from to using a single Simposons' 3/8 integration step.
Definition const_velocity_spline.cpp:32
int dim
Dimension of the VEV space.
Definition const_velocity_spline.h:70
float linL
Linear length of the (spline) path.
Definition const_velocity_spline.h:95
float L
True length of the (spline) path.
Definition const_velocity_spline.h:100
std::vector< std::vector< double > > transposed_phi
Transpose of the path given, easier for calculations.
Definition const_velocity_spline.h:123
void print_path() const
print the current knots of the spline
Definition const_velocity_spline.cpp:281
void save_path(const std::string &file_name, const bool &header=true)
save the knots of the splien into a file
Definition const_velocity_spline.cpp:314
std::vector< double > d2l(double l)
second derivative of the constant velocity spline in
Definition const_velocity_spline.cpp:244
cvspline()
Default constructor.
std::vector< std::vector< double > > phipath
// List of VEVs paths
Definition const_velocity_spline.h:128
std::vector< double > dl(double l)
first derivative of the constant velocity spline in
Definition const_velocity_spline.cpp:226
tk::spline x_to_l
Spline to convert from linear length to spline length.
Definition const_velocity_spline.h:85
std::vector< double > lin_lengths
We need a parameter, so I used the linear lengths (not the path spline length) as parameter,...
Definition const_velocity_spline.h:107
tk::spline l_to_x
Spline to convert from spline length to linear length.
Definition const_velocity_spline.h:90
std::vector< double > operator()(double l) const
value of the constant velocity spline at
Definition const_velocity_spline.cpp:269
std::vector< double > list_l
// List of l for spline lengths division
Definition const_velocity_spline.h:45
std::vector< double > vev_position
Position of the VEV list "lin_lengths" using spline length.
Definition const_velocity_spline.h:112
std::vector< double > list_x
List of x for linear lengths division.
Definition const_velocity_spline.h:40
int num_points
Number of points in the path (knots)
Definition const_velocity_spline.h:75
void add_point(const double &p, const std::vector< double > &new_vev, const bool &compile=true)
introduce a new point on the knot list
Definition const_velocity_spline.cpp:154
double lin_abs_deriv(double x)
derivative in
Definition const_velocity_spline.cpp:22
int num_inter
Number of point from x to l (and viceversa)
Definition const_velocity_spline.h:80
std::vector< tk::spline > splines
Vector of each 2D splines (x = linear length (not important, must be increasing), y = vev_i)
Definition const_velocity_spline.h:118
std::vector< double > deriv(int order, double x)
derivative of the constant velocity spline in
Definition const_velocity_spline.cpp:214