1.6.0
CCC
 
Loading...
Searching...
No Matches
ShiftOpStencil Class Reference

This is an implementation of ShiftOp dedicated to case where: More...

#include <ShiftOpStencil.hpp>

Inheritance diagram for ShiftOpStencil:
AShiftOp ICloneable ALinearOpEigenCG< AShiftOp > ALinearOp

Detailed Description

This is an implementation of ShiftOp dedicated to case where:

  • the target is a regular grid
  • the meshing is elaborated as a TurboMeshing
  • the covariance is stationary

The different members are: _relativeShifts For each vector, gives the vector of shifts, with respect to the target node (in relative indices) _absoluteShifts Vector of shifts to calculate where the weights should apply calculated on the global target grid. This can only be used if the grid has no selection _weights Vector of weights (only significative ones are kept) _isInside Vector telling if each node of the grid is located on its edge and should be bypassed for matrix calculations, or not

Public Member Functions

 ShiftOpStencil (const MeshETurbo *mesh=nullptr, const CovAniso *cova=nullptr, bool verbose=false)
 
 ShiftOpStencil (const ShiftOpStencil &shift)
 
ShiftOpStenciloperator= (const ShiftOpStencil &shift)
 
virtual ~ShiftOpStencil ()
 
void normalizeLambdaBySills (const AMesh *mesh) override
 ICloneable interface.
 
void multiplyByValueAndAddDiagonal (double v1=1., double v2=0.) override
 
void resetModif () override
 
double getMaxEigenValue () const override
 
double getLambda (int iapex) const override
 
int _addToDest (const constvect inv, vect outv) const override
 
- Public Member Functions inherited from AShiftOp
 AShiftOp (CovAniso *cova=nullptr, int napices=0)
 
 AShiftOp (const AShiftOp &shift)
 
AShiftOpoperator= (const AShiftOp &shift)
 
virtual void prodLambda (const VectorDouble &x, VectorDouble &y, const EPowerPT &power) const
 
virtual ~AShiftOp ()
 
const VectorDoublegetLambdas () const
 
int getSize () const override
 
virtual void addProdLambda (const constvect x, vect y, const EPowerPT &power) const
 
void prodLambda (const constvect x, vect y, const EPowerPT &power) const
 
void prodLambda (const VectorDouble &x, vect y, const EPowerPT &power) const
 
void prodLambda (const constvect x, VectorDouble &y, const EPowerPT &power) const
 
- Public Member Functions inherited from ICloneable
 ICloneable ()
 
virtual ~ICloneable ()
 
virtual ICloneableclone () const =0
 
- Public Member Functions inherited from ALinearOpEigenCG< AShiftOp >
virtual ~ALinearOpEigenCG ()
 
Eigen::Index rows () const
 
Eigen::Index cols () const
 
Eigen::Product< AShiftOp, Rhs, Eigen::AliasFreeProduct > operator* (const Eigen::MatrixBase< Rhs > &x) const
 
- Public Member Functions inherited from ALinearOp
 ALinearOp ()
 
 ALinearOp (const ALinearOp &op)=delete
 
virtual ~ALinearOp ()
 
int evalDirect (const VectorDouble &inv, VectorDouble &outv) const
 
VectorDouble evalDirect (const VectorDouble &in) const
 
void setUseFactor (bool usefactor)
 
int evalDirect (constvect inv, vect outv) const
 
int addToDest (const constvect inv, vect outv) const
 
int addToDest (const Eigen::VectorXd &inv, Eigen::VectorXd &outv) const
 

Additional Inherited Members

- Public Types inherited from ALinearOpEigenCG< AShiftOp >
enum  
 
typedef double Scalar
 
typedef double RealScalar
 
typedef int StorageIndex
 
- Static Public Member Functions inherited from AShiftOp
static std::shared_ptr< CovAnisocloneAndCast (const CovAniso *cova)
 
static std::shared_ptr< CovAnisocloneAndCast (const std::shared_ptr< CovAniso > &cova)
 

Constructor & Destructor Documentation

◆ ShiftOpStencil() [1/2]

ShiftOpStencil::ShiftOpStencil ( const MeshETurbo mesh = nullptr,
const CovAniso cova = nullptr,
bool  verbose = false 
)

◆ ShiftOpStencil() [2/2]

ShiftOpStencil::ShiftOpStencil ( const ShiftOpStencil shift)

◆ ~ShiftOpStencil()

ShiftOpStencil::~ShiftOpStencil ( )
virtual

Member Function Documentation

◆ _addToDest()

int ShiftOpStencil::_addToDest ( const constvect  inv,
vect  outv 
) const
overridevirtual

Implements AShiftOp.

◆ getLambda()

double ShiftOpStencil::getLambda ( int  iapex) const
overridevirtual

Reimplemented from AShiftOp.

◆ getMaxEigenValue()

double ShiftOpStencil::getMaxEigenValue ( ) const
overridevirtual

Implements AShiftOp.

◆ multiplyByValueAndAddDiagonal()

void ShiftOpStencil::multiplyByValueAndAddDiagonal ( double  v1 = 1.,
double  v2 = 0. 
)
overridevirtual

Reimplemented from ALinearOp.

◆ normalizeLambdaBySills()

void ShiftOpStencil::normalizeLambdaBySills ( const AMesh mesh)
overridevirtual

ICloneable interface.

Implements AShiftOp.

◆ operator=()

ShiftOpStencil & ShiftOpStencil::operator= ( const ShiftOpStencil shift)

◆ resetModif()

void ShiftOpStencil::resetModif ( )
overridevirtual

Reimplemented from ALinearOp.


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