This issue concerns the method _identify_uncertainty_upper_bound as it appears in the module src/dkpy/uncertainty_bound.py in the branch feature/22-add-equivalent-of-matlabs-ucover as of the time of this post.
As it stands, the method does not handle discrete-time (DT) models. However, most of the code present in this version is ready to handle them. The only exception is the portion enforcing the properties of asymptotic stability (AS) and nonminimum phase (NMP) on the final filter. This is easy to handle in the continuous-time (CT) case.
Is it possible to make a DT linear filter AS and NMP without affecting its gain?
A (possibly too obvious) solution would be to
- convert it to CT,
- enforce AS and NMP properties in CT, and
- convert it back to DT.
Would this work? Which discretization method would be appropriate?