各位請看,這是有限差分法的隱式解法
https://i.imgur.com/9leImX6.png
我們可以把它 拆解成下面的矩陣
https://i.imgur.com/WwrrD7A.png
我設定 係數A=1
係數B=0.8
係數C=1
然後最右邊那一列的C1*、C2*、C3*.....到C7* 都是1
所以最後矩陣相乘的結果D,每一個的計算結果都是(1*1)+(1*0.8)+(1*1)=2.8
===================================
這是一個迭代的矩陣,計算出每一組D以後,
就把D當成C1*、C2*~~C7*代入,再計算出下一組D;
然後再把D當成C1*、C2*~~C7*代入,再計算出下一組D;一直迭代下去
重點來了,
如果我把中間的那一行(第四行)的A、B、C 改成 0、1、0
這樣子,會導致D的數據,跟原來的不一樣
然後D接下來又被當作C1*、C2*~~C7*代入,又影響到下一組的D
然後下一組的D又當作C1*、C2*~~C7*代入,又影響到下下一組的D
一直影響下去。
====================================
總共要迭代幾次、或者要帶什麼數字,您們都可以自行決定。
我只是想要瞭解這個程式的寫法而已,數字不是重點,可自行決定數字大小。
感謝
如果看不懂我文中的"迭代"的意思,可以參閱下面兩張圖。
https://imgur.com/a/hlehNcU (求出最左邊的那一列 0,0,1,8,1,0,0)
把那一列代入到下面這張圖的最右邊
https://imgur.com/a/2enLKV3
求出最左邊的那一列(0 , 0.1 , 1.6 , 6.6 , 1.6 , 1 , 0.1 , 0)
以此類推