Загрузка данных


def pyass(nx, nt, hx, ht, f, U):
    # Делаем копию входного массива
    Un = U.copy()
    
    # Перезаписываем параметры (как в вашем коде)
    nx, nt = 5, 3
    x1, xn = 0, 1
    t1, tn = 0, 1
    
    # Пересчитываем шаги
    hx = (xn - x1) / (nx - 1)
    ht = (tn - t1) / (nt - 1)
    
    # Создаем сетки
    X = [hx * i for i in range(nx)]
    T = [ht * j for j in range(nt)]
    
    f = -8 * 47
    
    # Начальные условия (исправлены опечатки)
    Fi = [4 * 23 * t * (1 - t) for t in T]
    Psi = [4 * 23 * x * (1 - x) for x in X]
    
    # Инициализация массива U (размерность nx на nt)
    U = [[1 for j in range(nt)] for i in range(nx)]
    
    # Основной цикл
    for i in range(1, nx - 1):
        for j in range(1, nt - 1):
            # Внимание: здесь исправлена скобка и убран лишний символ #
            Un[i][j] = (((U[i-1][j] + U[i+1][j]) / hx**2 + U[i][j-1] + U[i][j+1]) / ht**2 - f) / (2/hx**2 + 2/ht**2)
            
    return Un