Użycie numpy do zbudowania tablicy wszystkich kombinacji dwóch tablic

Próbuję uruchomić przestrzeń parametrów funkcji 6 parametrów, aby zbadać jej zachowanie numeryczne, zanim spróbuję zrobić coś skomplikowanego, więc szukam skutecznego sposobu, aby to zrobić.

Moja funkcja przyjmuje wartości zmiennoprzecinkowe podając 6-dimmową tablicę numpy jako dane wejściowe. Na początku starałem się to zrobić:

Najpierw stworzyłem funkcję, która pobiera 2 tablice i generuje tablicę ze wszystkimi kombinacjami wartości z dwóch tablic

from numpy import *
def comb(a,b):
    c = []
    for i in a:
        for j in b:
            c.append(r_[i,j])
    return c

Potem użyłemreduce() aby zastosować to do m kopii tej samej tablicy:

def combs(a,m):
    return reduce(comb,[a]*m)

A potem oceniam swoją funkcję w ten sposób:

values = combs(np.arange(0,1,0.1),6)
for val in values:
    print F(val)

To działa, ale jest zbyt wolny. Wiem, że przestrzeń parametrów jest ogromna, ale to nie powinno być takie powolne. Próbowałem tylko 106 (milion) punktów w tym przykładzie, a utworzenie tablicy zajęło ponad 15 sekundvalues.

Czy znasz jakiś skuteczniejszy sposób na zrobienie tego za pomocą numpy?

Mogę zmodyfikować sposób działania funkcjiF bierze to za argumenty, jeśli jest to konieczne.