Subscript indices must either be real positive integers or logicals how can I fix it?

조회 수: 3 (최근 30일)
I am trying to plot this equation but I get error message.
K=9*10^9; e= 1.6*10^-19; p=0.33*10^-10; Alpha=1.09*10^3;
r=10^-10*linspace(33,500,10 );
V(r)=-K*(e^2./r)+ Alpha*exp(-r./p);
whos
plot(r,v);

채택된 답변

Walter Roberson
Walter Roberson 2017년 1월 19일
You cannot fix it without changing what you are trying to do. You need to decide whether you are trying to define a formula for V(r), or if you are trying to assign V as an array of results. As a formula, you could have V(r) on the left hand side, but you would have had to not assign specific numeric values to r. If you are trying to assign V as an array of results, then you cannot use V(r) because you cannot index arrays at floating point numbers.
Your easiest fix would be
V=-K*(e^2./r)+ Alpha*exp(-r./p);
plot(r, V);

추가 답변 (1개)

fs
fs 2017년 1월 19일
Thank you very much for a quick respond and clear explanation.

카테고리

Help CenterFile Exchange에서 Operators and Elementary Operations에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by