Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Français - 日本語 - Русский
Ajuda do Scilab >> Polinômios > factors

factors

fatoração em ℝ de um polinômio ou uma fração racional

Seqüência de Chamamento

[lnum, gain] = factors(pol)
[lnum, gain] = factors(pol, flag)
[lnum, lden, gain] = factors(rat)
[lnum, lden, gain] = factors(rat, flag)
rat = factors(rat, flag)

Parâmetros

pol
polinômio real

rat
razão de polinômios reais (rat=pol1/pol2).

lnum, lden
listas de polinômios (de graus 1 ou 2).

gain
número real

flag
string 'c' ou 'd'.

Descrição

Retorna os fatores do polinômio pol na lista lnum e o "ganho" gain.

Tem-se pol = gain vezes o produto das entradas da lista lnum (se flag não for fornecido). Se flag='c' for dado, então tem-se |pol(i omega)|=|gain*prod(lnum_j(i omega)|. Se flag='d' for dado, então tem-se |pol(exp(i omega))|=|gain*prod(lnum_i(exp(i omega))|. Se o argumento de factors for uma razão rat=pol1/pol2, os fatores do numerador pol1 e do denominador pol2 são retornados nas listas lnum e lden respectivamente.

O "ganho" é retornado como gain, i.e. tem-se: rat= gain vezes (produto das entradas de lnum) / (produto das entradas de lden).

Se flag for 'c' (respectivamente, 'd'), as raízes pol serão refletidas em relação em relação ao eixo imaginário (respectivamente, ao círculo unitário), i.e. os fatores em lnum são polinômios estáveis.

A mesma coisa se factors for invocado com argumentos racionais: as entradas em lnum e lden são polinômios estáveis se flag for dado. R2=factors(R1,'c') ou R2=factors(R1,'d') com R1 uma função racional ou lista syslin SISO, então a saída R2 é uma transferência com com numerador e denominador estáveis e com a mesma magnitude de R1 ao longo do eixo imaginário ('c') ou do círculo unitário ('d').

Exemplos

n = poly([0.2,2,5],'z');
d = poly([0.1,0.3,7],'z');
R = syslin('d',n,d);
R1 = factors(R,'d')
roots(R1('num'))
roots(R1('den'))
w = exp(2*%i*%pi*[0:0.1:1]);
norm(abs(horner(R1,w)) - abs(horner(R,w)))

Ver Também

Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Mon Jan 03 14:35:23 CET 2022