MATLAB Answers

For loop in matrix

11 views (last 30 days)
sookyung Kang
sookyung Kang on 10 Jul 2020
Commented: KSSV on 11 Jul 2020 at 16:45
I'd like to create the matrix by two loops.
I tried to make the form below. Using "For loop"function, how can I make the code?
A=1;%dV/dx when x=1,A(0)=1
V=2;%V when x=1,V(0)=1
a=0; b=1;
n=100;
x=linspace(a,b,n);
h=x(n+1)-x(n);
V(i+1)=V(i)-A(i)-h.^2;% when i is from 0 to n
A(i+1)=A(i)+h;% when i is from 0 to n
plot(transpose(x),V,'r')

  0 Comments

Sign in to comment.

Answers (1)

KSSV
KSSV on 10 Jul 2020
Edited: KSSV on 10 Jul 2020
A=1;%dV/dx when x=1,A(0)=1
V=2;%V when x=1,V(0)=1
a=0; b=1;
n=100;
x=linspace(a,b,n);
h = x(2)-x(1) ;
V = zeros(size(x)) ;
A = zeros(size(x)) ;
for i = 1:n-1
V(i+1)=V(i)-A(i)-h.^2;% when i is from 0 to n
A(i+1)=A(i)+h;% when i is from 0 to n
end
plot(x,V,'r')

  4 Comments

Show 1 older comment
KSSV
KSSV on 11 Jul 2020
You cannot...in MATLAB indices always start from 1. If you want 0 to n, it should be 1 to n+1.
sookyung Kang
sookyung Kang on 11 Jul 2020 at 15:43
Oh it's good information ! thanks:) Then how can I use V(0)=2 and A(0)=1 as I got comments?
KSSV
KSSV on 11 Jul 2020 at 16:45
You cannot use it man.....instead use
V(1) = 2 ;
A(1) = 1 ;

Sign in to comment.