Filter löschen
Filter löschen

Infinite or Not-a-Number function value encountered.

1 Ansicht (letzte 30 Tage)
MinHyung
MinHyung am 20 Aug. 2013
Originally I tried to calculate
int(int((sin(q*A*sin(phi)/2)*sin(q*B*sin(phi)/2)*4/(q^2*A*B*sin(phi)*cos(phi)))^2*sin(q*C*cos(theta)/2)*2/(C*q))^2*sin(theta),theta,0,pi/2),phi,0.pi/2)
however MATLAB fail to show proper equation. So I change to use 'quad' function instead of 'int'
I just put A=B=C=7 and q=0.1 and tried to calculate...but failed. How can I calculate this equation?
-(183750365601059840*sin((7/20*sin(phi))).^4)./(8477503880968187*sin(phi).^2.*(sin(phi).^2. - 1) --> this equation comes from int((sin(q*A*sin(phi)/2)*sin(q*B*sin(phi)/2)*4/(q^2*A*B*sin(phi)*cos(phi)))^2*(sin(q*C*cos(theta)/2)*2/(C*q))^2*sin(theta),theta,0,pi/2) and put A, B, C, q values.
------------------------------------------------------------------------------------------
quad(@(phi) -(183750365601059840*sin((7/20*sin(phi))).^4)./(8477503880968187*sin(phi).^2.*(sin(phi).^2. - 1)),0.0001,pi/2)
Warning: Infinite or Not-a-Number function value encountered.
> In quad at 109
ans =
NaN

Akzeptierte Antwort

David Sanchez
David Sanchez am 20 Aug. 2013
Besides the parenthesis unbalanced, you are dividing by zero.
for phi = pi/2
(8477503880968187*sin(phi)).^2.*(sin(phi).^2. - 1) = 0
Then:
r=-(183750365601059840*sin((7/20*sin(phi))).^4)/...
(8477503880968187*sin(phi)).^2.*(sin(phi).^2. - 1)
will yield NaN.

Weitere Antworten (0)

Kategorien

Mehr zu Creating and Concatenating Matrices finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by