Extracting polynomial coefficients from function handle

5 visualizaciones (últimos 30 días)
meysam esmaeeli
meysam esmaeeli el 30 de Dic. de 2015
Comentada: meysam esmaeeli el 30 de Dic. de 2015
I have an unknown large polynomial function handle. for example: f=@(x) 1234*x^2000+654*x^1982+....
I want to extract its coefficients. I know that i Can use a code like this:
%
syms y
coefficients=sym2poly(f(y));
%
but its too slow beacause i need this to repeat in a loop more than 10000 times.
is there any way to extract coefficient directly from function handle???

Respuestas (1)

Andrei Bobrov
Andrei Bobrov el 30 de Dic. de 2015
reshape(str2double(regexp(func2str(f),'\d*(?=\*x\^)|(?<=\*x\^)\d*','match')),2,[])'
  1 comentario
meysam esmaeeli
meysam esmaeeli el 30 de Dic. de 2015
i said that my polynomial function handle is unknown. in fact it is in a form like this:
%
A = @ (x,a1,a2,a3) [x^2+a1,...]
f = @(x) det (A(x,1,5,6))

Iniciar sesión para comentar.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by