"??? Undefined function or method 'int' for input arguments of type 'double'."
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hi all,
I have been trying to solve this problem. To set up a e array[200 by 200] to create some mesh beam diagram. ' However,I keep on receiving this error message:
"??? Undefined function or method 'int' for input arguments of type 'double'." on the integration (int) part no matter how many times I tried.
i tried using quadgk function as searched on the net, but the same message appears.
I wish to obtain numeric integration answer, so I didn't use syms x.
Really appreciate your help !
e=zeros(200); %store the calculated value in e array
double x;
for i=1:1:200
for j=1:1:200
x=i-100;
y=j-100;
rho=sqrt(x^2+y^2); %To generate rho values to sub into e equation
e(i,j)=double(int(cos(x)^0.5*sin(2*x)*((exp(1)^(-(9/4)*(sin(x)/sin(1.125))^2))*(besselj(1,3*(sin(x)/sin(1.125)))))*(besselj(1,2*3.142*rho*sin(x))),0,1.125));
end
end
% %
0 commentaires
Réponse acceptée
Walter Roberson
le 12 Jan 2013
You appear to be attempting to do numeric integration. int() is only for symbolic integration. There are a number of numeric integration routines such as quadgk()
Side note:
double x;
would be the same thing as
double('x');
which would convert the letter 'x' to double precision and then throw away the result.
MATLAB does not use declarations of type. Dataypes are determined by assignment.
3 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Logical dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!