Thanks to andrei bobrov for your answer! Yes R1=R2. Your coding seems to work, but the value(answer) is a huge one to know the exact value. Can we command in MATLAB to give the calculated result only upto 4 decimal place.
syms r R1=sqrt(3)*(2*r.^2-1) R2=sqrt(3)*(2*r.^2-1) b = .7; S=2*pi*imag(int(exp(1i*b*R1)*r,r,0,1)*int(R2*exp(-1i*b*R1)*r,r,0,1)) out = vpa(S);

2 commentaires

Jan
Jan le 23 Mar 2012
Please post comments to answers in the corresponding thread.
Alexander
Alexander le 23 Mar 2012
Also, if something works for you, could you please accept the answer? So others know that the matter is resolved.

Connectez-vous pour commenter.

 Réponse acceptée

Alexander
Alexander le 23 Mar 2012

0 votes

Just use double:
syms r
R1=sqrt(3)*(2*r.^2-1)
R2=sqrt(3)*(2*r.^2-1)
b = .7;
S=2*pi*imag(int(exp(1i*b*R1)*r,r,0,1)*int(R2*exp(-1i*b*R1)*r,r,0,1))
out = vpa(S);
double(out)
ans =
-0.7308
Or if you don't need vpa you can do out = double(S) directly.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by