Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
6.1.1 - Português

Change language to:
English - Français - 日本語 - Русский

Please note that the recommended version of Scilab is 2025.0.0. This page might be outdated.
See the recommended documentation of this function

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

Report an issue
<< diophant Polinômios hermit >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
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