In this program i want to assign C(0)=c0 and i need to plot values of C(t) from t=0 to 6. Also i need to plot the values of C(t) for v=1,5,-1,-5. I got an error as Attempted to access c(0)index must be a positive integer or logical. anyone help me?
1 view (last 30 days)
Show older comments
vetri veeran
on 21 Aug 2014
Commented: Image Analyst
on 21 Aug 2014
clear all;
k=10e6;
cmin=10e-9;
cmax=10e-6;
c0=100e-9;
v=1;
for t=1:6
C(t)=c0-sqrt(1+(2*c0^2*k*(1/cmin-1/cmax)*v*t));
end
plot(t,C,'r');
0 Comments
Accepted Answer
Image Analyst
on 21 Aug 2014
Edited: Image Analyst
on 21 Aug 2014
Your code does not generate that error message, but in general, indexes in MATLAB start at 1 not 0 like in C and some other languages.
clc; % Clear the command window.
close all; % Close all figures.
clear; % Erase all existing variables. Or clearvars if you want.
workspace; % Make sure the workspace panel is showing.
fontSize = 22;
k=10e6;
cmin=10e-9;
cmax=10e-6;
c(1)=100e-9;
v=1;
for t=1:6
c(t+1) = c(1)-sqrt(1+(2*c(1)^2*k*(1/cmin-1/cmax)*v*t));
end
t = 0 : 6;
plot(t, c , 'rd-', 'LineWidth', 2);
grid on;
xlabel('t', 'FontSize', fontSize);
ylabel('c', 'FontSize', fontSize);
2 Comments
More Answers (0)
See Also
Categories
Find more on Logical 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!