System of Equations with For loop and symbols

1 view (last 30 days)
sym T
C = .2;
N = 6;
gamma = .1;
delR = (1-C)/N;
Ri = C+(i-1)*delR;
A = sym(zeros(N+1));
B = sym(zeros(N+1,1));
for i = 2:N
A(i,:) = ((1/delR^2-1/(Ri*2*delR)))*T(i-1)-((2/delR^2)+gamma^2)*T(i)+((1/delR^2)+(1/(Ri*2*delR)))*T(i+1)==0;
[A,B] = equationsToMatrix([A(i,:)],[T(i,:)]);
end
X = linsolve(A,B)
This is currently what I have written, I'm trying to solve a system of equations where using information provided by the user, C,N,gamma, it will use the formula displayed by what A(i,:) is equal to to create a system of equations and will then solve for the values of T_0 to T_N. I was able to solve the system without the for loop but cannot seem to figure out how to do it with the for loop. I'm sure there are many mistakes in this code, I'm seeking any sort of guidance I can get. I'm stuck on an error with the symbols, "Undefined function 'T' for input arguments of type 'double' ". Any sort of help would be apprecitated greatly.
  16 Comments
darova
darova on 24 Apr 2020
YOu mean B vector? Here it is
B1 = zeros(N+1,1);
B1(1) = 1;
And then solve for T as you did previously
T1 = A1\B1;
Ryan Mulligan
Ryan Mulligan on 24 Apr 2020
Yes thank you so much, I was forgetting to add the first row of B as 1, that's where my error was. Thank you again.

Sign in to comment.

Answers (0)

Community Treasure Hunt

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

Start Hunting!