preCICE v3.1.2
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
precice::acceleration::AitkenAcceleration Class Reference

#include <AitkenAcceleration.hpp>

Inheritance diagram for precice::acceleration::AitkenAcceleration:
[legend]
Collaboration diagram for precice::acceleration::AitkenAcceleration:
[legend]

Public Member Functions

 AitkenAcceleration (double initialRelaxationFactor, std::vector< int > dataIDs, impl::PtrPreconditioner preconditioner)
 
virtual ~AitkenAcceleration ()
 
virtual std::vector< int > getDataIDs () const
 
virtual void initialize (const DataMap &cpldata)
 
virtual void performAcceleration (DataMap &cpldata)
 
virtual void iterationsConverged (const DataMap &cpldata)
 
- Public Member Functions inherited from precice::acceleration::Acceleration
virtual ~Acceleration ()=default
 
virtual void exportState (io::TXTWriter &writer)
 
virtual void importState (io::TXTReader &reader)
 
virtual int getDeletedColumns () const
 Gives the number of QN columns that where filtered out (i.e. deleted) in this time window.
 
virtual int getDroppedColumns () const
 Gives the number of QN columns that went out of scope in this time window.
 
virtual int getLSSystemCols () const
 Gives the number of current QN columns (LS = least squares)
 

Private Attributes

logging::Logger _log {"acceleration::AitkenAcceleration"}
 
double _initialRelaxation
 
std::vector< int > _dataIDs
 
double _aitkenFactor
 
int _iterationCounter = 0
 
Eigen::VectorXd _oldResiduals
 
Eigen::VectorXd _values
 
Eigen::VectorXd _oldValues
 
impl::PtrPreconditioner _preconditioner
 Preconditioner for data vector if multiple data sets are used.
 

Additional Inherited Members

- Public Types inherited from precice::acceleration::Acceleration
using DataMap = std::map<int, cplscheme::PtrCouplingData>
 Map from data ID to data values.
 
- Static Public Attributes inherited from precice::acceleration::Acceleration
static const int NOFILTER = 0
 
static const int QR1FILTER = 1
 
static const int QR1FILTER_ABS = 2
 
static const int QR2FILTER = 3
 
static const int PODFILTER = 4
 
- Protected Member Functions inherited from precice::acceleration::Acceleration
void checkDataIDs (const DataMap &cplData) const
 Checks if all dataIDs are contained in cplData.
 
void concatenateCouplingData (const DataMap &cplData, const std::vector< DataID > &dataIDs, Eigen::VectorXd &targetValues, Eigen::VectorXd &targetOldValues) const
 Concatenates all coupling data involved into a single vector.
 
- Static Protected Member Functions inherited from precice::acceleration::Acceleration
static void applyRelaxation (double omega, DataMap &cplData)
 performs a relaxation given a relaxation factor omega
 

Detailed Description

Definition at line 16 of file AitkenAcceleration.hpp.

Constructor & Destructor Documentation

◆ AitkenAcceleration()

precice::acceleration::AitkenAcceleration::AitkenAcceleration ( double initialRelaxationFactor,
std::vector< int > dataIDs,
impl::PtrPreconditioner preconditioner )

Definition at line 23 of file AitkenAcceleration.cpp.

◆ ~AitkenAcceleration()

virtual precice::acceleration::AitkenAcceleration::~AitkenAcceleration ( )
inlinevirtual

Definition at line 23 of file AitkenAcceleration.hpp.

Member Function Documentation

◆ getDataIDs()

virtual std::vector< int > precice::acceleration::AitkenAcceleration::getDataIDs ( ) const
inlinevirtual

Implements precice::acceleration::Acceleration.

Definition at line 25 of file AitkenAcceleration.hpp.

◆ initialize()

void precice::acceleration::AitkenAcceleration::initialize ( const DataMap & cpldata)
virtual

Implements precice::acceleration::Acceleration.

Definition at line 38 of file AitkenAcceleration.cpp.

Here is the call graph for this function:

◆ iterationsConverged()

void precice::acceleration::AitkenAcceleration::iterationsConverged ( const DataMap & cpldata)
virtual

Implements precice::acceleration::Acceleration.

Definition at line 112 of file AitkenAcceleration.cpp.

Here is the call graph for this function:

◆ performAcceleration()

void precice::acceleration::AitkenAcceleration::performAcceleration ( DataMap & cpldata)
virtual

Implements precice::acceleration::Acceleration.

Definition at line 63 of file AitkenAcceleration.cpp.

Here is the call graph for this function:

Member Data Documentation

◆ _aitkenFactor

double precice::acceleration::AitkenAcceleration::_aitkenFactor
private

Definition at line 46 of file AitkenAcceleration.hpp.

◆ _dataIDs

std::vector<int> precice::acceleration::AitkenAcceleration::_dataIDs
private

Definition at line 44 of file AitkenAcceleration.hpp.

◆ _initialRelaxation

double precice::acceleration::AitkenAcceleration::_initialRelaxation
private

Definition at line 42 of file AitkenAcceleration.hpp.

◆ _iterationCounter

int precice::acceleration::AitkenAcceleration::_iterationCounter = 0
private

Definition at line 48 of file AitkenAcceleration.hpp.

◆ _log

logging::Logger precice::acceleration::AitkenAcceleration::_log {"acceleration::AitkenAcceleration"}
private

Definition at line 40 of file AitkenAcceleration.hpp.

◆ _oldResiduals

Eigen::VectorXd precice::acceleration::AitkenAcceleration::_oldResiduals
private

Definition at line 50 of file AitkenAcceleration.hpp.

◆ _oldValues

Eigen::VectorXd precice::acceleration::AitkenAcceleration::_oldValues
private

Definition at line 52 of file AitkenAcceleration.hpp.

◆ _preconditioner

impl::PtrPreconditioner precice::acceleration::AitkenAcceleration::_preconditioner
private

Preconditioner for data vector if multiple data sets are used.

Definition at line 55 of file AitkenAcceleration.hpp.

◆ _values

Eigen::VectorXd precice::acceleration::AitkenAcceleration::_values
private

Definition at line 51 of file AitkenAcceleration.hpp.


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