Аналогичное утверждение подпрограммы - PullRequest
0 голосов
/ 06 апреля 2020

У меня есть код в Python. Мой основной код называется функцией matrixD:

def matrixD(n,x):

    C=[]
    for i in range(n):
        C += [1.0]
    C[0]=2.0
    C[n-1]=2.0

    D=[[0] * n for i in range(n)]
    for i in range(n):
        for j in range(n):
            if i==j and i!=0 and i!=(n-1):
                D[i][i] = -x[i]/(2.0*(1.0-x[i]**2))
            else:
                if i!=j:
                    D[i][j] = (C[i]/C[j])*(-1.0)**(i+1+j+1)/(x[i]-x[j])
                    # D[i][j] = 2.0

    D[0][0] = (2.0*float(n-1)**2 + 1.0)/6.0
    D[n-1][n-1] = -(2.0*float(n-1)**2 + 1.0)/6.0

    return D         

Эта функция возвращает значение D (матрица). Но в этом случае D не является глобальной переменной. Как я могу сделать D глобальной переменной?

Каждый раз, когда я хочу использовать D, я хочу вызвать функцию, и это не идеал. Я хочу подобную подпрограмму в Фортране. Вы звоните только один раз, и у вас есть глобальная переменная.

* Я очень новичок в Python

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