Expressing polynomial including a indefinite parameter
2 次查看(过去 30 天)
显示 更早的评论
Hi All,
I know that the expression p=[1 -4 2] corresponds to p(x) = x^2 - 4x + 2.
I want to express p(x) = a*x^2 - 4x + 2-a
I would appreciate it if you told me how to do that.
Bests,
Cagdas
0 个评论
采纳的回答
Matt J
2021-10-21
编辑:Matt J
2021-10-21
One way.
p = @(x,a) polyval([a,-4,2-a],x);
Usage:
x=1; a=2;
p(x,a)
5 个评论
Matt J
2021-10-21
编辑:Matt J
2021-10-21
But what I am aiming to do is to give it a value only for x which returns a polynomial including the constant(indefinite) "a".
I maintain that that is what is achieved by doing as follows (updated for your new example).
Pxa = @(x) @(a) polyval([2*a,-4,2-a],x);
Now if we invoke px() at x=1,
p=Pxa(1); %x=1
then I claim that p(a) is the polynomial function a-2. We can check various inputs a to verify that this is true:
a=5; p(a)
a=2; p(a)
a=0; p(a)
更多回答(1 个)
Matt J
2021-10-21
编辑:Matt J
2021-10-21
Possibly you mean that you want a coefficient vector as the output, rather than a polynomial in functional form.
syms a x
P = 2*a*x^2 - 4*x + 2-a
p=subs(P,x,1)
coefficients = sym2poly(p)
3 个评论
Matt J
2021-10-21
编辑:Matt J
2021-10-21
Yes, what I was trying to implement was exactly that you guessed.
I'm glad we converged, but please Accept-click the answer to indicate that your question was resolved.
Since my question covers an different topic in the bigger picture I will pose it in an another question page.
Yes, by all means.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Polynomials 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!