Заполните пустую матрицу из разности двух векторов

Можно ли построитьnumpy матрица из функции? В этом случае конкретно функция представляет собой абсолютную разницу двух векторов:S[i,j] = abs(A[i] - B[j]), Минимальный рабочий пример, который использует обычный Python:

import numpy as np

A = np.array([1,3,6])
B = np.array([2,4,6])
S = np.zeros((3,3))

for i,x in enumerate(A):
    for j,y in enumerate(B):
        S[i,j] = abs(x-y)

Предоставление:

[[ 1.  3.  5.]
 [ 1.  1.  3.]
 [ 4.  2.  0.]]

Было бы неплохо иметь конструкцию, которая выглядит примерно так:

def build_matrix(shape, input_function, *args)

где я могу передать входную функцию с ее аргументами и сохранить преимущество скорости в numpy.

Ответы на вопрос(2)

Ваш ответ на вопрос