Expressing polynomial including a indefinite parameter
2 views (last 30 days)
Show older comments
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 Comments
Accepted Answer
Matt J
on 21 Oct 2021
Edited: Matt J
on 21 Oct 2021
One way.
p = @(x,a) polyval([a,-4,2-a],x);
Usage:
x=1; a=2;
p(x,a)
5 Comments
Matt J
on 21 Oct 2021
Edited: Matt J
on 21 Oct 2021
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)
More Answers (1)
Matt J
on 21 Oct 2021
Edited: Matt J
on 21 Oct 2021
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 Comments
Matt J
on 21 Oct 2021
Edited: Matt J
on 21 Oct 2021
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.
See Also
Categories
Find more on Polynomials in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!