KratosMultiphysics
KRATOS Multiphysics (Kratos) is a framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, and high performance. Kratos is written in C++, and counts with an extensive Python interface.
Public Member Functions | Public Attributes | List of all members
convergence_accelerators.anderson.AndersonConvergenceAccelerator Class Reference
Inheritance diagram for convergence_accelerators.anderson.AndersonConvergenceAccelerator:
Collaboration diagram for convergence_accelerators.anderson.AndersonConvergenceAccelerator:

Public Member Functions

def __init__ (self, settings)
 The constructor. More...
 
def InitializeSolutionStep (self)
 
def UpdateSolution (self, r, x)
 UpdateSolution(r, x) More...
 
def FinalizeSolutionStep (self)
 

Public Attributes

 alpha
 
 beta
 
 p
 
 V
 
 W
 
 iteration_counter
 
 F
 For the first iteration, do relaxation only. More...
 
 X
 

Constructor & Destructor Documentation

◆ __init__()

def convergence_accelerators.anderson.AndersonConvergenceAccelerator.__init__ (   self,
  settings 
)

The constructor.

Parameters
iteration_horizonnumber of values to be stored of last iterations.
alphaRelaxation factor for computing the update.
betaweighting factor of constant relaxation
pfactor for switch between constant relaxation and alternating anderson Gauß-Seidel/Jacobian method p = 1 results in the Anderson acceleration and p -> infinity results in constant relaxation

Member Function Documentation

◆ FinalizeSolutionStep()

def convergence_accelerators.anderson.AndersonConvergenceAccelerator.FinalizeSolutionStep (   self)

◆ InitializeSolutionStep()

def convergence_accelerators.anderson.AndersonConvergenceAccelerator.InitializeSolutionStep (   self)

◆ UpdateSolution()

def convergence_accelerators.anderson.AndersonConvergenceAccelerator.UpdateSolution (   self,
  r,
  x 
)

UpdateSolution(r, x)

Parameters
rresidual r_k
xsolution x_k Computes the approximated update in each iteration.

Member Data Documentation

◆ alpha

convergence_accelerators.anderson.AndersonConvergenceAccelerator.alpha

◆ beta

convergence_accelerators.anderson.AndersonConvergenceAccelerator.beta

◆ F

convergence_accelerators.anderson.AndersonConvergenceAccelerator.F

For the first iteration, do relaxation only.

◆ iteration_counter

convergence_accelerators.anderson.AndersonConvergenceAccelerator.iteration_counter

◆ p

convergence_accelerators.anderson.AndersonConvergenceAccelerator.p

◆ V

convergence_accelerators.anderson.AndersonConvergenceAccelerator.V

◆ W

convergence_accelerators.anderson.AndersonConvergenceAccelerator.W

◆ X

convergence_accelerators.anderson.AndersonConvergenceAccelerator.X

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