Info
This question is closed. Reopen it to edit or answer.
how to calculate the value from program
1 view (last 30 days)
Show older comments
ef = 1.5^2; ec = -2^2; es = -1.8^2;
k0 = 1; a = 0.63; pc = ef/ec; ps = ef/es; binit = 0.5*sqrt(ef);
kf = sqrt(ef-binit^2);
as = sqrt(binit^2-es);
ac = sqrt(binit^2-ec);
tol = 1e-12; n = 1;
while 1
kf_new = (atan(-kf/ac/pc)+atan(-kf/as/ps))/2/a;
if abs(kf_new-kf) < tol, break; end
kf = kf_new;
be = sqrt(ef - kf^2);
as = sqrt(be^2 - es); %c % edit Rik: assuming this is a typo
ac = sqrt(be^2 - ec);
n=n+1;
end
E = abs(tan(2*k0*a*kf) - kf*(pc*ac+ps*as)/(kf^2 - pc*ac*ps*as)) ;
phi = (atan(pc*ac/kf) - atan(ps*as/kf) + pi)/2;
how to find the value of be from this program
2 Comments
Rik
on 16 Feb 2022
As @AndresVar implies: this is a fairly basic Matlab question. You may consider doing the Onramp tutorial (which is provided for free by Mathworks).
Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!