Scilab-Branch-6.1-GIT
Please note that the recommended version of Scilab is 2025.0.0. This page might be outdated.
See the recommended documentation of this function
horner
evaluates some polynomials or rationals for given values
Syntax
horner(P, x)
Arguments
- P
array of polynomials or of rationals.
- x
array of numbers, polynomials, or rationals.
Description
evaluates the polynomial or rational
matrix P = P(s)
when the variable s
of the
polynomial is replaced by x
:
horner(P,x)
=P(x)
Example (Bilinear transform): Assume P = P(s)
is
a rational matrix then the rational matrix
P((1+s)/(1-s))
is obtained by horner(P,(1+s)/(1-s))
.
To evaluate a rational matrix at given frequencies use
preferably the freq
primitive.
Examples
Evaluation of a polynomial:
P = poly(1:3, 'x', 'coeff') s = %s; horner(P, [1 2 ; 3 4]) // for real values horner(P, [1 2 ; 3 4]+%i) // for complex values horner(P, [1, s ; s^2, s^3]) // for polynomial values horner(P, [1/s, 1/s^2]) // for rational values
--> P = poly(1:3, 'x', 'coeff') P = 1 +2x +3x² --> s = %s; --> horner(P, [1 2 ; 3 4]) // for real values ans = 6. 17. 34. 57. --> horner(P, [1 2 ; 3 4]+%i) // for complex values ans = 3. + 8.i 14. + 14.i 31. + 20.i 54. + 26.i --> horner(P, [1, s ; s^2, s^3]) // for polynomial values ans = 6 1 +2s +3s² 1 +2s² +3s⁴ 1 +2s³ +3s⁶ --> horner(P, [1/s, 1/s^2]) // for rational values ans = 3 +2s +s² 3 +2s² +s⁴ --------- ---------- s² s⁴
Evaluation of some rationals:
[s,z] = (%s, %z); M = [1/s, (s-1)/s] horner(M, 1) horner(M, %i) horner(M, 2+s) horner(M, (2+z)/z) horner(M, [1, 1/z ; 2, (2+z)/z])
--> M = [1/s, (s-1)/s] M = 1 -1 +s - ----- s s --> horner(M, 1) ans = 1. 0. --> horner(M, %i) ans = 0. - i 1. + i --> horner(M, 2+s) ans = 1 1 +s ---- ---- 2 +s 2 +s --> horner(M, (2+z)/z) ans = z 2 ---- ---- 2 +z 2 +z --> horner(M, [1, 1/z ; 2, (2+z)/z]) ans = 1 z 0 1 -z - - - ---- 1 1 1 1 1 z 1 2 - ---- - ---- 2 2 +z 2 2 +z
Report an issue | ||
<< hermit | Polynomials | hrmt >> |