Я хочу написать следующую матрицу:
Я определяю n=100 и генерирую следующий код:
n=100
D = toeplitz([0 1 zeros(1, n-2) -1]/ (2*h));
но я получаю неправильную матрицу. Как исправить?
Как Дэвид сказал, что вы можете использовать diag следующим образом:
clc clear all close all %------------------ n = 100; h = 5; % Positive Ones A1 = ones(n-1,1); Arr1 = diag(A1,1); % Negative Ones A2 = -ones(n-1,1); Arr2 = diag(A2,-1); % your array Array = (1/(2*h))*(Arr1+Arr2);