35 #ifndef _LibAlgo_FastCalibration_HPP
36 #define _LibAlgo_FastCalibration_HPP
49 namespace FastCalibration
53 const std::array<double,4 >
params_a1{ 0.42927654,-0.18406061, 0.37603434, 0.02089117};
54 const std::array<double,4 >
params_b1{-0.49868929, 0.50000024, 0.42710086,-0.08271247};
55 const std::array<double,4 >
params_c1{ 0.25794931,-0.49710941, 0.51427798,-0.10744844};
56 const std::array<double,4 >
params_d1{-0.10526749, 0.16929038, 0.59430784,-0.13338102};
58 const std::array<double,4 >
params_a2{-2.43078868e-02, 1.47594889e-02,-2.03651119e-03, 6.88939912e-05};
59 const std::array<double,4 >
params_b2{ 0.23544764,-0.15279903, 0.02172656,-0.00075681 };
60 const std::array<double,4 >
params_c2{-0.39811319, 0.26217126,-0.03078207, 0.00110456 };
61 const std::array<double,4 >
params_d2{ 0.02003125, 0.01309331, 0.01443429,-0.00053369 };
63 const std::array<double,10>
params_k{-0.56467597, 0.20824953,-0.0076038, 0.67696577, 0.09327836,-0.02297966, 0.00095033,-0.73897768, 0.08437881,-0.00239614};
66 double f_tanh(
const double x,
const std::array<double,4>& array);
67 double f_3rd_order(
const double x,
const std::array<double,4>& array);
68 double f_EM_Em_Rm(
const double x,
const double y,
const std::array<double,4>& array);
69 double f_k_Cn_Rm(
const double x,
const double y,
const std::array<double,10>& array);
71 std::array<std::complex<double>,3>
cubic_solve(
const std::array<double,4>& array);
74 double compute_Rm(
const std::array<double,4>& param,
const double NuM);
84 void compute(
const double EM,
const double NuM,
const double SM,
const double cn,
double& Em,
double& Rm,
double& Sm);
const std::array< double, 4 > params_d1
Definition: FastCalibration.hpp:56
const std::array< double, 10 > params_k
Definition: FastCalibration.hpp:63
double f_k_Cn_Rm(const double x, const double y, const std::array< double, 10 > &array)
Definition: FastCalibration.cpp:79
double f_tanh(const double x, const std::array< double, 4 > &array)
Definition: FastCalibration.cpp:51
const std::array< double, 4 > params_c2
Definition: FastCalibration.hpp:60
const std::array< double, 4 > params_c1
Definition: FastCalibration.hpp:55
void compute(const double EM, const double NuM, const double SM, const double cn, double &Em, double &Rm, double &Sm)
Definition: FastCalibration.cpp:191
const std::array< double, 4 > params_a2
Definition: FastCalibration.hpp:58
double f_EM_Em_Rm(const double x, const double y, const std::array< double, 4 > &array)
Definition: FastCalibration.cpp:70
double f_3rd_order(const double x, const std::array< double, 4 > &array)
Definition: FastCalibration.cpp:61
const std::array< double, 4 > params_b1
Definition: FastCalibration.hpp:54
const std::array< double, 4 > params_d2
Definition: FastCalibration.hpp:61
std::array< double, 4 > compute_param_elastic_Em(const double cn)
Definition: FastCalibration.cpp:169
const std::array< double, 4 > params_a1
Definition: FastCalibration.hpp:53
double compute_Rm(const std::array< double, 4 > ¶m, const double NuM)
Definition: FastCalibration.cpp:178
const std::array< double, 4 > params_b2
Definition: FastCalibration.hpp:59
std::array< std::complex< double >, 3 > cubic_solve(const std::array< double, 4 > &array)
Definition: FastCalibration.cpp:93
std::array< double, 4 > compute_param_elastic_Num(const double cn)
Definition: FastCalibration.cpp:160
Definition: Common.hpp:198
x y t t *t x y t t t x y t t t x *y t *t t x *y t *t t x y t t t x y t t t x(y+z)