Curve fitting using a equation that involves a integral that isnt possible to solve analytically?
조회 수: 1 (최근 30일)
이전 댓글 표시
Hello there,
I'm trying from 2 days to curve fit some data that I have using this equation
f = @(x) ((x.^4) .* exp(x)) ./((exp(x)-1).^2);
gama*x + 9*R*((x/a)^3)*quad(f,0,a/x);
Here x is independent variable and a is unknown, gama is known. I tried the following procedure with the most success.
function C=myquad(a,T)
C = zeros(size(T));
gama = 20 * 1e-3;
R = 8.314;
f = @(x) ((x.^4) .* exp(x)) ./((exp(x)-1).^2);
for n = 1:length(T)
C(n) = gama*T(n) + 9*R*((T(n)/a)^3)*quad(f,0,a/T(n));
end
>>fit(T_0,C_0,fittype('myquad(a,x)'));
It returned following error
??? NaN computed by model function, fitting cannot continue. Try using or tightening upper and lower bounds on coefficients.
Error in ==> fit at 443 errstr = handleerr( errid, errmsg, suppresserr );
No idea what to do. Please guide..
댓글 수: 0
채택된 답변
Sean de Wolski
2011년 7월 8일
dbstop if error
then inspect the variables being fed into your function. A good place to start at least.
추가 답변 (0개)
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!