1.4.0
CCC
 
TurboOptimizer Class Reference

Turbo Optimizer for a specific 2-D environment,. More...

#include <TurboOptimizer.hpp>

Detailed Description

Turbo Optimizer for a specific 2-D environment,.

with an isotropic Matérn Model

Public Member Functions

 TurboOptimizer (int nx=2, int ny=2, double dx=1., double dy=1., double x0=0., double y0=0., double scale=1., double sill=1., int param=1, int flagOne=1)
 
 TurboOptimizer (const TurboOptimizer &tbo)
 
TurboOptimizeroperator= (const TurboOptimizer &tbo)
 
virtual ~TurboOptimizer ()
 
void setGrid (int nx=2, int ny=2, double dx=1., double dy=1., double x0=0., double y0=0.)
 
void setModelByRange (double range=1., double sill=1., int param=1)
 
void setModelByScale (double scale=1., double sill=1., int param=1)
 
void setEnviron (int flagOne=1)
 
void run (bool verbose=false)
 
VectorDouble getBlin () const
 
VectorDouble getTildeC () const
 
VectorDouble getLambda () const
 
TripletND getS () const
 
TripletND getQ () const
 
TripletND interpolate (const VectorDouble &x, const VectorDouble &y) const
 
VectorInt interpolate_rows (const VectorDouble &x, const VectorDouble &y) const
 
VectorInt interpolate_cols (const VectorDouble &x, const VectorDouble &y) const
 
VectorDouble interpolate_values (const VectorDouble &x, const VectorDouble &y) const
 
VectorInt getQ_rows () const
 
VectorInt getQ_cols () const
 
VectorDouble getQ_values () const
 
void printClass () const
 
void printMeshes () const
 
void printS (int nper_batch=5, int row_begin=0, int row_end=0, int col_begin=0, int col_end=0) const
 
void printQ (int nper_batch=5, int row_begin=0, int row_end=0, int col_begin=0, int col_end=0) const
 
int getHalf () const
 
int getCenter () const
 
int getNxred () const
 
int getPoncif () const
 
const VectorDoublegetTildeCT () const
 
const VectorDoublegetLambdaT () const
 
const VectorDoublegetQT () const
 
const VectorDoublegetST () const
 

Constructor & Destructor Documentation

◆ TurboOptimizer() [1/2]

TurboOptimizer::TurboOptimizer ( int  nx = 2,
int  ny = 2,
double  dx = 1.,
double  dy = 1.,
double  x0 = 0.,
double  y0 = 0.,
double  scale = 1.,
double  sill = 1.,
int  param = 1,
int  flagOne = 1 
)

◆ TurboOptimizer() [2/2]

TurboOptimizer::TurboOptimizer ( const TurboOptimizer tbo)

◆ ~TurboOptimizer()

TurboOptimizer::~TurboOptimizer ( )
virtual

Member Function Documentation

◆ getBlin()

VectorDouble TurboOptimizer::getBlin ( ) const

Allows retrieving the vector Blin

Returns
The Blin vector

◆ getCenter()

int TurboOptimizer::getCenter ( ) const
inline

◆ getHalf()

int TurboOptimizer::getHalf ( ) const
inline

◆ getLambda()

VectorDouble TurboOptimizer::getLambda ( ) const

Allows retrieving the vector Lambda

Returns
The Lambda vector

◆ getLambdaT()

const VectorDouble& TurboOptimizer::getLambdaT ( ) const
inline

◆ getNxred()

int TurboOptimizer::getNxred ( ) const
inline

◆ getPoncif()

int TurboOptimizer::getPoncif ( ) const
inline

◆ getQ()

TripletND TurboOptimizer::getQ ( ) const

Allows retrieving the Q sparse matrix

Returns
The returned matrix stored as Triplets

◆ getQ_cols()

VectorInt TurboOptimizer::getQ_cols ( ) const
inline

◆ getQ_rows()

