高级编程技术作业:numpy
9-1:
from scipy.linalg import toeplitz
import numpy as np
n=200
m=500
a=[]
for i in range(0,200):
a.append(np.random.randn(m))
a=np.array(a)
tempc=np.array(np.arange(m))
tempc=tempc+1
tempr=tempc[::-1].copy()
tempr[0]=tempc[0]
b=toeplitz(tempc,tempr)
aaT=np.dot(a,a.T)
print("A+A:{}".format(a+a))
print("A*AT:{}".format(aaT))
print("AT*A:{}".format(np.dot(a.T,a)))
print("AB:{}".format(np.dot(a,b)))
def f(h):
I=np.identity(m)
middle_result=b-h*I
result=np.dot(a,middle_result)
return result
print("A(B-hI):{}".format(f(1)))
A+A:[[ 0.12015074 -2.17239152 1.68280685 ..., 1.95190819 1.55648125
0.82947276]
[-3.08472847 1.28543219 -5.36366145 ..., 1.28522998 1.12766727
2.84771714]
[ 1.4260356 0.13409556 2.02240389 ..., 3.34307492 -0.87936923
0.34896375]
...,
[ 1.57536357 -0.41172511 1.80751425 ..., 0.05224924 0.48591749
-0.7948719 ]
[ 0.58138821 0.32076284 1.36215523 ..., -2.38318338 3.92203896
-4.24587598]
[-0.96919767 -2.69219288 0.97390655 ..., -1.27553851 0.23401129
0.03772576]]
A*AT:[[ 509.68526269 15.36142757 -15.42900615 ..., -15.4049474 -19.92890346
-10.40270801]
[ 15.36142757 532.61728676 17.43766784 ..., 15.25493886
-10.64694532 4.80526476]
[ -15.42900615 17.43766784 497.0522759 ..., -3.8078216 -10.12014835
0.79007332]
...,
[ -15.4049474 15.25493886 -3.8078216 ..., 500.27227123
30.15560551 -23.86353863]
[ -19.92890346 -10.64694532 -10.12014835 ..., 30.15560551
502.28832013 -15.57048061]
[ -10.40270801 4.80526476 0.79007332 ..., -23.86353863
-15.57048061 523.3898338 ]]
AT*A:[[ 233.60379811 3.57918385 21.6033735 ..., 0.37559337
9.98228985 1.59369899]
[ 3.57918385 232.94868505 3.5093339 ..., 1.50603446 2.846088
-9.54908034]
[ 21.6033735 3.5093339 191.12576407 ..., -0.81504122
10.64750087 -6.09910474]
...,
[ 0.37559337 1.50603446 -0.81504122 ..., 192.72489639 -10.4016765
-11.81193785]
[ 9.98228985 2.846088 10.64750087 ..., -10.4016765 224.96811397
-25.14876335]
[ 1.59369899 -9.54908034 -6.09910474 ..., -11.81193785
-25.14876335 193.60623918]]
AB:[[ 2315.79208166 2350.65818368 1813.53499204 ..., 1223.71847665
1715.60806256 2108.83862788]
[ 4170.01082014 3414.14582566 3748.63591493 ..., 2829.93801139
3164.37764934 3459.50539325]
[-2005.79407508 -1644.96671608 -1606.47839682 ..., -2717.61805433
-1878.48938458 -2092.8605305 ]
...,
[ 4794.96633385 5177.24958855 5063.75421608 ..., 4880.55418843
4882.82041623 4993.28687279]
[-2968.33170042 -2813.47513681 -2723.64460161 ..., -2312.53052529
-2897.3345712 -1908.98564462]
[-5250.4088754 -5473.87133993 -6127.22110847 ..., -5036.66511911
-5336.55962369 -5259.82145199]]
A(B-hI):[[ 2315.73200629 2351.74437944 1812.69358862 ..., 1222.74252255
1714.82982194 2108.4238915 ]
[ 4171.55318438 3413.50310957 3751.31774565 ..., 2829.2953964
3163.81381571 3458.08153467]
[-2006.50709288 -1645.03376386 -1607.48959877 ..., -2719.28959179
-1878.04969996 -2093.03501238]
...,
[ 4794.17865206 5177.45545111 5062.85045895 ..., 4880.52806381
4882.57745749 4993.68430874]
[-2968.62239453 -2813.63551823 -2724.32567922 ..., -2311.33893361
-2899.29559068 -1906.86270663]
[-5249.92427656 -5472.52524349 -6127.70806174 ..., -5036.02734986
-5336.67662934 -5259.84031487]]
9-2:
import numpy as np
from scipy.linalg import toeplitz
m=500
tempc=np.array(np.arange(m))
tempc=tempc+1
tempr=tempc[::-1].copy()
tempr[0]=tempc[0]
b=toeplitz(tempc,tempr)
B=np.random.rand(m)
solution=np.linalg.lstsq(b,B)[0]
print("Bx=b solution:{}".format(solution))
Bx=b solution:[ -1.27741366e-04 -1.29285154e-03 8.44475726e-04 1.10953414e-04
3.09166777e-05 -9.73453255e-04 1.63550627e-03 -3.61778157e-04
1.72497077e-04 -3.87562529e-04 -2.52077829e-04 1.06328097e-03
-5.46535586e-05 -2.22934478e-04 -6.61901680e-04 7.06868302e-04
-1.46600100e-03 8.31671582e-05 6.26586199e-04 9.91738551e-04
4.87084815e-05 -1.00348981e-03 2.22639192e-05 -8.10010592e-04
-7.52311972e-05 4.22645818e-04 1.02921461e-03 -8.92650502e-04
-8.46660528e-05 2.56447508e-04 7.41000347e-04 -9.36001321e-04
9.95452457e-04 4.23484912e-04 -2.42981058e-04 -1.02655643e-04
1.30431745e-04 -9.14289407e-04 1.60889376e-05 -4.32095056e-04
1.14681737e-03 2.57317374e-04 -7.85755674e-04 -5.32618734e-04
-3.94717304e-04 1.89443312e-03 -7.72194208e-04 -1.04749066e-03
1.57138219e-03 2.78474662e-04 -9.28957967e-04 -4.83731895e-04
1.38545338e-04 5.14314900e-05 1.06121406e-03 -3.26937203e-04
-1.49646578e-04 -9.40013556e-04 -3.58249974e-04 2.33161676e-04
1.56581687e-04 1.06624807e-03 -2.56316571e-04 -1.10408522e-03
2.99000899e-04 6.28142627e-04 -6.87725746e-04 1.37557027e-03
-1.24189841e-03 -2.03489732e-04 4.65904768e-04 -1.13357912e-04
-9.07411063e-05 5.58068762e-04 4.93478545e-04 2.98684507e-04
-9.47608140e-04 7.59766201e-04 -1.44499788e-03 6.19155937e-04
1.15323788e-03 -3.81238195e-04 3.18022765e-04 -1.28798347e-03
5.41567380e-04 6.14492752e-04 -1.52762384e-03 1.68390001e-03
-2.04907386e-04 -1.28738727e-03 4.92647044e-04 -4.92774123e-05
-9.41433662e-05 9.21538207e-04 -3.55276395e-04 -4.12245608e-04
-7.82676100e-04 6.68193771e-04 -3.02698385e-04 -2.11343501e-04
1.17212974e-03 5.86553848e-04 -1.64784478e-03 1.24936872e-03
-1.07813970e-03 4.87797069e-04 9.77703325e-05 4.91552484e-04
-4.97839975e-04 -4.43095369e-04 1.61299932e-04 1.24666325e-04
-4.19468275e-04 3.19127365e-04 -1.97449623e-04 5.23145299e-05
9.90281029e-05 1.48378292e-04 8.09103905e-04 -5.78305292e-04
6.09363634e-04 -1.55485417e-05 7.73577166e-05 -8.25801303e-04
5.82342012e-04 4.21620699e-04 -2.45496161e-04 -6.18896955e-04
2.75205725e-04 -6.87413630e-04 1.33133096e-03 -6.47963833e-04
-2.36081085e-05 -1.21250259e-03 1.33968487e-03 -1.05596093e-04
-1.25900581e-05 6.96679846e-05 -2.52044384e-04 8.49860551e-04
-1.00826955e-03 4.01618475e-04 -2.60349831e-05 -9.55439199e-04
1.39727078e-03 -3.95874177e-05 -1.08055982e-04 -1.48719318e-03
1.61851404e-03 -6.77344646e-04 5.70367031e-04 2.81944793e-04
-1.17412224e-03 -4.93519721e-04 7.34873768e-04 -3.88893744e-04
2.09198754e-04 2.23726773e-04 -8.23452542e-04 1.21074576e-03
-6.70606987e-04 1.22921670e-03 -1.81442261e-03 9.75494755e-05
9.17334118e-04 -5.26286675e-04 -3.61623343e-04 9.38770325e-04
-1.01241865e-03 6.71240263e-04 2.08102149e-04 5.70766958e-04
-1.27100701e-04 -1.01555804e-03 -2.26478307e-04 1.90176962e-04
1.42713492e-03 -5.83703664e-04 -8.17763671e-04 1.19026114e-03
-4.25994397e-04 -3.46579829e-04 4.53734409e-04 1.02721617e-04
4.12155900e-04 -5.69666163e-04 -7.94168421e-04 1.28435187e-03
-1.54675644e-03 9.36584222e-05 -1.15372769e-07 4.84503674e-04
-5.51222520e-04 3.31803616e-05 9.30680485e-04 -6.61798188e-04
-1.91626465e-05 -1.41455859e-04 1.76907918e-03 1.37795574e-05
-1.23640978e-03 1.79446494e-04 8.60365796e-04 -8.64036159e-05
-9.99932958e-04 9.01997543e-04 -1.41668128e-03 1.59834697e-03
-1.37520942e-03 1.10458434e-03 -4.00822223e-04 5.32289712e-04
-1.12468061e-05 -3.76945779e-04 -1.06632221e-03 1.58862289e-03
1.83360057e-05 -9.69678806e-04 6.60937438e-04 -8.95450958e-04
1.44260810e-03 -8.34914142e-04 -1.94379108e-04 -2.15211241e-04
-2.76253675e-05 -9.08671392e-05 1.34414268e-03 -1.00749748e-03
4.82426886e-04 3.82958932e-04 -9.80560994e-04 7.28614281e-04
-2.17377379e-04 -1.10127717e-04 -7.19565551e-04 -3.82808565e-05
7.06697649e-04 -8.55768189e-04 5.86623506e-04 1.13451522e-03
-1.40568549e-03 5.46368656e-04 -4.76145065e-04 -3.27867663e-04
7.83488498e-04 3.14625627e-05 4.96011629e-04 -3.20228182e-04
8.40606015e-04 -8.15234991e-04 -6.38791412e-04 8.77789248e-05
-3.02712389e-04 4.68526313e-04 2.96479344e-04 -3.14741486e-04
2.07061926e-04 9.61626996e-04 -1.79532758e-03 9.91370539e-05
1.24061470e-03 -4.02930889e-04 4.80454279e-04 -8.97631469e-04
6.64471254e-04 -5.51395702e-04 -4.84251458e-04 -1.53180058e-06
6.13520080e-04 6.92333619e-04 -8.83823085e-04 6.75860157e-04
-1.09625814e-03 5.14856117e-04 -2.15946168e-04 -3.54419942e-04
1.59607501e-04 9.29665526e-04 7.75601767e-04 -8.65762070e-04
-7.47447300e-04 7.88402532e-04 8.53791528e-04 -1.78408112e-03
9.53104629e-04 -5.36252366e-04 -7.36357281e-07 9.23468239e-04
-7.10978830e-04 4.93912486e-04 2.67848490e-04 -1.55030533e-03
5.01292111e-04 1.23497775e-03 -8.51106317e-04 -1.48353912e-04
-2.02346163e-04 -2.40904024e-04 -5.04512771e-05 1.28549674e-04
1.11194255e-03 -1.57330925e-05 -2.97269046e-04 -8.88558777e-04
1.93310159e-04 -2.01287096e-04 4.48148867e-04 2.45565779e-05
-3.43346682e-04 6.13872001e-04 -5.14400121e-04 5.82123670e-04
-6.52937246e-05 3.99422486e-04 -1.96708835e-04 -6.67096003e-04
-1.54655180e-04 8.25037900e-04 6.91647399e-04 -1.37336127e-03
1.14779418e-03 -6.06526562e-04 -2.33263664e-04 -1.53181339e-04
-5.60284410e-04 7.61110308e-04 1.00272896e-03 -4.95159101e-04
-4.21111584e-04 -6.25741024e-04 1.71891619e-03 -1.33796041e-03
1.32710066e-04 1.73624265e-04 6.68666160e-04 -1.41133328e-03
1.82751951e-03 -1.13244708e-03 -5.88687610e-04 1.65327334e-03
-4.38502932e-04 -1.08295052e-03 6.34743975e-04 -1.02915096e-04
-5.91824279e-04 -9.41584841e-05 7.11280255e-04 -6.41128806e-04
1.24085642e-03 -1.42283661e-03 1.80793978e-03 -1.74748927e-03
1.49030118e-03 -1.29306090e-03 9.77798070e-04 -5.28566727e-04
6.44763849e-04 3.04692934e-04 -1.59921008e-03 8.24321699e-04
8.28950681e-04 -4.10028597e-04 3.66710666e-04 -9.32239843e-04
9.63526227e-04 -2.12286785e-04 5.01443360e-04 -3.95079352e-04
3.54144923e-04 -2.85023915e-04 -9.95847054e-04 -6.00572768e-04
7.27338818e-04 6.12124715e-04 -1.30590118e-03 -3.15266870e-05
8.57448086e-04 -5.11448790e-04 5.96964583e-05 1.58613883e-03
-1.61588592e-03 2.22561984e-04 -3.56103711e-04 5.03113051e-05
1.58409594e-03 -4.91104641e-04 -8.90494727e-04 1.73619074e-04
-4.42909519e-04 1.31841637e-04 6.45154929e-04 -7.09883570e-04
8.03736368e-04 8.33951203e-05 -7.33699797e-04 -1.33810277e-05
4.04664699e-05 3.91976188e-04 -5.43127294e-04 6.30933220e-04
-4.21645448e-04 1.29593537e-03 -6.68621426e-04 -4.51970966e-04
1.33961472e-03 -1.93024212e-03 6.24042355e-04 -2.78366439e-04
1.31074852e-04 1.19738602e-03 -2.58439680e-04 4.34226610e-04
-1.34587035e-03 1.18987418e-03 8.74817523e-05 -1.28651835e-03
9.16400343e-04 5.77884207e-04 -1.19903038e-03 -2.58506993e-04
-2.59540847e-04 1.52293133e-03 -1.23396534e-03 -3.31552608e-04
7.18720296e-04 -3.04288842e-04 1.44179766e-03 -6.50594913e-04
-8.96487216e-04 1.28297895e-03 -1.29671726e-04 -3.65349056e-04
-2.56657393e-04 3.07069657e-04 -5.94618094e-04 1.53558184e-04
-5.07372530e-04 7.44529017e-04 3.10130539e-04 -1.19692599e-03
1.25603130e-05 1.19033142e-03 6.03248906e-04 -1.52685172e-03
1.42897036e-03 -1.53366395e-03 1.43922111e-03 -7.77769271e-04
5.31733954e-04 -1.64286352e-04 -4.98116045e-04 8.38346965e-04
-2.91548212e-04 -7.14972339e-04 -1.00717837e-04 -5.22962305e-06
8.11961810e-04 -1.61543111e-04 -1.04758973e-03 1.39468555e-03
-1.78156864e-04 -4.33526543e-04 5.61570779e-04 -5.86793839e-04
8.52440803e-04 -1.04423155e-03 2.40517002e-04 -7.55115435e-04
2.13670017e-04 3.23437730e-04 -5.71245047e-05 1.37958254e-03
-1.85276839e-03 9.72395044e-04 -1.00918553e-03 1.57522717e-03
-7.32664045e-04 1.43163911e-05 9.33182791e-05 -1.15448435e-04
6.49862851e-05 -4.14772790e-04 3.90624131e-04 -2.53343433e-04
4.94844660e-04 -7.96407015e-04 1.33510777e-03 -1.61581723e-03
1.38128533e-03 -7.28241844e-04 9.32374550e-05 1.14977103e-03
-4.65535935e-04 -7.41093662e-04 5.15444067e-04 -9.53301282e-04
9.21970001e-04 7.67769324e-04 -7.14181923e-04 3.22659455e-04]
9-3:
import numpy as np
from scipy.linalg import toeplitz
A=np.random.random_integers(100,size=(200,500))
B=toeplitz(np.arange(1,501),np.arange(1,501))
print("||A||F:")
print(np.linalg.norm(A,ord='fro'))
print("||B||infinite:")
print(np.linalg.norm(B,ord=np.inf))
print("the smallest singular values of B:")
print(np.linalg.svd(B)[1])
print("the largest singular values of B:")
print(np.linalg.svd(B)[-1])
||A||F:
18358.9712947
||B||infinite:
125250.0
the smallest singular values of B:
[ 8.73345205e+04 5.06607585e+04 1.59461688e+04 5.62912132e+03
3.33547670e+03 2.02659035e+03 1.43974746e+03 1.03405631e+03
8.01860245e+02 6.25606099e+02 5.10897416e+02 4.18849284e+02
3.53959934e+02 2.99933538e+02 2.59707894e+02 2.25324927e+02
1.98685391e+02 1.75462927e+02 1.56916879e+02 1.40500835e+02
1.27074128e+02 1.15043437e+02 1.05012104e+02 9.59335551e+01
8.82425029e+01 8.12238194e+01 7.51980117e+01 6.96601740e+01
6.48514707e+01 6.04054595e+01 5.65069030e+01 5.28835201e+01
4.96791454e+01 4.66873119e+01 4.40216017e+01 4.15226556e+01
3.92813199e+01 3.71726635e+01 3.52701886e+01 3.34745922e+01
3.18459652e+01 3.03043965e+01 2.88994789e+01 2.75661906e+01
2.63458139e+01 2.51849112e+01 2.41181182e+01 2.31011179e+01
2.21631804e+01 2.12672479e+01 2.04382212e+01 1.96448776e+01
1.89085316e+01 1.82026934e+01 1.75457122e+01 1.69149697e+01
1.63263457e+01 1.57604132e+01 1.52309830e+01 1.47212774e+01
1.42433633e+01 1.37826768e+01 1.33498064e+01 1.29320501e+01
1.25387366e+01 1.21587385e+01 1.18003059e+01 1.14536500e+01
1.11260931e+01 1.08089908e+01 1.05088634e+01 1.02180490e+01
9.94237267e+00 9.67501965e+00 9.42120939e+00 9.17486109e+00
8.94066479e+00 8.71317789e+00 8.49662610e+00 8.28612385e+00
8.08548825e+00 7.89032168e+00 7.70408052e+00 7.52279602e+00
7.34960518e+00 7.18091739e+00 7.01958606e+00 6.86235503e+00
6.71182521e+00 6.56503710e+00 6.42436619e+00 6.28711687e+00
6.15546293e+00 6.02694407e+00 5.90355315e+00 5.78304026e+00
5.66723561e+00 5.55407784e+00 5.44525062e+00 5.33886196e+00
5.23646321e+00 5.13631486e+00 5.03984857e+00 4.94546242e+00
4.85447954e+00 4.76542238e+00 4.67951555e+00 4.59539417e+00
4.51419320e+00 4.43464998e+00 4.35781782e+00 4.28252699e+00
4.20975623e+00 4.13842049e+00 4.06943032e+00 4.00177790e+00
3.93631139e+00 3.87209349e+00 3.80991514e+00 3.74890363e+00
3.68979733e+00 3.63178271e+00 3.57554981e+00 3.52033943e+00
3.46679711e+00 3.41421356e+00 3.36319330e+00 3.31307300e+00
3.26441928e+00 3.21661118e+00 3.17018031e+00 3.12454478e+00
3.08020380e+00 3.03661161e+00 2.99423737e+00 2.95256874e+00
2.91204706e+00 2.87219088e+00 2.83341572e+00 2.79526881e+00
2.75814163e+00 2.72160804e+00 2.68603716e+00 2.65102759e+00
2.61692763e+00 2.58335888e+00 2.55065024e+00 2.51844472e+00
2.48705312e+00 2.45613840e+00 2.42599446e+00 2.39630287e+00
2.36734171e+00 2.33880995e+00 2.31097089e+00 2.28353972e+00
2.25676590e+00 2.23037981e+00 2.20461795e+00 2.17922491e+00
2.15442502e+00 2.12997619e+00 2.10609133e+00 2.08254085e+00
2.05952692e+00 2.03683168e+00 2.01464722e+00 1.99276668e+00
1.97137266e+00 1.95026864e+00 1.92962831e+00 1.90926487e+00
1.88934361e+00 1.86968686e+00 1.85045199e+00 1.83146996e+00
1.81289067e+00 1.79455320e+00 1.77660038e+00 1.75887896e+00
1.74152511e+00 1.72439281e+00 1.70761193e+00 1.69104327e+00
1.67481075e+00 1.65878162e+00 1.64307418e+00 1.62756176e+00
1.61235734e+00 1.59734000e+00 1.58261768e+00 1.56807491e+00
1.55381487e+00 1.53972724e+00 1.52591066e+00 1.51225971e+00
1.49886872e+00 1.48563693e+00 1.47265458e+00 1.45982529e+00
1.44723544e+00 1.43479283e+00 1.42258016e+00 1.41050919e+00
1.39865911e+00 1.38694544e+00 1.37544407e+00 1.36407409e+00
1.35290821e+00 1.34186892e+00 1.33102593e+00 1.32030497e+00
1.30977288e+00 1.29935845e+00 1.28912580e+00 1.27900666e+00
1.26906254e+00 1.25922795e+00 1.24956193e+00 1.24000166e+00
1.23060380e+00 1.22130806e+00 1.21216885e+00 1.20312829e+00
1.19423865e+00 1.18544435e+00 1.17679560e+00 1.16823901e+00
1.15982284e+00 1.15149581e+00 1.14330427e+00 1.13519897e+00
1.12722447e+00 1.11933343e+00 1.11156869e+00 1.10388473e+00
1.09632277e+00 1.08883904e+00 1.08147319e+00 1.07418311e+00
1.06700696e+00 1.05990423e+00 1.05291164e+00 1.04599022e+00
1.03917530e+00 1.03242939e+00 1.02578649e+00 1.01921053e+00
1.01273423e+00 1.00632287e+00 1.00000797e+00 9.93756087e-01
9.87597580e-01 9.81500252e-01 9.75493337e-01 9.69545830e-01
9.63685892e-01 9.57883658e-01 9.52166261e-01 9.46504929e-01
9.40925806e-01 9.35401171e-01 9.29956221e-01 9.24564238e-01
9.19249512e-01 9.13986292e-01 9.08797990e-01 9.03659787e-01
8.98594253e-01 8.93577462e-01 8.88631175e-01 8.83732323e-01
8.78901891e-01 8.74117635e-01 8.69399791e-01 8.64726909e-01
8.60118504e-01 8.55553890e-01 8.51051889e-01 8.46592550e-01
8.42194029e-01 8.37837079e-01 8.33539215e-01 8.29281871e-01
8.25081943e-01 8.20921519e-01 8.16816901e-01 8.12750807e-01
8.08738966e-01 8.04764702e-01 8.00843191e-01 7.96958344e-01
7.93124803e-01 7.89327042e-01 7.85579191e-01 7.81866266e-01
7.78201901e-01 7.74571639e-01 7.70988635e-01 7.67438935e-01
7.63935236e-01 7.60464069e-01 7.57037688e-01 7.53643094e-01
7.50292110e-01 7.46972193e-01 7.43694751e-01 7.40447677e-01
7.37241981e-01 7.34065978e-01 7.30930293e-01 7.27823647e-01
7.24756293e-01 7.21717345e-01 7.18716697e-01 7.15743843e-01
7.12808328e-01 7.09900016e-01 7.07028114e-01 7.04182839e-01
7.01373077e-01 6.98589386e-01 6.95840338e-01 6.93116822e-01
6.90427108e-01 6.87762403e-01 6.85130685e-01 6.82523471e-01
6.79948456e-01 6.77397454e-01 6.74877886e-01 6.72381856e-01
6.69916521e-01 6.67474264e-01 6.65061985e-01 6.62672336e-01
6.60311972e-01 6.57973805e-01 6.55664251e-01 6.53376473e-01
6.51116657e-01 6.48878210e-01 6.46667093e-01 6.44476951e-01
6.42313527e-01 6.40170694e-01 6.38053986e-01 6.35957498e-01
6.33886560e-01 6.31835481e-01 6.29809395e-01 6.27802818e-01
6.25820694e-01 6.23857739e-01 6.21918714e-01 6.19998529e-01
6.18101765e-01 6.16223521e-01 6.14368207e-01 6.12531102e-01
6.10716449e-01 6.08919704e-01 6.07144949e-01 6.05387809e-01
6.03652210e-01 6.01933942e-01 6.00236779e-01 5.98556673e-01
5.96897249e-01 5.95254614e-01 5.93632252e-01 5.92026419e-01
5.90440463e-01 5.88870783e-01 5.87320594e-01 5.85786438e-01
5.84271398e-01 5.82772154e-01 5.81291664e-01 5.79826739e-01
5.78380217e-01 5.76949035e-01 5.75535916e-01 5.74137921e-01
5.72757657e-01 5.71392306e-01 5.70044366e-01 5.68711135e-01
5.67395003e-01 5.66093382e-01 5.64808559e-01 5.63538053e-01
5.62284054e-01 5.61044185e-01 5.59820539e-01 5.58610843e-01
5.57417094e-01 5.56237119e-01 5.55072826e-01 5.53922136e-01
5.52786870e-01 5.51665041e-01 5.50558386e-01 5.49465008e-01
5.48386562e-01 5.47321237e-01 5.46270609e-01 5.45232953e-01
5.44209766e-01 5.43199404e-01 5.42203292e-01 5.41219863e-01
5.40250471e-01 5.39293626e-01 5.38350611e-01 5.37420011e-01
5.36503041e-01 5.35598357e-01 5.34707111e-01 5.33828027e-01
5.32962194e-01 5.32108403e-01 5.31267683e-01 5.30438888e-01
5.29622990e-01 5.28818905e-01 5.28027550e-01 5.27247898e-01
5.26480813e-01 5.25725328e-01 5.24982253e-01 5.24250677e-01
5.23531359e-01 5.22823442e-01 5.22127640e-01 5.21443143e-01
5.20770621e-01 5.20109314e-01 5.19459846e-01 5.18821507e-01
5.18194878e-01 5.17579293e-01 5.16975292e-01 5.16382256e-01
5.15800685e-01 5.15230001e-01 5.14670666e-01 5.14122145e-01
5.13584863e-01 5.13058323e-01 5.12542918e-01 5.12038186e-01
5.11544489e-01 5.11061400e-01 5.10589249e-01 5.10127644e-01
5.09676886e-01 5.09236616e-01 5.08807104e-01 5.08388024e-01
5.07979621e-01 5.07581595e-01 5.07194167e-01 5.06817067e-01
5.06450490e-01 5.06094193e-01 5.05748350e-01 5.05412742e-01
5.05087521e-01 5.04772493e-01 5.04467791e-01 5.04173242e-01
5.03888962e-01 5.03614797e-01 5.03350847e-01 5.03096979e-01
5.02853276e-01 5.02619624e-01 5.02396090e-01 5.02182578e-01
5.01979144e-01 5.01785704e-01 5.01602303e-01 5.01428874e-01
5.01265450e-01 5.01111976e-01 5.00968478e-01 5.00834910e-01
5.00711291e-01 5.00597587e-01 5.00493809e-01 5.00399932e-01
5.00315963e-01 5.00241883e-01 5.00177696e-01 5.00123390e-01
5.00078966e-01 5.00044416e-01 5.00019740e-01 5.00004935e-01]
the largest singular values of B:
[[-0.06303255 -0.06278237 -0.06253362 ..., -0.06253362 -0.06278237
-0.06303255]
[ 0.06324524 0.06324274 0.06323775 ..., -0.06323775 -0.06324274
-0.06324524]
[ 0.06313468 0.06287473 0.06260689 ..., 0.06260689 0.06287473
0.06313468]
...,
[-0.00059607 0.00178799 -0.00297927 ..., 0.00297927 -0.00178799
0.00059607]
[-0.00039659 0.0011913 -0.00198581 ..., -0.00198581 0.0011913
-0.00039659]
[-0.00019869 0.00059607 -0.00099342 ..., 0.00099342 -0.00059607
0.00019869]]
9-4:
import numpy as np
n=200
Z=np.random.random_integers(100,size=(n,n))
print("the eigenvalue of Z:")
print(np.linalg.eig(Z)[0])
print("the eigenvector of Z:")
print(np.linalg.eig(Z)[1])
the eigenvalue of Z:
[ 1.00953977e+04 +0.j 3.76394004e+02+145.86474271j
3.76394004e+02-145.86474271j 2.99660982e+02+264.91643692j
2.99660982e+02-264.91643692j 2.39707874e+02+310.92800591j
2.39707874e+02-310.92800591j -3.95778749e+02+169.9267468j
-3.95778749e+02-169.9267468j -3.99377202e+02+121.21356662j
-3.99377202e+02-121.21356662j -2.77303005e+02+304.56987479j
-2.77303005e+02-304.56987479j -3.35357147e+02+222.80778212j
-3.35357147e+02-222.80778212j -2.24615661e+02+337.4527546j
-2.24615661e+02-337.4527546j -3.90331372e+02 +0.j
-1.87677675e+02+346.28323083j -1.87677675e+02-346.28323083j
9.70351984e+01+388.73473397j 9.70351984e+01-388.73473397j
-1.44267559e+02+359.64675285j -1.44267559e+02-359.64675285j
3.23424909e+02+193.55079537j 3.23424909e+02-193.55079537j
3.78317084e+02 +54.40259726j 3.78317084e+02 -54.40259726j
2.86761863e+02+228.52631687j 2.86761863e+02-228.52631687j
8.23631128e+01+359.74986273j 8.23631128e+01-359.74986273j
-1.19535252e+02+348.26882023j -1.19535252e+02-348.26882023j
-3.51470542e+02+103.61207199j -3.51470542e+02-103.61207199j
-2.38799418e+02+268.48215183j -2.38799418e+02-268.48215183j
-3.38335332e+02+127.36083531j -3.38335332e+02-127.36083531j
-2.67690078e+02+228.85895776j -2.67690078e+02-228.85895776j
1.71342114e+02+312.40630866j 1.71342114e+02-312.40630866j
3.32054720e+02+145.55741066j 3.32054720e+02-145.55741066j
-2.98592115e+01+363.4765729j -2.98592115e+01-363.4765729j
3.41762900e+01+358.9746905j 3.41762900e+01-358.9746905j
-3.55864503e+02 +22.17723313j -3.55864503e+02 -22.17723313j
2.28597623e+02+254.01856223j 2.28597623e+02-254.01856223j
3.58405529e+02 +36.10881532j 3.58405529e+02 -36.10881532j
8.77565933e+01+337.60044235j 8.77565933e+01-337.60044235j
2.00075139e+02+268.2336093j 2.00075139e+02-268.2336093j
-1.67867528e+02+292.74568935j -1.67867528e+02-292.74568935j
-1.15805851e+01+332.8745454j -1.15805851e+01-332.8745454j
3.32611158e+02 +64.56439402j 3.32611158e+02 -64.56439402j
-1.46767638e+02+296.09903826j -1.46767638e+02-296.09903826j
-5.98845648e+01+327.43856068j -5.98845648e+01-327.43856068j
3.18590427e+02 +95.32857314j 3.18590427e+02 -95.32857314j
2.57266468e+02+191.66279837j 2.57266468e+02-191.66279837j
-3.06673071e+02 +90.73210675j -3.06673071e+02 -90.73210675j
-2.88351832e+02+114.82841358j -2.88351832e+02-114.82841358j
5.00062033e+01+311.92522607j 5.00062033e+01-311.92522607j
-3.07444599e+02 +17.39823939j -3.07444599e+02 -17.39823939j
-1.77581065e+02+242.56133459j -1.77581065e+02-242.56133459j
3.15669687e+02 +0.j 3.05582244e+02 +55.17703935j
3.05582244e+02 -55.17703935j 2.71265253e+02+131.71574732j
2.71265253e+02-131.71574732j 1.50529202e+02+258.76830701j
1.50529202e+02-258.76830701j -2.39782995e+02+169.18651151j
-2.39782995e+02-169.18651151j -6.37238062e+01+294.68846496j
-6.37238062e+01-294.68846496j -3.72157039e+01+299.54291491j
-3.72157039e+01-299.54291491j 1.41649856e+02+249.32837899j
1.41649856e+02-249.32837899j 9.80456068e+01+271.48938742j
9.80456068e+01-271.48938742j -1.10048623e+02+257.47854487j
-1.10048623e+02-257.47854487j -1.92293467e+02+193.02001322j
-1.92293467e+02-193.02001322j 2.93556909e+02 +0.j
-2.64590532e+02 +65.81440207j -2.64590532e+02 -65.81440207j
-1.42862552e+02+224.0946205j -1.42862552e+02-224.0946205j
-5.96486593e+00+278.2678789j -5.96486593e+00-278.2678789j
1.90628179e+02+182.02235668j 1.90628179e+02-182.02235668j
-2.18355197e+02+132.60256105j -2.18355197e+02-132.60256105j
2.55978678e+02 +90.22565434j 2.55978678e+02 -90.22565434j
-1.06467326e+01+256.48345999j -1.06467326e+01-256.48345999j
-2.24751373e+02+103.90242008j -2.24751373e+02-103.90242008j
2.60853213e+02 +0.j -5.33737677e+01+236.33566582j
-5.33737677e+01-236.33566582j 3.78960279e+01+243.92091778j
3.78960279e+01-243.92091778j 7.14742503e+01+231.70012294j
7.14742503e+01-231.70012294j 1.30974811e+02+198.81631568j
1.30974811e+02-198.81631568j -2.38230531e+02 +0.j
1.78074484e+02+143.21367086j 1.78074484e+02-143.21367086j
1.43746715e+02+175.32978555j 1.43746715e+02-175.32978555j
-1.34860398e+02+178.45230449j -1.34860398e+02-178.45230449j
2.20332073e+02 +70.12296359j 2.20332073e+02 -70.12296359j
2.24010820e+02 +41.48166679j 2.24010820e+02 -41.48166679j
-1.00442922e+02+198.43348444j -1.00442922e+02-198.43348444j
1.77893987e+01+229.74463914j 1.77893987e+01-229.74463914j
-1.88229580e+02+110.17631474j -1.88229580e+02-110.17631474j
1.95206380e+02 +93.7818983j 1.95206380e+02 -93.7818983j
-2.13831621e+02 +0.j 1.54031114e+02+118.17026546j
1.54031114e+02-118.17026546j -2.05197703e+02 +0.j
2.06724025e+02 +0.j -1.73443014e+02 +83.30223017j
-1.73443014e+02 -83.30223017j -1.87464950e+02 +52.29053798j
-1.87464950e+02 -52.29053798j -1.11473259e+02+148.74466409j
-1.11473259e+02-148.74466409j 7.45282627e+01+174.08464203j
7.45282627e+01-174.08464203j 1.67495180e+02 +58.93861552j
1.67495180e+02 -58.93861552j 9.68119879e+01+135.30932713j
9.68119879e+01-135.30932713j 2.75166879e-01+170.23628754j
2.75166879e-01-170.23628754j 3.59408922e+01+155.34028236j
3.59408922e+01-155.34028236j 1.42060143e+02 +48.8987879j
1.42060143e+02 -48.8987879j -1.50518140e+02 +20.63323419j
-1.50518140e+02 -20.63323419j -7.77111776e+01+114.82202834j
-7.77111776e+01-114.82202834j -9.94688062e+01 +64.65591422j
-9.94688062e+01 -64.65591422j 9.31717700e+01 +79.1576633j
9.31717700e+01 -79.1576633j -7.35927221e+00+122.52268794j
-7.35927221e+00-122.52268794j 6.45428027e+00 +99.4276397j
6.45428027e+00 -99.4276397j 7.07434890e+01 +66.41615668j
7.07434890e+01 -66.41615668j 9.54164871e+01 +0.j
1.58250159e+01 +76.04140323j 1.58250159e+01 -76.04140323j
-4.68322604e+01 +50.39196903j -4.68322604e+01 -50.39196903j
-1.08421393e+02 +0.j -7.15660757e+01 +7.43959481j
-7.15660757e+01 -7.43959481j 7.40860385e+01 +0.j
-7.86592829e+00 +24.20825988j -7.86592829e+00 -24.20825988j
-3.22050398e+01 +0.j 5.02316762e+01 +0.j ]
the eigenvector of Z:
[[-0.07067350+0.j 0.07158291+0.04231717j 0.07158291-0.04231717j
..., 0.01610133-0.03268252j 0.00049605+0.j -0.01650962+0.j ]
[-0.06926030+0.j 0.01495462+0.03465972j 0.01495462-0.03465972j
..., 0.02832088-0.00042045j -0.03861504+0.j 0.05968802+0.j ]
[-0.06473734+0.j -0.03015797+0.05124203j -0.03015797-0.05124203j
..., 0.09013863-0.01350993j -0.00385757+0.j -0.10789813+0.j ]
...,
[-0.07441188+0.j 0.05929417-0.00126856j 0.05929417+0.00126856j
..., -0.00963757+0.01569466j 0.07321008+0.j 0.02606904+0.j ]
[-0.07193039+0.j -0.03463707-0.00441045j -0.03463707+0.00441045j
..., 0.00806795-0.00191516j 0.17979334+0.j -0.00138131+0.j ]
[-0.07187790+0.j 0.03261974-0.05103739j 0.03261974+0.05103739j
..., 0.00440189-0.0116803j 0.03180158+0.j -0.04488606+0.j ]]
9-5:import numpy as np
import scipy.linalg as LA
n=200
C=np.zeros((n,n))
p=0.6
for i in range(0,len(C)):
for j in range(0,len(C[i])):
if np.random.rand()<p:
C[i][j]=1
print("the singular value of Z:")
print(LA.svd(C)[1])
the singular value of Z:
[ 1.21113729e+02 1.34666813e+01 1.33159672e+01 1.30393647e+01
1.29356170e+01 1.27842592e+01 1.25976951e+01 1.25661295e+01
1.23510665e+01 1.23193706e+01 1.21483315e+01 1.19691464e+01
1.18676639e+01 1.18288163e+01 1.17879500e+01 1.14931262e+01
1.14531188e+01 1.14297777e+01 1.13919572e+01 1.13248853e+01
1.11708665e+01 1.10953594e+01 1.10584747e+01 1.09297737e+01
1.08390080e+01 1.07155273e+01 1.06431570e+01 1.04878079e+01
1.04275739e+01 1.03532890e+01 1.03250137e+01 1.02434743e+01
1.01030256e+01 1.00209655e+01 9.92709517e+00 9.80912443e+00
9.76520132e+00 9.70682509e+00 9.64238475e+00 9.57616346e+00
9.48961471e+00 9.44281667e+00 9.31956910e+00 9.29568206e+00
9.18839410e+00 9.17660846e+00 9.05832140e+00 8.96017531e+00
8.93369754e+00 8.82354762e+00 8.77650330e+00 8.75600165e+00
8.68873652e+00 8.60928379e+00 8.55226681e+00 8.42116078e+00
8.36407710e+00 8.34934312e+00 8.28730024e+00 8.24773649e+00
8.16719865e+00 8.09525866e+00 7.98650866e+00 7.88468276e+00
7.79647976e+00 7.69115633e+00 7.63458962e+00 7.56040171e+00
7.53544636e+00 7.46173601e+00 7.41005593e+00 7.38078642e+00
7.31592675e+00 7.24162672e+00 7.21204910e+00 7.12580538e+00
7.06748159e+00 7.04875610e+00 6.93468369e+00 6.91143844e+00
6.84893138e+00 6.79658037e+00 6.74536737e+00 6.71446707e+00
6.62233692e+00 6.54237203e+00 6.46584550e+00 6.42918116e+00
6.40251503e+00 6.32229168e+00 6.24917099e+00 6.18233958e+00
6.10988514e+00 6.02111319e+00 5.95773483e+00 5.89015632e+00
5.83634687e+00 5.76235675e+00 5.72923349e+00 5.68517014e+00
5.62582115e+00 5.59775419e+00 5.50149203e+00 5.46986293e+00
5.39114602e+00 5.22347581e+00 5.18820783e+00 5.15901837e+00
5.08461040e+00 5.01101283e+00 4.98957647e+00 4.94080896e+00
4.84403799e+00 4.75900579e+00 4.75013217e+00 4.66686134e+00
4.54977649e+00 4.49260572e+00 4.46867656e+00 4.44113875e+00
4.32629743e+00 4.29534290e+00 4.25534526e+00 4.15986238e+00
4.13721910e+00 4.04475645e+00 4.02026378e+00 3.96861833e+00
3.93482911e+00 3.86863269e+00 3.82721892e+00 3.74350402e+00
3.69946735e+00 3.63846796e+00 3.54451832e+00 3.52604861e+00
3.48041755e+00 3.44473611e+00 3.38556876e+00 3.30930540e+00
3.25245083e+00 3.14645076e+00 3.10248665e+00 3.07718106e+00
2.99492968e+00 2.95666439e+00 2.90567882e+00 2.78707639e+00
2.76921582e+00 2.71874788e+00 2.66936824e+00 2.57564917e+00
2.55888504e+00 2.51778296e+00 2.46275333e+00 2.41763633e+00
2.37923915e+00 2.30329441e+00 2.26516003e+00 2.19844753e+00
2.15427490e+00 2.03982910e+00 1.97905098e+00 1.96981169e+00
1.92546248e+00 1.85175745e+00 1.81265449e+00 1.75442849e+00
1.74477026e+00 1.65898051e+00 1.53862889e+00 1.48577690e+00
1.46033935e+00 1.44805740e+00 1.36978507e+00 1.30677153e+00
1.23391064e+00 1.22605621e+00 1.14069807e+00 1.06522138e+00
1.04371911e+00 9.83508947e-01 8.82028255e-01 8.49431765e-01
8.36399548e-01 7.59783773e-01 7.21958994e-01 6.69419300e-01
6.30984978e-01 6.00707380e-01 5.11947756e-01 4.53569954e-01
3.36631331e-01 3.20175350e-01 2.93830356e-01 1.85290616e-01
1.49213596e-01 1.07692158e-01 9.97759801e-02 1.02883797e-02]
9-6:
import numpy as np
z=20
n=200
m=500
A=np.random.randint(100,size=(n,m))
ex_z=np.tile(z,(n,m))
result=np.abs(A-ex_z)
print("the closest element:")
print(np.argmin(result))
the closest element:
77