ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | List of all members
ModuleBase::PolyInt Class Reference

#include <math_polyint.h>

Collaboration diagram for ModuleBase::PolyInt:

Public Member Functions

 PolyInt ()
 
 ~PolyInt ()
 

Static Public Member Functions

static void Polynomial_Interpolation (const ModuleBase::realArray &table, const int &dim1, const int &dim2, ModuleBase::realArray &y, const int &dim_y, const int &table_length, const double &table_interval, const double &x)
 Lagrange interpolation.
 
static double Polynomial_Interpolation (const ModuleBase::realArray &table, const int &dim1, const int &dim2, const int &table_length, const double &table_interval, const double &x)
 Lagrange interpolation.
 
static double Polynomial_Interpolation (const ModuleBase::realArray &table, const int &dim1, const int &dim2, const int &dim3, const int &table_length, const double &table_interval, const double &x)
 Lagrange interpolation.
 
static double Polynomial_Interpolation (const double *table, const int &table_length, const double &table_interval, const double &x)
 Lagrange interpolation.
 
static double Polynomial_Interpolation_xy (const double *xpoint, const double *ypoint, const int table_length, const double &x)
 Lagrange interpolation.
 

Constructor & Destructor Documentation

◆ PolyInt()

ModuleBase::PolyInt::PolyInt ( )

◆ ~PolyInt()

ModuleBase::PolyInt::~PolyInt ( )

Member Function Documentation

◆ Polynomial_Interpolation() [1/4]

double ModuleBase::PolyInt::Polynomial_Interpolation ( const double *  table,
const int &  table_length,
const double &  table_interval,
const double &  x 
)
static

Lagrange interpolation.

Parameters
table[in] the data used to do prediction
table_length[in] length of table
table_interval[in] interval of table
x[in] the position to be predicted
Returns
double the predicted value

◆ Polynomial_Interpolation() [2/4]

double ModuleBase::PolyInt::Polynomial_Interpolation ( const ModuleBase::realArray table,
const int &  dim1,
const int &  dim2,
const int &  dim3,
const int &  table_length,
const double &  table_interval,
const double &  x 
)
static

Lagrange interpolation.

Parameters
table[in] four dimension matrix, the data in 4th dimension is used to do prediction
dim1[in] index of 1st dimension of table
dim2[in] index of 2nd dimension of table
dim3[in] index of 3rd dimension of table
table_length[in] length of 4th dimension of table
table_interval[in] interval of 4th dimension of table
x[in] the position in 4th dimension to be predicted
Returns
double the predicted value
Author
pengfei Li
Date
2018-3-23

◆ Polynomial_Interpolation() [3/4]

double ModuleBase::PolyInt::Polynomial_Interpolation ( const ModuleBase::realArray table,
const int &  dim1,
const int &  dim2,
const int &  table_length,
const double &  table_interval,
const double &  x 
)
static

Lagrange interpolation.

Parameters
table[in] three dimension matrix, the data in 3rd dimension is used to do prediction
dim1[in] index of 1st dimension of table
dim2[in] index of 2nd dimension of table
table_length[in] length of 3rd dimension of table
table_interval[in] interval of 3rd dimension of table
x[in] the position in 3rd dimension to be predicted
Returns
double the predicted value

◆ Polynomial_Interpolation() [4/4]

void ModuleBase::PolyInt::Polynomial_Interpolation ( const ModuleBase::realArray table,
const int &  dim1,
const int &  dim2,
ModuleBase::realArray y,
const int &  dim_y,
const int &  table_length,
const double &  table_interval,
const double &  x 
)
static

Lagrange interpolation.

Parameters
table[in] three dimension matrix, the data in 3rd dimension is used to do prediction
dim1[in] index of 1st dimension of table/y
dim2[in] index of 2nd dimension of table/y
y[out] three dimension matrix to store the predicted value
dim_y[in] index of 3rd dimension of y to store predicted value
table_length[in] length of 3rd dimension of table
table_interval[in] interval of 3rd dimension of table
x[in] the position in 3rd dimension to be predicted
Here is the call graph for this function:
Here is the caller graph for this function:

◆ Polynomial_Interpolation_xy()

double ModuleBase::PolyInt::Polynomial_Interpolation_xy ( const double *  xpoint,
const double *  ypoint,
const int  table_length,
const double &  x 
)
static

Lagrange interpolation.

Parameters
xpoint[in] array of postion
ypoint[in] array of data to do prediction
table_length[in] length of xpoint
x[in] position to be predicted
Returns
double predicted value
Here is the caller graph for this function:

The documentation for this class was generated from the following files: