Попытка конвертировать матричный код из MATLAB в Python, это правильно? - PullRequest
0 голосов
/ 03 ноября 2018

У меня есть более длинный код, который я пытаюсь преобразовать из matlab в Python, и я думаю, что по большей части это правильно, но я не получаю тот же вывод, что и код matlab. Я полагаю, что проблема связана с матрицей A, потому что я возился с кодом, чтобы попытаться его идентифицировать, но я также не вижу ничего плохого в этом.

Matlab:

m=250
beta=0
alpha=0.25
A=zeros(m,m);
A(1,1)=1-2.*alpha; A(1,2)=2.*alpha;
A(m,m)=1-2.*alpha; A(m,m-1)=2.*alpha;
for i=2:(m-1)
     A(i,i-1)= alpha+beta ; A(i,i)=1-2.*alpha ; A(i,i+1)=alpha-beta; 
end

Python:

import numpy as np
m=250
Beta=0
Alpha=0.25
A=np.zeros(shape=(m,m))
A[0,0]=1-2*Alpha
A[0,1]=2*Alpha
A[m-1,m-1]=1-2*Alpha
A[m-1,m-2]=2*Alpha
for i in range(1,m-1):
     A[i,i-1]=Alpha+Beta
     A[i,i]=1-2*Alpha
     A[i,i+1]=Alpha-Beta

Может быть, проблема в другом месте кода, и в этом случае я буду продолжать искать, но может ли кто-нибудь проверить, является ли это правильным для меня? Спасибо!

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