How to solve "A and B must be floating-point scalars"?
조회 수: 1 (최근 30일)
이전 댓글 표시
Hi! This is my code:
>> syms v w x real
>> j=cos(i*v*x-i*w*sin(x))
j =
cos(v*x*1i - w*sin(x)*1i)
>> J=int(j,0,pi)
J =
int(cos(v*x*1i - w*sin(x)*1i), x, 0, pi)
>> f=w^2*J
f =
w^2*int(cos(v*x*1i - w*sin(x)*1i), x, 0, pi)
>> fh=@f
fh =
function_handle with value:
@f
>> F=integral(fh,w,0,inf)
Error using integral (line 85)
A and B must be floating-point scalars.
I do not understand the meaning of the error. Can anyone help me to solve it, please?
댓글 수: 0
채택된 답변
Ameer Hamza
2020년 7월 2일
In a symbolic toolbox, you need to use int() instead of integral to find a symbolic integration. Try following code
syms v w x real
j=cos(1i*v*x-1i*w*sin(x));
J=int(j,0,pi);
f=w^2*J;
F=int(f,w,0,inf);
However, the equation is too complex for MATLAB to find a closed-form solution (or such a solution might not exist).
댓글 수: 1
Walter Roberson
2020년 7월 2일
There is an expression for the inner integral; it can be expressed in terms of the AngerJ https://www.maplesoft.com/support/help/maple/view.aspx?path=AngerJ function, or rather longer hypergeometric or MeijerG forms.
However, I do not find a closed form expression for the overall integral.
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Calculus에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!