Solving Integral for an Unknown Interval
Afficher commentaires plus anciens
Is it possible to solve an integral for an interval/ limit of integration without the symbolic toolbox? My problem is of the same form as:(∫f(x)dx)/Z on the interval[-a,a]is equal to (∫g(x)dx)/Y on the interval [-c,c], where Z, a, and Y are known values and c is the unknown variable.
Réponse acceptée
Plus de réponses (2)
Friedrich
le 18 Juil 2011
0 votes
Hi,
no. You can't get a symbolic solution without the symbolic math toolbox. When you know c you can use the quad function:
4 commentaires
John
le 18 Juil 2011
Friedrich
le 18 Juil 2011
Why not calculate it manually and than hardcode it. Or do your functions change during runtime?
John
le 18 Juil 2011
Friedrich
le 18 Juil 2011
Ah okay. Not sure if this will work fine but you could use the fzero function and search the root of (∫sqrt(5^2-x^2)dx)/10 [-25,.25] - (∫sqrt(2.5^2-x^2)dx)/6 [-c,c] , where you solve the integradl with quad
Bjorn Gustavsson
le 18 Juil 2011
One super-tool you should take a long look at is the Chebfun tools: http://www2.maths.ox.ac.uk/chebfun/
and my Q-D stab would be something like this:
I_of_f = quadgk(f(x)/Z,-a,a);
c = @(a,Z,Y,f,g) fminsearch(@(c) (I_of_f-quadgk(@(x) g(x)/Y,-c,c))^2,1)
I think that should work...
Catégories
En savoir plus sur Common Operations dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!