File Exchange

## Routh-Hurwitz stability table for continuous systems

version 1.2 (1.23 KB) by

It creates Routh-Hurwitz stability table symbolically for a given continuous polynomial coefficients

3.42857
7 Ratings

Updated

It creates Routh-Hurwitz stability table for a given continuous polynomial coefficient. Three examples are also provided.

This function works not only with numerical coefficients, but also with symbolic coefficients. However, program excludes to special cases e.g., first element of one row is zero or all elements are zero in any row. They need further efforts.

Ali Hassan

### Ali Hassan (view profile)

very good, works great with symbolic.

Dave Meissner

Works well for me

J. Palacio

Very simple, but it does not do the correct things in the special cases.

try to run with these entries:
[1 0 3 0 3 0 10] or
[1/5 0 2 0 6 0]

and you will see some problems.

John DeLainey

Quite good, in my relatively humble opinion. Certainly better than doing them by hand.

Michael Denton

Very fast.

Usman Ali

Your code does strange things for these inputs...
please look into it, these are special cases while solving RH table

for complete row zero
[1 1 12 22 39 59 48 38 20]

for zero in 1st column
[1 2 3 6 5 3]
u need 2 enter a small value for epsilon

[1 3 10 24 48 96 128 192 128]

John D'Errico

Is everybody else wondering when the kids will be done with their class learning about Routh-Hurwitz stability tables? This is at least the 4th such submission we've seen appear recently. This is also better than the rest, at least in terms of general Matlab coding style.

This has an error check, but only when called with no arguments. I'd suggest checks for other errors. For example, what if the argument is not a vector? What if there are too many args provided? These things make your code more friendly and easy to use, by providing comprehensible responses to simple errors.

Next, while there are internal comments in this code, and a small block of help, this lacks good help. It gives only a few examples of use, but not any explicit definition of what the code expects as an input. You are expected to infer what the arguments are from the examples. This is poor. There is a reasonable H1 line provided, so lookfor will work properly. The internal comments themselves are not always terribly enlightening. Better comments would describe why certain operations were done, and the algorithm itself.

This code assumes/requires the presence of the symbolic toolbox, but it forgets to tell you of that information. NOT EVERYBODY HAS THAT TOOLBOX. When you upload your submission to the file exchange, there is a listbox that allows you to identify your submission as requiring a given toolbox.

Unfortunately, I can't test the code itself, since I don't have the symbolic toolbox.

My rating is a 3. The poor help almost made me want to push the rating lower, but the good coding style was enough to keep it at a 3. In the event that the author chooses to improve this code, I'll consider raising my rating.