Function instead of polyval

2 visualizzazioni (ultimi 30 giorni)
Yash
Yash il 7 Ago 2012
Is there a Matlab built in function that can be used instead of a polyval function. Or any few lines can work similarly like the polyval function because i dont want to use the polyval function.

Risposta accettata

Sean de Wolski
Sean de Wolski il 7 Ago 2012
fnotpolyval = @(p,x)sum(bsxfun(@(x,p)p*x.^(numel(p):-1:1),p',x))
or
fnotpolyval = @(p,x)sum(x'*p,2)'
  2 Commenti
Sean de Wolski
Sean de Wolski il 7 Ago 2012
Assumes row vectors for p and x
Yash
Yash il 7 Ago 2012
thanks :)

Accedi per commentare.

Più risposte (1)

Azzi Abdelmalek
Azzi Abdelmalek il 7 Ago 2012
Modificato: Azzi Abdelmalek il 7 Ago 2012
fval=@(p,x) sum((x.^[length(p)-1:-1:0].*p));
%example
p=[2 4 5 3]; x=2;
result=fval(p,x) % fval is your new function
  4 Commenti
Yash
Yash il 7 Ago 2012
giving error
??? Index exceeds matrix dimensions.
Error in ==> @(p,x)sum((x.^[length(p)-1:-1:0].*p))
Yash
Yash il 7 Ago 2012
thanks but i got it done :)

Accedi per commentare.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by