|
49 | 49 | from .statefbkimportgram
|
50 | 50 | from .timerespimportTimeResponseData
|
51 | 51 |
|
52 |
| -__all__= ['hsvd','balred','modred','eigensys_realization','markov','minreal','era'] |
| 52 | +__all__= ['hankel_singular_values','balanced_reduction','model_reduction', |
| 53 | +'minimal_realization','eigensys_realization','markov','hsvd', |
| 54 | +'balred','modred','minreal','era'] |
53 | 55 |
|
54 | 56 |
|
55 | 57 | # Hankel Singular Value Decomposition
|
56 | 58 | #
|
57 | 59 | # The following returns the Hankel singular values, which are singular values
|
58 | 60 | # of the matrix formed by multiplying the controllability and observability
|
59 | 61 | # Gramians
|
60 |
| -defhsvd(sys): |
| 62 | +defhankel_singular_values(sys): |
61 | 63 | """Calculate the Hankel singular values.
|
62 | 64 |
|
63 | 65 | Parameters
|
@@ -106,7 +108,7 @@ def hsvd(sys):
|
106 | 108 | returnhsv[::-1]
|
107 | 109 |
|
108 | 110 |
|
109 |
| -defmodred(sys,ELIM,method='matchdc'): |
| 111 | +defmodel_reduction(sys,ELIM,method='matchdc'): |
110 | 112 | """
|
111 | 113 | Model reduction of `sys` by eliminating the states in `ELIM` using a given
|
112 | 114 | method.
|
@@ -216,7 +218,7 @@ def modred(sys, ELIM, method='matchdc'):
|
216 | 218 | returnrsys
|
217 | 219 |
|
218 | 220 |
|
219 |
| -defbalred(sys,orders,method='truncate',alpha=None): |
| 221 | +defbalanced_reduction(sys,orders,method='truncate',alpha=None): |
220 | 222 | """Balanced reduced order model of sys of a given order.
|
221 | 223 | States are eliminated based on Hankel singular value.
|
222 | 224 | If sys has unstable modes, they are removed, the
|
@@ -340,7 +342,7 @@ def balred(sys, orders, method='truncate', alpha=None):
|
340 | 342 | returnrsys
|
341 | 343 |
|
342 | 344 |
|
343 |
| -defminreal(sys,tol=None,verbose=True): |
| 345 | +defminimal_realization(sys,tol=None,verbose=True): |
344 | 346 | '''
|
345 | 347 | Eliminates uncontrollable or unobservable states in state-space
|
346 | 348 | models or cancelling pole-zero pairs in transfer functions. The
|
@@ -386,8 +388,7 @@ def _block_hankel(Y, m, n):
|
386 | 388 | defeigensys_realization(arg,r,m=None,n=None,dt=True,transpose=False):
|
387 | 389 | r"""eigensys_realization(YY, r)
|
388 | 390 |
|
389 |
| - Calculate an ERA model of order `r` based on the impulse-response data |
390 |
| - `YY`. |
| 391 | + Calculate ERA model of order `r` based on impulse-response data `YY`. |
391 | 392 |
|
392 | 393 | This function computes a discrete time system
|
393 | 394 |
|
@@ -686,4 +687,8 @@ def markov(*args, m=None, transpose=False, dt=None, truncate=False):
|
686 | 687 | returnHifnottransposeelsenp.transpose(H)
|
687 | 688 |
|
688 | 689 | # Function aliases
|
| 690 | +hsvd=hankel_singular_values |
| 691 | +balred=balanced_reduction |
| 692 | +modred=model_reduction |
| 693 | +minreal=minimal_realization |
689 | 694 | era=eigensys_realization
|