Iterative
- class sharpy.rom.balanced.Iterative[source]
Find balanced realisation of DLTI system.
Notes
Lyapunov equations are solved using iterative squared Smith algorithm, in its low or full rank version. These implementations are as per the low_rank_smith and smith_iter functions respectively but, for computational efficiency, the iterations are rewritten here so as to solve for the observability and controllability Gramians contemporary.
Exploiting sparsity:
This algorithm is not ideal to exploit sparsity. However, the following strategies are implemented:
if the A matrix is provided in sparse format, the powers of A will be calculated exploiting sparsity UNTIL the number of non-zero elements is below 15% the size of A. Upon this threshold, the cost of the matrix multiplication rises dramatically, and A is hence converted to a dense numpy array.
The settings that this solver accepts are given by a dictionary, with the following key-value pairs:
Name
Type
Description
Default
lowrank
bool
Use low rank methods
True
smith_tol
float
Smith tolerance
1e-10
tolSVD
float
SVD threshold
1e-06