MATLAB Answers

Finite Difference Method to find Steady State

16 ビュー (過去 30 日間)
James 2020 年 4 月 8 日
コメント済み: James 2020 年 4 月 9 日
Hello experts,
I have to solve the following equation to find a converged solution.
At i=0, T=10 and at i=5, T=50. (n=5)
I want to get the converged solution of T at i=2, 3, 4.
I'm fairly comfortable with MATLAB but this is the first time that I'm using MATLAB for these kind of mathematical approach and I'm learning completely alone, relying on online materials.
How should I approach this? I'd appreciate your recommendations, reading materials, suggestions and/or pointers rather than a complete code at this point.
I know the question is vague but I'd welcome any suggestions for starting points :)

  2 件のコメント

Torsten 2020 年 4 月 8 日
What are the values for T_i^n for n =0 ?
James 2020 年 4 月 8 日
Apologies, I've missed including that info properly.
When n=0, T_i^(n+1)=10, 73, 100, 85, 50 respectively at i=1, 2, 3, 4, 5.

Sign in to comment.


Torsten 2020 年 4 月 8 日
編集済み: Torsten 2020 年 4 月 9 日
T = zeros(6,5);
T(1:6,1) = 10;
T(1:6,5) = 50;
T(1,2) = 73;
T(1,3) = 100;
T(1,4) = 85;
for n=1:5
for i =2:4
T(n+1,i) = T(n,i) + 0.3*(T(n,i+1)-2*T(n,i)+T(n,i-1));

  5 件のコメント

表示 2 件の古いコメント
James 2020 年 4 月 9 日
This works!
However, I noticed that I haven't stated my question correctly. To find the converged solution, equation has to be iterated until the steady state approaches. I will start a new thread, properly stating the question.
Edit: I posted the question again, hopefully it makes more sense now.
Torsten 2020 年 4 月 9 日
Either choose a larger value than 5 for n or solve directly the linear system dT/dt = 0, i.e.
T(1) = 10
T(i+1) - 2*T(i) + T(i-1) = 0 (i=2,3,4)
T(5) = 50
James 2020 年 4 月 9 日
Thank you, Torsten. I think that was what I wanted. It was my fault that I didn't post the question correctly :)
I'm still learning and I will try your suggestion.

Sign in to comment.

その他の回答 (0 件)

Translated by