Warning: Explicit integral could not be found in matlab
Mostrar comentarios más antiguos
syms p e q ee eee
e=(((2*(3*p + 11)*(q/4 - 1/4))/(22*q - 9*p + 77) - (6*(p/4 - 1/4)*(q + 5))/(22*q - 9*p + 77))*((2304562637362637*(3*p + 11)*(q/4 - 1/4))/(524288*(22*q - 9*p + 77)) - (6913687912087911*(p/4 - 1/4)*(q + 5))/(524288*(22*q - 9*p + 77))) + ((4000000000*(p/4 - 1/4)*(2*q + 7))/(22*q - 9*p + 77) - (8000000000*p*(q/4 - 1/4))/(22*q - 9*p + 77))*((4*(p/4 - 1/4)*(2*q + 7))/(22*q - 9*p + 77) - (8*p*(q/4 - 1/4))/(22*q - 9*p + 77)))*((11*q)/4 - (9*p)/8 + 77/8);
ee=int(e,q,1,-1) eee=int(ee,p,1,-1)
I got Warning: Explicit integral could not be found in matlab I am using double,vpa but not getting answer
'e' is the only one element of 20X20 matrix
please help me
Respuestas (2)
John D'Errico
el 4 de Abr. de 2015
So you want a symbolic solution. Not every problem has a symbolic solution.
Double and vpa are irrelevant. The result for ee was not computed, so it must give up there.
However, nothing stops you from using a numerical integration.
help integral2
Roger Stafford
el 4 de Abr. de 2015
0 votos
You should try the 'simplify' function on 'e' before trying to integrate it. You will be surprised how much simplification is possible with your particular expression. The result should be the ratio of a single fourth-degree polynomial in p and q divided by a linear polynomial. The 'int' function really ought to be able to obtain the double integral of that. It's something elementary calculus students learn to do using partial fractions.
2 comentarios
John D'Errico
el 4 de Abr. de 2015
Editada: John D'Errico
el 4 de Abr. de 2015
I did try the simplify when I wrote my response. int gives up on that too.
pretty(expand(e))
2 3 2 3
921375000000 p 91125000000 p 115500000000 q 11000000000 q 808901485714285587 p 1292859639560439357 q 177451323076923049
--------------- - -------------- + --------------- + -------------- - -------------------- + --------------------- + ------------------
#1 #1 #1 #1 2 #2 4 #2 4 #2
2 3 2 3
15120235463736261357 p 1680026162637362373 p 10114725415384613793 q 1242159261538461343 q 1267875000000 p 404250000000 q
+ ----------------------- - ---------------------- + ----------------------- + ---------------------- - --------------- + --------------
16 #2 16 #2 16 #2 8 #2 #1 #1
2 2 2 2
471625000000 7404559753846152681 p q 1680026162637362373 p q 724500000000 p q 103500000000 p q 263250000000 p q
+ ------------ - ------------------------ + ------------------------ - ---------------- - ----------------- + -----------------
#1 16 #2 4 #2 #1 #1 #1
12382415050549448601 p q
- ------------------------
8 #2
where
2 2
#1 == 81 p - 396 p q - 1386 p + 484 q + 3388 q + 5929
2 2
#2 == 42467328 p - 207618048 p q - 726663168 p + 253755392 q + 1776287744 q + 3108503552
Roger Stafford
el 4 de Abr. de 2015
Editada: Roger Stafford
el 4 de Abr. de 2015
I haven't used the symbolic toolbox on this but just eyeballing it I see this form in the expression:
e = ( (E1/F+E2/F)*(E3/F+E4/F) + (E5/F+E6/F)*(E7/F+E8/F) ) * F
where the E's are each of the form (a*p+b)*(c*q+d) and F is 22*q-9*p+77. If I've got this correct, one of the F's will cancel and this will simplify to
E9/F
where E9 is of the form
k1*p^2*q^2+k2*p^2*q+k3*p*q^2+k4*p*q+k5*p+k6*q+k7
From there it is just a matter of expanding it in partial fractions to prepare for integration wherein log(22*q-9*p+77) should pop up. I don't see why the symbolic toolbox can't do the same thing a whole lot faster than my poor brain can.
(There is the possibility that my eyeballing is erroneous. At my age these eyes don't work as well as they used to.)
Categorías
Más información sobre Numerical Integration and Differentiation en Centro de ayuda y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!