VectorInt TurboOptimizer::getQ_rows ( ) const
inline

◆ getQ_values()

VectorDouble TurboOptimizer::getQ_values ( ) const
inline

◆ getQT()

const VectorDouble& TurboOptimizer::getQT ( ) const
inline

◆ getS()

TripletND TurboOptimizer::getS ( ) const

Allows retrieving the S sparse matrix

Returns
The returned matrix stored as TripletNDs

◆ getST()

const VectorDouble& TurboOptimizer::getST ( ) const
inline

◆ getTildeC()

VectorDouble TurboOptimizer::getTildeC ( ) const

Allows retrieving the vector TildeC

Returns
The TildeC vector

◆ getTildeCT()

const VectorDouble& TurboOptimizer::getTildeCT ( ) const
inline

◆ interpolate()

TripletND TurboOptimizer::interpolate ( const VectorDouble x,
const VectorDouble y 
) const

Returns the weights for interpolating points on the meshing

Parameters
xVector of X-coordinates for the target points
yVector of Y-coordinates for the target points
Returns
The triplet structure giving the interpolation weights
Note
: The triplets contain:
: - rows: the index of the target point
: - cols: the index of the node of the grid
: - values: the corresponding weight

◆ interpolate_cols()

VectorInt TurboOptimizer::interpolate_cols ( const VectorDouble x,
const VectorDouble y 
) const
inline

◆ interpolate_rows()

VectorInt TurboOptimizer::interpolate_rows ( const VectorDouble x,
const VectorDouble y 
) const
inline

◆ interpolate_values()

VectorDouble TurboOptimizer::interpolate_values ( const VectorDouble x,
const VectorDouble y 
) const
inline

◆ operator=()

TurboOptimizer & TurboOptimizer::operator= ( const TurboOptimizer tbo)

◆ printClass()

void TurboOptimizer::printClass ( ) const

Display the parameters of the Method (Grid and Model parameters)

◆ printMeshes()

void TurboOptimizer::printMeshes ( ) const

Print the elements of the Internal Meshing

◆ printQ()

void TurboOptimizer::printQ ( int  nper_batch = 5,
int  row_begin = 0,
int  row_end = 0,
int  col_begin = 0,
int  col_end = 0 
) const

◆ printS()

void TurboOptimizer::printS ( int  nper_batch = 5,
int  row_begin = 0,
int  row_end = 0,
int  col_begin = 0,
int  col_end = 0 
) const

◆ run()

void TurboOptimizer::run ( bool  verbose = false)

This function is compulsory as it performs the calculations and allows retrieval of the matrices

Parameters
verboseVerbose flag

◆ setEnviron()

void TurboOptimizer::setEnviron ( int  flagOne = 1)

Generic method to set all the remaining terms of the class

Parameters
flagOneStarting value for numbering of rows and columns in TripletND

◆ setGrid()

void TurboOptimizer::setGrid ( int  nx = 2,
int  ny = 2,
double  dx = 1.,
double  dy = 1.,
double  x0 = 0.,
double  y0 = 0. 
)

Definition of the 2-D non rotated Grid

Parameters
nxNumber of nodes along X
nyNumber of nodes along Y
dxMesh of the grid along X
dyMesh of the grid along Y
x0Origin of the grid along X
y0Origin of the grid along Y

◆ setModelByRange()

void TurboOptimizer::setModelByRange ( double  range = 1.,
double  sill = 1.,
int  param = 1 
)

Definition of the Model (single isotropic Matérn structure) by range

Parameters
rangeRange of the structure
sillSill of the structure
paramMatérn parameter (third parameter)

◆ setModelByScale()

void TurboOptimizer::setModelByScale ( double  scale = 1.,
double  sill = 1.,
int  param = 1 
)

Definition of the Model (single isotropic Matérn structure) by scale

Parameters
scaleScale of the structure
sillSill of the structure
paramMatérn parameter (third parameter)

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