What is wrong with this code?

2 views (last 30 days)
aidan
aidan on 28 Oct 2018
Commented: madhan ravi on 28 Oct 2018
I'm getting an unexpected error "Subscript indices must either be real positive integers or logicals." from the line 'trans_P0 = Transmit(T_0);' in the below simple code. T_0 has a value of 1007, if I pass 1007 to Transmit I get no error, but if I pass T_0 I do, which is really unusual as its just looking up an indices. Anyone know what's causing this? (the line 'trans_Art = Transmit(T_A);' give no error fyi).
Z_0 = 1.007;
Z_Total = 1.453;
mu = 0.75;
r = 0.001:0.001:4;
Transmit = exp(-r*mu);
T_0 = round(Z_0,3)*1000;
T_A = round(Z_Total,3)*1000;
trans_P0 = Transmit(T_0);
trans_Art = Transmit(T_A);

Accepted Answer

madhan ravi
madhan ravi on 28 Oct 2018
Edited: madhan ravi on 28 Oct 2018
Z_0 = 1.007;
Z_Total = 1.453;
mu = 0.75;
r = 0.001:0.001:4;
Transmit = exp(-r*mu);
T_0 = round(Z_0,3)*1000;
T_A = round(Z_Total,3)*1000;
trans_P0 = Transmit(vpa(T_0));
trans_Art = Transmit(T_A);
  3 Comments
aidan
aidan on 28 Oct 2018
Great, thanks for your help, much appreciated!!

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!