2020.4.28. Hinzugefügt: Skalarfunktion mit Vektor differenzieren
Guten Abend, ich bin ein alter Ingenieur. Meine Zeit ist noch nicht vorbei. Es scheint jedoch, dass die Ära von Numpy in Bezug auf Matrixoperationen vorbei ist. Sein Name ist Sympy (ich glaube nicht, dass es ein neuer Py ist)!
Vorerst können Sie so etwas tun.
python
#%%
import sympy as sym
from IPython.display import Math, display
#Variablen definieren
(x, y, p, q) = sym.symbols("x y p q")
#Definieren Sie eine Matrix
A = sym.Matrix([
[x,2*x,3*x],
[4*x,5*x,6*x]
])
display((Math(f"A={sym.latex(A)}")))
B = sym.Matrix([
[y,y],
[4*y,5*y],
[7*y,y]
])
display((Math(f"B={sym.latex(B)}")))
#Vektorfunktion definieren
xy = sym.Matrix([
[x,y]
])
display((Math(f"xy={sym.latex(xy)}")))
pq = sym.Matrix([
[3*x*y,2*x+y]
])
display((Math(f"pq={sym.latex(pq)}")))
#Skalarfunktion definieren
f = x**2
#Multiplikation zwischen Matrizen
C = A * B
display((Math(f"C=AB={sym.latex(C)}")))
#Matrix x,Ersetzen Sie y durch eine Zahl
C1 = C.subs({x:10, y: 20})
display((Math(f"C(10,20)={sym.latex(C1)}")))
#Unterscheiden Sie die Matrix teilweise durch x
dCdx = sym.diff(C, x)
display((Math(r"\frac{\partial C}{\partial x}"f"={sym.latex(dCdx)}")))
#Unterscheiden Sie die Matrix teilweise mit y
dCdy = sym.diff(C, y)
display((Math(r"\frac{\partial C}{\partial y}"f"={sym.latex(dCdy)}")))
#Differenzieren Sie die Skalarfunktion mit einem Vektor
dfdxy = sym.diff(f, xy)
display((Math(r"\frac{df}{dxy}"f"={sym.latex(dfdxy)}")))
#Unterscheiden Sie die Vektorfunktion nach Vektor
dpqdxy = sym.diff(pq, xy.T)
display((Math(r"\frac{dpq}{dxy}"f"={sym.latex(dpqdxy)}")))
#Unterscheiden Sie die Skalarfunktion mit einer Matrix(Ich bekomme eine Fehlermeldung)
# dfdA = sym.diff(f, A)
# display((Math(r"\frac{df}{dA}"f"={sym.latex(dfdA)}")))
Versuchen Sie, mit Visual Studio Code in der ersten Zeile von # %% zu kopieren oder zu kopieren. Das # %% in der ersten Zeile ist eine Magie, die VS-Code in Jupyter-Notizbuch ändert. Du kannst es nicht normal machen. Stecke die Run Cell in die Abbildung unten.
Dann wird so etwas herauskommen!
Natürlich können die Elemente der Matrix Zahlen sein, aber sie können auch Buchstaben sein, wie im obigen Beispiel. Die Berechnung erfolgt ebenfalls mit Zeichen. Darüber hinaus können Sie dieses Zeichen (Variable) durch einen numerischen Wert ersetzen, z. B. durch Herrn Tanaka, der eine Formel erstellt. Es gibt auch einen Perversen ... Eine Differenzierung ist auch mit einem Vektor möglich, wenn also das Kettengesetz der Rückausbreitung gelehrt wird Es scheint brauchbar zu sein. Also werde ich zu Mittag essen.
Recommended Posts