a=input("a=")
b=input("b=")
c=input("c=")
d=input("d=")
a=1
b=2
c=3
d=2
import numpy as np
A=np.array([[a,b],[c,d]]);A
print (A)
def determinant (A):
d=a*d-b*c
return (d)
def inverse (A):
if determinant (A)==0:
return None
else:
A[0][0],A[1,1]=A[1][1],A[0][0]
A[0][1]=-A[0][1]
A[1][0]=-A[1][0]
return (A/determinant(A))
def trace (A):
t=a+d
return (t)
def polynôme (A):
delta= (trace(A))**2-4*determinant(A)
if delta <0:
return None
elif delta==0:
x=trace(A)/2
return (x)
else:
x1=(trace(A)-(delta)**(1/2))/2
x2=(trace(A)+(delta)**(1/2))/2
return (x1, x2)
def diagonalisation(A):
V1=A-x1*I
V2=A-x2*I
在那之后我不知道如何在没有预定义功能的情况下做什么,你可以给我一个线索吗?
答案 0 :(得分:0)
numpy有很多可以使用的功能
In [10]: np.diag(A)
Out[10]: array([1, 2])
In [11]: np.trace(A)
Out[11]: 3
In [12]: np.linalg.det(A)
Out[12]: -4.0
In [13]: np.linalg.inv(A)
Out[13]:
array([[-0.5 , 0.5 ],
[ 0.75, -0.25]])
更多信息,请参阅this tutorial。