У меня есть символическое выражение, подобное этому:
syms h
g=exp(h)+h*exp(h)+h^2*exp(h);
А мне очень нужно извлечь из него многочлен, поэтому я написал:
polyn=coeffs(g,exp(h))
что дает мне символический многочлен от h
, равный: h^2+h+1
.
Теперь я хочу извлечь коэффициенты из этого символьного многочлена:
coeff=sym2poly(polyn);
Но я получаю сообщение об ошибке:
"Ошибка использования symengine (строка 58). Выражение не является многочленом."
Итак, либо в моем компьютере есть ошибка (что есть шанс), либо Matlab не распознает мой «символический полином» как symb. полин, на самом деле.
Я должен упомянуть, что если я наберу:
polyn=h^2+h+1;
coeff=sym2poly(polyn);
У меня вообще ни одной ошибки! Однако, поскольку я программирую, я не могу ввести этот многочлен, поэтому мне нужно получить его так, как я это сделал.
Я могу что-то здесь сделать??
polyn
междуcoeffs
иsym2poly
? Возможно, вы могли бы добавить точку останова прямо передsym2poly
и посмотреть, как выглядитpolyn
. - person erfan   schedule 22.09.2016