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.
|
#include <random>
#include "solving_strategies/convergence_accelerators/convergence_accelerator.h"
#include "utilities/dense_qr_decomposition.h"
#include "utilities/dense_svd_decomposition.h"
#include "utilities/parallel_utilities.h"
#include "mvqn_convergence_accelerator.hpp"
#include "ibqn_mvqn_randomized_svd_convergence_accelerator.h"
Go to the source code of this file.
Classes | |
class | Kratos::MVQNRandomizedSVDConvergenceAccelerator< TSparseSpace, TDenseSpace > |
MVQN-RZ acceleration scheme RandomiZed Multi-Vector Quasi-Newton (MVQN-RZ) method convergence accelerator from Zorrilla and Rossi 2022. The MVQN-RZ overcomes the memory and computational bottlenecks of the original MVQN algorithm by doing a randomized SVD decomposition of the previous step inverse Jacobian approximation. This makes possible to reduce the complexity of the method from quadratic (MVQN) to linear (MVQN-RZ). The settings of the method are "automatic_jacobian_modes": if true automatically selects the number of modes to be used in the decomposition "jacobian_modes": if not automatic, the number of modes to be used in the decomposition "w_0": relaxation parameter to be used in the very first update "cut_off_tol": relative tolerance to avoid (almost) linear dependent information in the observation matrices "interface_block_newton": false for the IQN equations case and true for the IBQN equations once "limit_modes_to_iterations": if not automatic, limits the modes to the number of iterations to avoid numerical noise "min_rand_svd_extra_modes": minimum of extra modes to be used in the randomized SVD decomposition. More... | |
Namespaces | |
Kratos | |
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES. | |