# How to solve "A and B must be floating-point scalars"?

7 views (last 30 days)
Silvio Sapienza on 1 Jul 2020
Commented: Walter Roberson on 2 Jul 2020
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?

Ameer Hamza on 2 Jul 2020
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 Comment

Walter Roberson on 2 Jul 2020
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.