Центральная разница Матрица - PullRequest
0 голосов
/ 04 мая 2020

Привет, я пытаюсь закодировать следующую матрицу коэффициентов A в a для l oop в Matlab. N - общее количество элементов. И i и j получены из k. Может кто-нибудь помочь мне, пожалуйста, правильно кодируйте матрицу A для любого значения N. A и b показаны enter image description here

for k = 1:N
    A(k,k) = 4; % the diagonal element, corresponding to Tij, is always 4
    %     In the following, we look at the four neighbours of (i,j) that are
    %     involved in the 5-point formula
    i = mod(k-1,nx)+1;
    j = (k-i)/nx+1; %get (i,j) from k
    %boundary condtion
    if i == 1
        b(k,1) = Tl;

    elseif i == nx
        b(k,1) = Tr;

    elseif j == 1
        b(k,1) = Tb;
    elseif j == ny
        b(k,1) = Tt;
    end
    %A matrix construction
    if i>1 && j>1
        if i == j
            A(j-1,i) = -1;
            A(j,i+1) =- 1;
            A(j,i-1) = -1;
            A(j+1,i) = -1;

        end
    end
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...