Заполнение 2D-массива для вычисления функции двух пространств

1

У меня есть этот набор уравнений, которые я хочу выполнить:

x = np.linspace(0, 2, 3)
y = np.linspace(x, x+2, 3)

Затем я хочу заполнить 2D-массив вычислением, которое делает:

a = 2*x + y

Так, например, дан массив:

x = [0, 1, 2]

Тогда массив y:

y = [[0, 1, 2],
     [1, 2, 3],
     [2, 3, 4]]

Когда я выполняю операцию a = 2*x + y я должен получить массив:

a = [[0, 1, 2],
     [3, 4, 5],
     [6, 7, 8]]

Как мне это сделать, помня, что я хочу быстро выполнить эту операцию для массива размером до 10000x10000 (или больше)?

  • 1
    np.add.outer(2*x+x,x) с x в качестве массива?
  • 0
    @Divakar А как насчет случая, когда мое пространство y имеет нецелые приращения, например, y = np.linspace(x, x+2, 1000) ? Как это будет работать в этом случае?
Показать ещё 4 комментария
Теги:
arrays
numpy

1 ответ

0

Или сделайте ваш код, добавив два T s:

print((2*x+y.T).T)

Выход:

[[0 1 2]
 [3 4 5]
 [6 7 8]]
  • 0
    Как мне в этом случае сгенерировать двумерный массив y-linspace из x-массива?
  • 0
    @ Афина Желаемый выход?
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню