how to calculate by tol and while loop

1 view (last 30 days)
shiv gaur
shiv gaur on 17 Feb 2022
Edited: Walter Roberson on 17 Feb 2022
k0=(2*pi/0.6328)*1e6;
t2=1.5e-6;
n1=1.512;n2=1.521;
x=2; % approximation
k1=k0*sqrt(n1^2-x.^2);k2=k0*sqrt(n2^2-x.^2);
tol = 1e-12;
n = 1;
while (n<=200)
y =-(k2).*t2+atan(k1./1i*k2)
if abs(ynew-y) < tol, break; end
x =xnew;
k1=k0*sqrt(n1^2-x.^2);
k2=k0*sqrt(n2^2-x.^2);
n=n+1;
end
disp(xnew)
how to use while loop in this program and f(abs ) value use

Answers (1)

Voss
Voss on 17 Feb 2022
Your while loop might have a structure like this:
tol = 1e-12;
err = Inf;
n = 1;
while n <= 200 && err > tol
% get new estimate (of whatever you are trying to calculate)
% calculate updated error, err
n = n+1;
end
disp(n)
201
  1 Comment
shiv gaur
shiv gaur on 17 Feb 2022
Edited: Walter Roberson on 17 Feb 2022
k0=(2*pi/0.6328)*1e6;
t2=1.5e-6;
n1=1.512;n2=1.521
k1=k0*sqrt(n1^2-x^2);
k2=k0*sqrt(n2^2-x^2);
y=-(k2)*t2+atan(k1/1i*k2)
sir we have to find the value of x from k1,k2 ,y equation so I am not able
so pl apply this in program

Sign in to comment.

Tags

Products


Release

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by