integrating equations obtained from polyfit
6 ビュー (過去 30 日間)
古いコメントを表示
Hello,
I have an equation to integrate:
exp(thata(x)-1)*y_f(x)
But I used polyfit to get the theta and the y_f, so i have two vectors. but I want the equation version of the fit, so that I can put it on the integral equation. how can i use those two vectors to be able to compute that integral?
If someone knows how to do this, I'd appreciate the help!
thank you
0 件のコメント
採用された回答
Bjorn Gustavsson
2014 年 1 月 15 日
Well, either you can hope that your function exp(theta(x)-1)*f(x) has an explicit integral (which might be a stretch) and build yourself a symbolic version of the function and then try the integration-power of the symbolic toolbox. Or you could go with matlabs quadrature functions:
quadgk(@(x) exp(polyval(theta_p,x)-1).*polyval(f,x),0,x_star)
That should work provided your function isn't too obscure.
HTH
2 件のコメント
Bjorn Gustavsson
2014 年 1 月 15 日
I don't know how to calculate a unique value of an integral at one point only, primitive functions typically have a constant-of-integration, for example f(x) = x^2 -> F(x) = x^3/3 + C. Maybe something is missing in your problem description?
その他の回答 (1 件)
Mischa Kim
2014 年 1 月 14 日
編集済み: Mischa Kim
2014 年 1 月 14 日
trapz(x, exp(theta_x - 1).*y_fx)
where theta_x and y_fx are your two vectors.
2 件のコメント
Mischa Kim
2014 年 1 月 15 日
OK, but that's really a different question from the one you asked. In general, there is no way to "come up" with a reliable symbolic equation based on numeric data points. And you need a symbolic equation to be able to evaluate it at a certain x_star value.
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!