Expand description
This package generates various scalings (and matchings) of real sparse matrices.
Given a symmetric matrix A
, it finds a diagonal matrix D
such that the scaled matrix
 = DAD
has specific numerical properties.
Given an unsymmetric or rectangular matrix A
, it finds
diagonal matrices D
r
and D
c
such that the scaled matrix
 = D_r A D_c
has specific numerical properties.
The specific numerical properties delivered depends on the algorithm used:
Matching-based
algorithms scale A
such that the maximum (absolute) value in each row
and column of Â
is exactly 1.0
, where the entries of
maximum value form a maximum cardinality matching. The
Hungarian algorithm delivers an optimal matching
slowly, whereas the auction algorithm delivers an
approximate matching quickly.
Norm-equilibration
algorithms scale A
such that the infinity norm of each row and
column of Â
is 1.0 ± τ
(for some user specified
tolerance τ
).
Structs§
- Auction
Inform - Auction
Options - Equilib
Inform - Used to return information about the execution of the algorithm.
- Equilib
Options - Used to specify options to the routines equilib_scale_sym and equilib_scale_unsym.
- Hungarian
Inform - Hungarian
Options
Constants§
Functions§
- auction_
scale_ sym - Auction algorithm for symmetric matrix scaling
- auction_
scale_ unsym - Auction-based scaling for unsymmetric matrices.
- equilib_
scale_ sym - Find a matching-based symmetric scaling using the norm-equilibration algorithm.
- equilib_
scale_ unsym - Find a matching-based unsymmetric scaling using the norm-equilibration algorithm.
- hungarian_
scale_ sym - Find a matching-based symmetric scaling using the Hungarian algorithm.
- hungarian_
scale_ unsym - Scales an unsymmetric matrix using the Hungarian algorithm.