My equation gives only one value for 1x200 vector variables

17 views (last 30 days)
%Initial Values and Constants n_i = 1; n_t = 1.33; theta_i = linspace(0,pi/2,200); theta_t = asin(n_i/n_t*sin(theta_i));
%Calculate results R_p = ((n_t*cos(theta_i)-cos(theta_t))/(cos(theta_t)+n_t*cos(theta_i)))^2;
My equation R_p give one single value of 0.0029. I want to plot this function for theta_i, but I can't. What should I do?

Accepted Answer

Erik S.
Erik S. on 8 Feb 2015
You forgot the . symbol when doing elementwise operations. Try this instead:
R_p = ((n_t*cos(theta_i)-cos(theta_t))./(cos(theta_t)+n_t*cos(theta_i))).^2;

More Answers (0)


Find more on Function Creation in Help Center and File Exchange


Community Treasure Hunt

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

Start Hunting!