ich will etwas tun, wieKannst du generisch numpy schneiden?
x[i, :, :] = (rhs[i, :, :]-diag[i] * x[i+1, :, :])/diag[i]
wo x und rhs sind 3D numpy Arrays der Größe (T, L, S). diag ist ein 1D-Array der Größe T.
Dies wird ordnungsgemäß übertragen.
Aber jetzt möchte ich eine ähnliche Funktion schreiben, um auf 2D-Arrays oder eine andere Anzahl von Dimensionen zu arbeiten. Wie kann ich dies generisch schreiben, so dass es auf jedem Array funktioniert, das die erste Dimension der Größe T hat. Ich möchte Code mit nur einer anderen Anzahl von Doppelpunkten nicht duplizieren, da es viele dieser Arten von Zeilen in der Funktion gibt .
Wollen Sie auch über 'T' vektorisieren? Das heißt, geschieht dies in einer 'for i in range (T)' Schleife? – Eric
Meinst du, die Anzahl der Achsen ist nicht garantiert, 3 zu sein? Kann es 1, 2, 3, ..., N sein? – Jeon