>>
<<
Ркв
Ввд
JfC
LJ
Фрз
Слв
Изм
Рзг
!:
Помощь
Словарь
25. Многочлены через Корни
Произведение */y-r называется многочленом, выраженным
через его корни r . Это произведение
можно переписать в виде многочлена от
аргумента y , для которого r будет списком его
корней или нулей. Например:
*/y-r [ y=: 7 [ r=: 2 3 5 [ x=: 7 6 5 4 3 2
40
pp=: +//.@(*/)
c=: pp/monomials=: (- ,. 1:) r
cfr=: [: pp/ - ,. 1: NB. Коэффициенты через корни
pir=: */@(]-[)"1 0 NB. Многочлен через корни
,.&.>(r;monomials;c;(cfr r);(c&p. y);(r pir x))
+-+----+---+---+--+--+
|2|_2 1|_30|_30|40|40|
|3|_3 1| 31| 31| |12|
|5|_5 1|_10|_10| | 0|
| | | 1| 1| |_2|
| | | | | | 0|
| | | | | | 0|
+-+----+---+---+--+--+
Поскольку последний (при самой высокой степени) из
возвращаемых cfr коэффициентов всегда равен 1,
функция pir не позволяет задать произвольный многочлен,
если только не добавить к ней дополнительный множитель.
Для этого мы переопределим cfr и pir , чтобы они
принимали в качестве аргумента список упакованных множителя и корней:
CFR=: (* cfr)&>/
PIR=: CFR@[ p. ]
CFR 3;r
_90 93 _30 3
(3;r) PIR x
120 36 0 _6 0 0
Далее мы продемонстрируем использование многочленов для приближения функций:
]ce=: ^ t. i. 7 NB. Первые семь членов ряда Тейлора для экспоненты
1 1 0.5 0.166667 0.0416667 0.00833333 0.00138889
(^ - ce&p.) _1 _0.5 0 0.5 1 NB. Сравнение с экспонентой
_0.000176114 _1.45834e_6 0 1.65264e_6 0.000226273
pD ce NB. Экспонента равна своей производной
1 1 0.5 0.166667 0.0416667 0.00833333
>>
<<
Ркв
Ввд
JfC
LJ
Фрз
Слв
Изм
Рзг
!:
Помощь
Словарь