MATLAB int function problem while evaluating a symbolic definite integral
17 次查看(过去 30 天)
显示 更早的评论
this is my code
syms x y z b
assume(b, 'positive')
h(x,y,z) = z /(x^2 + y^2 + z^2)^(3/2) ;
int(h, x , [0 b])
i want to get the result of this integral wich is:
(2 b z)/((y^2 + z^2) Sqrt[b^2 + y^2 + z^2])
but instead i get :
ans(y, z) =
piecewise(y^2 + z^2 == 1 & ((z^2)^(1/2) == z | z + (z^2)^(1/2) == 0), (b*z)/(b^2 + 1)^(1/2), y^2 + z^2 ~= 1 | (z^2)^(1/2) ~= z & z + (z^2)^(1/2) ~= 0, int(z/(x^2 + y^2 + z^2)^(3/2), x, 0, b))
what can i do to get the first answer ? is there something wrong in my code ?
1 个评论
Walter Roberson
2020-9-10
Your proposed answer is not correct when there are certain relationships between the complex values x, y, z .
You have the assumption that b > 0, which implies that b is real, but the calculation needs to take into account that x, y, z are complex.
采纳的回答
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!