MATLAB: ??? Subscript indices must either be real positive integers or logicals.

asinMATLAB

clear all
close all
d=[0.7, 2, 23.3];
n=[1.5, 1.33, 1.00];
theta= zeros(length(d));
theta(1)= pi/6;
for ii=1:(length(d)-1);
asin(n(ii)*sin(theta(ii))/n(ii+1))= theta(ii+1);
end
h= zeros(length(d));
for jj=1:length(d);
h(jj)= tan(theta(jj))* d(jj);
end
sum(h)
??? Subscript indices must either be real positive integers or logicals.
Error in ==> Untitled at 11 asin(n(ii)*sin(theta(ii))/n(ii+1))= theta(ii+1)
im not sure how to fix this simple code.. please help thanks BN

Best Answer

I think you have theta and asin reversed in the first for-loop
theta(..) = asin(..)