summaryrefslogtreecommitdiff
path: root/Linear_Algebra_by_K._Hoffman_and_R._Kunze/Chapter2.ipynb
diff options
context:
space:
mode:
authorkinitrupti2017-05-12 18:40:35 +0530
committerkinitrupti2017-05-12 18:40:35 +0530
commitd36fc3b8f88cc3108ffff6151e376b619b9abb01 (patch)
tree9806b0d68a708d2cfc4efc8ae3751423c56b7721 /Linear_Algebra_by_K._Hoffman_and_R._Kunze/Chapter2.ipynb
parent1b1bb67e9ea912be5c8591523c8b328766e3680f (diff)
downloadPython-Textbook-Companions-d36fc3b8f88cc3108ffff6151e376b619b9abb01.tar.gz
Python-Textbook-Companions-d36fc3b8f88cc3108ffff6151e376b619b9abb01.tar.bz2
Python-Textbook-Companions-d36fc3b8f88cc3108ffff6151e376b619b9abb01.zip
Revised list of TBCs
Diffstat (limited to 'Linear_Algebra_by_K._Hoffman_and_R._Kunze/Chapter2.ipynb')
-rw-r--r--[-rwxr-xr-x]Linear_Algebra_by_K._Hoffman_and_R._Kunze/Chapter2.ipynb104
1 files changed, 37 insertions, 67 deletions
diff --git a/Linear_Algebra_by_K._Hoffman_and_R._Kunze/Chapter2.ipynb b/Linear_Algebra_by_K._Hoffman_and_R._Kunze/Chapter2.ipynb
index cac42c12..5659e3a2 100755..100644
--- a/Linear_Algebra_by_K._Hoffman_and_R._Kunze/Chapter2.ipynb
+++ b/Linear_Algebra_by_K._Hoffman_and_R._Kunze/Chapter2.ipynb
@@ -101,9 +101,9 @@
}
],
"source": [
- "import numpy as np\n",
+ "from numpy import array\n",
"\n",
- "A = np.array([[1, 2, 0 ,3 ,0],[0, 0, 1, 4, 0],[0, 0, 0, 0, 1]])\n",
+ "A = array([[1, 2, 0 ,3 ,0],[0, 0, 1, 4, 0],[0, 0, 0, 0, 1]])\n",
"print 'A = \\n',A\n",
"print 'The subspace of F**5 spanned by a1 a2 a3(row vectors of A) is called row space of A.'\n",
"a1 = A[0,:]\n",
@@ -113,7 +113,7 @@
"print 'a2 = ',a2\n",
"print 'a3 = ',a3\n",
"print 'And, it is also the row space of B.'\n",
- "B = np.array([[1, 2, 0, 3, 0],[0, 0, 1, 4, 0],[0, 0, 0, 0, 1],[-4, -8, 1 ,-8, 0]])\n",
+ "B = array([[1, 2, 0, 3, 0],[0, 0, 1, 4, 0],[0, 0, 0, 0, 1],[-4, -8, 1 ,-8, 0]])\n",
"print 'B = \\n',B"
]
},
@@ -137,36 +137,24 @@
"text": [
"V is the space of all polynomial functions over F.\n",
"S contains the functions as:\n",
- "n = 17\n",
+ "n = 5\n",
"f0(x) = 1\n",
"f1(x) = x\n",
"f2(x) = x**2\n",
"f3(x) = x**3\n",
"f4(x) = x**4\n",
- "f5(x) = x**5\n",
- "f6(x) = x**6\n",
- "f7(x) = x**7\n",
- "f8(x) = x**8\n",
- "f9(x) = x**9\n",
- "f10(x) = x**10\n",
- "f11(x) = x**11\n",
- "f12(x) = x**12\n",
- "f13(x) = x**13\n",
- "f14(x) = x**14\n",
- "f15(x) = x**15\n",
- "f16(x) = x**16\n",
"Then, V is the subspace spanned by set S.\n"
]
}
],
"source": [
- "import sympy as sp\n",
- "import numpy as np\n",
+ "from sympy import Symbol\n",
+ "from numpy import random\n",
"print 'V is the space of all polynomial functions over F.'\n",
"print 'S contains the functions as:'\n",
- "x = sp.Symbol(\"x\")\n",
+ "x = Symbol(\"x\")\n",
"#n = round(rand()*10)#\n",
- "n=np.random.randint(0,19)\n",
+ "n=random.randint(0,19)\n",
"print 'n = ',n\n",
"for i in range (0,n):\n",
" f = x**i#\n",
@@ -208,11 +196,11 @@
}
],
"source": [
- "import numpy as np\n",
- "a1 = np.array([3 ,0, -3])\n",
- "a2 = np.array([-1 ,1 ,2])\n",
- "a3 = np.array([4 ,2, -2])\n",
- "a4 = np.array([2 ,1, 1])\n",
+ "from numpy import array\n",
+ "a1 = array([3 ,0, -3])\n",
+ "a2 = array([-1 ,1 ,2])\n",
+ "a3 = array([4 ,2, -2])\n",
+ "a4 = array([2 ,1, 1])\n",
"print 'a1 = ',a1\n",
"print 'a2 = ',a2\n",
"print 'a3 = ',a3\n",
@@ -248,27 +236,9 @@
"output_type": "stream",
"text": [
"S is the subset of F**n consisting of n vectors.\n",
- "n = 10\n",
+ "n = 1\n",
"e1 = \n",
- "[ 1. 0. 0. 0. 0. 0. 0. 0. 0. 0.]\n",
- "e2 = \n",
- "[ 0. 1. 0. 0. 0. 0. 0. 0. 0. 0.]\n",
- "e3 = \n",
- "[ 0. 0. 1. 0. 0. 0. 0. 0. 0. 0.]\n",
- "e4 = \n",
- "[ 0. 0. 0. 1. 0. 0. 0. 0. 0. 0.]\n",
- "e5 = \n",
- "[ 0. 0. 0. 0. 1. 0. 0. 0. 0. 0.]\n",
- "e6 = \n",
- "[ 0. 0. 0. 0. 0. 1. 0. 0. 0. 0.]\n",
- "e7 = \n",
- "[ 0. 0. 0. 0. 0. 0. 1. 0. 0. 0.]\n",
- "e8 = \n",
- "[ 0. 0. 0. 0. 0. 0. 0. 1. 0. 0.]\n",
- "e9 = \n",
- "[ 0. 0. 0. 0. 0. 0. 0. 0. 1. 0.]\n",
- "e10 = \n",
- "[ 0. 0. 0. 0. 0. 0. 0. 0. 0. 1.]\n",
+ "[ 1.]\n",
"x1,x2,x3...xn are the scalars in F\n",
"Putting a = x1*e1 + x2*e2 + x3*e3 + .... + xn*en\n",
"So, a = (x1,x2,x3,...,xn)\n",
@@ -280,12 +250,12 @@
}
],
"source": [
- "import numpy as np\n",
+ "from numpy import array,random,identity\n",
"print 'S is the subset of F**n consisting of n vectors.'\n",
"#n = round(rand() *10 + 1)#\\\n",
- "n=np.random.randint(0,19)\n",
+ "n=random.randint(0,19)\n",
"print 'n = ',n\n",
- "I = np.identity(n)\n",
+ "I = identity(n)\n",
"for i in range(0,n):\n",
" e = I[i,:]\n",
" print 'e%d = '%(i+1)\n",
@@ -342,17 +312,17 @@
}
],
"source": [
- "import numpy as np\n",
- "P = np.array([[-1, 4, 5],[ 0, 2, -3],[ 0, 0, 8]])\n",
+ "from numpy import array,transpose,linalg\n",
+ "P = array([[-1, 4, 5],[ 0, 2, -3],[ 0, 0, 8]])\n",
"print 'P = \\n',P\n",
- "print '\\ninverse(P) = \\n',np.linalg.inv(P)\n",
+ "print '\\ninverse(P) = \\n',linalg.inv(P)\n",
"a1 = P[:,0]\n",
"a2 = P[:,1]\n",
"a3 = P[:,2]\n",
"print 'The vectors forming basis of F**3 are a1'', a2'', a3'''\n",
- "print \"a1' = \\n\",np.transpose(a1)\n",
- "print \"\\na2' = \\n\",np.transpose(a2)\n",
- "print \"\\na3' = \\n\",np.transpose(a3)\n",
+ "print \"a1' = \\n\",transpose(a1)\n",
+ "print \"\\na2' = \\n\",transpose(a2)\n",
+ "print \"\\na3' = \\n\",transpose(a3)\n",
"print 'The coordinates x1'',x2'',x3'' of vector a = [x1,x2,x3] is given by inverse(P)*[x1# x2# x3]'\n",
"t = -10*a1 - 1./2*a2 - a3#\n",
"print 'And, -10*a1'' - 1/2*a2'' - a3'' = ',t"
@@ -470,7 +440,7 @@
}
],
"source": [
- "import numpy as np\n",
+ "from numpy import array,identity,rank,vstack\n",
"a1 = [1 ,2 ,2, 1]#\n",
"a2 = [0 ,2 ,0 ,1]#\n",
"a3 = [-2, 0, -4, 3]#\n",
@@ -480,12 +450,12 @@
"print 'a3 = ',a3\n",
"print 'The matrix A from these vectors will be:'\n",
"#A = [a1],[a2], [a3]]\n",
- "A=np.array([a1,a2,a3])\n",
+ "A=array([a1,a2,a3])\n",
"print 'A = \\n',A\n",
"\n",
"print 'Finding Row reduced echelon matrix of A that is given by R'\n",
"print 'And applying same operations on identity matrix Q such that R = QA'\n",
- "Q = np.identity(3)\n",
+ "Q = identity(3)\n",
"print 'Q = \\n',Q\n",
"T = A# #Temporary matrix to store A\n",
"print 'Applying row transformations on A and Q,we get'\n",
@@ -520,7 +490,7 @@
"print 'A = \\n',A\n",
"print 'Q = \\n',Q\n",
"#part a\n",
- "print 'rank of R = ',np.rank(R)\n",
+ "print 'rank of R = ',rank(R)\n",
"\n",
"print 'Since, Rank of R is 3, so a1, a2, a3 are independent'\n",
"#part b\n",
@@ -542,19 +512,19 @@
"print 'Since a1'' a2'' a3'' are all of the form (y1 y2 y3 y4) with y3 = 2*y1, hence they are in W.'\n",
"print 'So, they are independent.'\n",
"#part d\n",
- "c = np.array([c1,c2,c3])\n",
- "P = np.identity(3)\n",
+ "c = array([c1,c2,c3])\n",
+ "P = identity(3)\n",
"for i in range(0,3):\n",
" b1 = c[i,0]\n",
" b2 = c[i,1]\n",
" b4 = c[i,3]\n",
- " x1 = np.array([b1, b2, b4]) * Q[:,0]\n",
- " x2 = np.array([b1, b2, b4])*Q[:,1]\n",
- " x3 = np.array([b1, b2, b4])*Q[:,2]\n",
+ " x1 = array([b1, b2, b4]) * Q[:,0]\n",
+ " x2 = array([b1, b2, b4])*Q[:,1]\n",
+ " x3 = array([b1, b2, b4])*Q[:,2]\n",
" \n",
"\n",
"print 'Required matrix P such that X = PX'' is:'\n",
- "P=np.vstack([x1,x2,x3])\n",
+ "P=vstack([x1,x2,x3])\n",
"print 'P = \\n',P\n",
"#print x1"
]
@@ -686,13 +656,13 @@
}
],
"source": [
- "import numpy as np\n",
- "A = np.array([[1, 2, 0, 3, 0],[1, 2, -1, -1, 0],[0 ,0 ,1 ,4 ,0],[2, 4 ,1 ,10, 1],[0 ,0 ,0 ,0 ,1]])\n",
+ "from numpy import array,identity\n",
+ "A = array([[1, 2, 0, 3, 0],[1, 2, -1, -1, 0],[0 ,0 ,1 ,4 ,0],[2, 4 ,1 ,10, 1],[0 ,0 ,0 ,0 ,1]])\n",
"print 'A = \\n',A\n",
"#part a\n",
"T = A# #Temporary storing A in T\n",
"print 'Taking an identity matrix P:'\n",
- "P = np.identity(5)\n",
+ "P = identity(5)\n",
"print 'P = \\n',P\n",
"print 'Applying row transformations on P and A to get a row reduced echelon matrix R:'\n",
"print 'R2 = R2 - R1 and R4 = R4 - 2* R1'\n",