![]() |
deal.II version GIT relicensing-6842-g793a97d2aa 2026-10-02 14:00:01+00:00
|
#include <deal.II/lac/matrix_scaling.h>
AdditionalData allows to choose the scaling algorithm and contains parameters for the scaling algorithms.
Definition at line 82 of file matrix_scaling.h.
Classes | |
| struct | l1linfParameters |
| struct | SKParameters |
Public Types | |
| enum class | ScalingAlgorithm { sinkhorn_knopp , l1_linf_symmetry_preserving } |
Public Member Functions | |
| AdditionalData (const double scaling_tolerance=1e-5, const ScalingAlgorithm alg=ScalingAlgorithm::l1_linf_symmetry_preserving, const SKParameters sk_params=SKParameters(), const l1linfParameters l1linf_params=l1linfParameters()) | |
Public Attributes | |
| double | scaling_tolerance |
| ScalingAlgorithm | algorithm |
| SKParameters | sinkhorn_knopp_parameters |
| l1linfParameters | l1linf_parameters |
|
strong |
Supported scaling algorithms within MatrixScaling.
| Enumerator | |
|---|---|
| sinkhorn_knopp | Sinkhorn-Knopp scaling algorithm. The Sinkhorn-Knopp algorithm (also known as RAS algorithm) alternatingly scales rows and columns by the chosen |
| l1_linf_symmetry_preserving | Symmetry preserving scaling algorithm. The symmetry preserving algorithm simultaneously scales rows and columns preserving symmetry. The symmetry preserving algorithm alternates l_infinity norm scaling with l_1 norm scaling as it has been shown to yield the best results scaling linear systems. The number of scaling steps in each norm is determined by the |
Definition at line 87 of file matrix_scaling.h.
|
explicit |
Construct a new AdditionalData object with the given parameters.
Definition at line 78 of file matrix_scaling.cc.
| double MatrixScaling::AdditionalData::scaling_tolerance |
Tolerance for the scaling algorithms. Convergence is achieved if the difference in norm between a vector of all ones and the row and column norms vectors is below this tolerance. Convergence is not needed to obtain a good scaling and reaching it might require a lot of iterations and thus time. Convergence is not guaranteed for all kind of matrices. For more details check out the articles cited in the class description.
Definition at line 196 of file matrix_scaling.h.
| ScalingAlgorithm MatrixScaling::AdditionalData::algorithm |
Scaling algorithm to use.
Definition at line 201 of file matrix_scaling.h.
| SKParameters MatrixScaling::AdditionalData::sinkhorn_knopp_parameters |
Parameters for the Sinkhorn-Knopp algorithm.
Definition at line 206 of file matrix_scaling.h.
| l1linfParameters MatrixScaling::AdditionalData::l1linf_parameters |
Parameters for the symmetry preserving scaling algorithm.
Definition at line 211 of file matrix_scaling.h.