rounding - lsqcurvefit when expecting small coefficients -


i've generated plot of attenutation seen in electrical trace frequency of 14e10 rad/s. ydata ranges approximately 1-10 np/m. i'm trying generate fit of form

y = a*sqrt(x) + b*x + c*x^2.

i expect around 10^-6, b around 10^-11, , c around 10^-23. however, smallest coefficient lsqcurvefit return 10^-7. also, return nonzero coefficient a, while returning 0 b , c. fit looks physics indicates b , c should not 0.

here how i'm calling function

% measurement estimate x_alpha = [1e-6 1e-11 1e-23];  lb = [1e-7, 1e-13, 1e-25]; ub = [1e-3, 1e-6, 1e-15]; x_alpha = lsqcurvefit(@modelfun, x_alpha, omega, alpha_t, lb,ub) 

here model function

function [ yhat ] = modelfun( x, xdata )  yhat = x(1)*xdata.^.5 + x(2)*xdata + x(3)*xdata.^2; end 

is possible lsqcurvefit return such small coefficients? error in rounding or else? ways can change tolerance see fit closer expect?

found stackoverflow page seems address issue!

fit using lsqcurvefit


Comments

Popular posts from this blog

html - How to style widget with post count different than without post count -

How to remove text and logo OR add Overflow on Android ActionBar using AppCompat on API 8? -

javascript - storing input from prompt in array and displaying the array -