Closed andreasvarga closed 3 years ago
Awesome feedback. I might not get to this until next week, but very much appreciated.
Let me do a "hot take":
1//p`` (maybe not
1/p`) should work (When I first wrote the type I had thought of a different package for it in which case that would have been type piracy. )Thanks again! #339 should address all of these except for 4 (as I'm not sure where that should live). One difference is that //
is needed to construct rational functions, not just /
.
I upgraded the DescriptorSystems to use the new rational function type, by defining according to your suggestion the rational transfer function type as a subtype of the rational function. With this occasion I eliminated all stuff related to concatenation of rational matrices, relying entirely on the existing concatenation techniques. I am convinced my adaptation to the new type is not optimal and some code may even be redundant (duplicating your codes), but in this moment I have no better solution at hand, so I will keep this implementation (at least for a while).
Here are listed some issues I observed:
isapprox
fails for rational functions with integer coefficients:which is different from the correct result
==
and\isapprox
must compare also the sampling times.The type should be
Float64
I guess:Finally, I would like to thank you for the very valuable work implementing the rational function type.