summaryrefslogtreecommitdiff
path: root/Numerical_Methods_by_E._Balaguruswamy/chapter8.ipynb
diff options
context:
space:
mode:
authorTrupti Kini2017-01-12 23:33:05 +0600
committerTrupti Kini2017-01-12 23:33:05 +0600
commitade107a07680916a90da3e540d184972006d755a (patch)
tree874c6258684f87ae5ce306e7850256a9599810ac /Numerical_Methods_by_E._Balaguruswamy/chapter8.ipynb
parentb85db0ac762e815fb10f6100f28021c1475f2235 (diff)
downloadPython-Textbook-Companions-ade107a07680916a90da3e540d184972006d755a.tar.gz
Python-Textbook-Companions-ade107a07680916a90da3e540d184972006d755a.tar.bz2
Python-Textbook-Companions-ade107a07680916a90da3e540d184972006d755a.zip
Added(A)/Deleted(D) following books
A Basic_mechanical_engineering_by_Basant_Agrawal_,_C.M_Agrawal/README.txt A Numerical_Methods_by_E._Balaguruswamy/chapter10.ipynb A Numerical_Methods_by_E._Balaguruswamy/chapter11.ipynb A Numerical_Methods_by_E._Balaguruswamy/chapter12.ipynb A Numerical_Methods_by_E._Balaguruswamy/chapter13.ipynb A Numerical_Methods_by_E._Balaguruswamy/chapter14.ipynb A Numerical_Methods_by_E._Balaguruswamy/chapter15.ipynb A Numerical_Methods_by_E._Balaguruswamy/chapter3.ipynb A Numerical_Methods_by_E._Balaguruswamy/chapter4.ipynb A Numerical_Methods_by_E._Balaguruswamy/chapter6.ipynb A Numerical_Methods_by_E._Balaguruswamy/chapter7.ipynb A Numerical_Methods_by_E._Balaguruswamy/chapter8.ipynb A Numerical_Methods_by_E._Balaguruswamy/chapter9.ipynb A Numerical_Methods_by_E._Balaguruswamy/screenshots/greatest-precision-4.png A Numerical_Methods_by_E._Balaguruswamy/screenshots/rounding-off-4.png A Numerical_Methods_by_E._Balaguruswamy/screenshots/truncation-error-4.png A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_4JhcI7F.ipynb A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_5CfOfQx.ipynb A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_B30VPml.ipynb A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_BE8QjoS.ipynb A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_Gb015bo.ipynb A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_KQ8ycMr.ipynb A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_LIZWeY4.ipynb A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_Opo6g3L.ipynb A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_Pq40WOu.ipynb A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_QLXi0uM.ipynb A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_TdOIeIQ.ipynb A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_UiM06tF.ipynb A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_VQabJzR.ipynb A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_XKPPUxj.ipynb A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_dfFlLnm.ipynb A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_fegIkl6.ipynb A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_g1GxlUN.ipynb A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_gGvuusH.ipynb A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_gZeNd4b.ipynb A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_khAt4Y6.ipynb A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_oJQM5Mb.ipynb A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_p22tFeA.ipynb A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_qNHcrb8.ipynb A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_qeUxd0G.ipynb A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_r0nfWNs.ipynb A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_uWQUwaW.ipynb A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_vkMAnbH.ipynb A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_wP2wGMS.ipynb A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_x09tDSO.ipynb A Physics_BSc(Paper_4)_by_Sanjeeva_Rao,_Bhikshmaiah,_Ramakrishna_Reddy,_Ananta_Ramaiah/C_yCW2orc.ipynb
Diffstat (limited to 'Numerical_Methods_by_E._Balaguruswamy/chapter8.ipynb')
-rw-r--r--Numerical_Methods_by_E._Balaguruswamy/chapter8.ipynb317
1 files changed, 317 insertions, 0 deletions
diff --git a/Numerical_Methods_by_E._Balaguruswamy/chapter8.ipynb b/Numerical_Methods_by_E._Balaguruswamy/chapter8.ipynb
new file mode 100644
index 00000000..12e74ff2
--- /dev/null
+++ b/Numerical_Methods_by_E._Balaguruswamy/chapter8.ipynb
@@ -0,0 +1,317 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 8 - Iterative solutions of linear equations"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example No. 8_01 Page No. 254"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 1,
+ "metadata": {
+ "collapsed": false
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "x1 = (5 - x2 - x3)/2 \n",
+ "x2 = (15 - 3x1 - 2x3)/5 \n",
+ "x3 = (8 - 2x1 - x2)/4\n",
+ "\n",
+ " Iteration Number : 1\n",
+ "\n",
+ " \n",
+ " x1 = 2.500000\n",
+ " x2 = 3.000000\n",
+ " x3 = 2.000000\n",
+ "\n",
+ "\n",
+ " Iteration Number : 2\n",
+ "\n",
+ " \n",
+ " x1 = 0.000000\n",
+ " x2 = 0.700000\n",
+ " x3 = 0.000000\n",
+ "\n",
+ "\n",
+ " Iteration Number : 3\n",
+ "\n",
+ " \n",
+ " x1 = 2.150000\n",
+ " x2 = 3.000000\n",
+ " x3 = 1.825000\n",
+ "\n",
+ "\n",
+ " Iteration Number : 4\n",
+ "\n",
+ " \n",
+ " x1 = 0.087500\n",
+ " x2 = 0.980000\n",
+ " x3 = 0.175000\n",
+ "\n"
+ ]
+ }
+ ],
+ "source": [
+ "from __future__ import division\n",
+ "from numpy import mat\n",
+ "#Gauss Jacobi\n",
+ "\n",
+ "A = mat([[ 2, 1 , 1] ,[3, 5, 2],[2, 1, 4]])\n",
+ "B = mat([[ 5],[ 15],[ 8]])\n",
+ "x1old = 0 ;x2old = 0 ; x3old = 0 #intial assumption of x1,x2 & x3\n",
+ "\n",
+ "print 'x1 = (5 - x2 - x3)/2 '\n",
+ "print 'x2 = (15 - 3x1 - 2x3)/5 '\n",
+ "print 'x3 = (8 - 2x1 - x2)/4'\n",
+ "\n",
+ "for i in range(1,5):\n",
+ " print '\\n Iteration Number : %d\\n'%(i)\n",
+ " \n",
+ " x1 = (5 - x2old - x3old)/2 #\n",
+ " x2 = (15 - 3*x1old - 2*x3old)/5 # \n",
+ " x3 = (8 - 2*x1old - x2old)/4 #\n",
+ " \n",
+ " print ' \\n x1 = %f\\n x2 = %f\\n x3 = %f\\n'%(x1,x2,x3)\n",
+ " \n",
+ " x1old = x1#\n",
+ " x2old = x2#\n",
+ " x3old = x3#\n",
+ " \n"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example No. 8_02 Page No.261"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 2,
+ "metadata": {
+ "collapsed": false
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "(x1 = 5 - x2 - x3)/2 \n",
+ "(x2 = 15 - 3x1 - 2x3)/5 \n",
+ "(x3 = 8 - 2x1 - x2)/4\n",
+ "\n",
+ " Iteration Number : 1\n",
+ " \n",
+ " x1 = 2.500000\n",
+ " x2 = 1.500000\n",
+ " x3 = 0.375000\n",
+ "\n",
+ "\n",
+ " Iteration Number : 2\n",
+ " \n",
+ " x1 = 1.562500\n",
+ " x2 = 1.912500\n",
+ " x3 = 0.740625\n",
+ "\n"
+ ]
+ }
+ ],
+ "source": [
+ "from __future__ import division\n",
+ "from numpy import mat\n",
+ "#Gauss Seidel\n",
+ "\n",
+ "A = mat([[ 2, 1 , 1] ,[3, 5, 2],[2, 1, 4]])\n",
+ "B = mat([[ 5],[ 15],[ 8]])\n",
+ "\n",
+ "x1old = 0 ;x2old = 0 ; x3old = 0 #intial assumption\n",
+ "\n",
+ "print '(x1 = 5 - x2 - x3)/2 '\n",
+ "print '(x2 = 15 - 3x1 - 2x3)/5 '\n",
+ "print '(x3 = 8 - 2x1 - x2)/4'\n",
+ " \n",
+ "for i in range(1,3):\n",
+ " \n",
+ " print '\\n Iteration Number : %d'%(i)\n",
+ " \n",
+ " x1 = (5 - x2old - x3old)/2 #\n",
+ " x1old = x1# \n",
+ " x2 = (15 - 3*x1old - 2*x3old)/5 #\n",
+ " x2old = x2# \n",
+ " x3 = (8 - 2*x1old - x2old)/4 #\n",
+ " x3old = x3#\n",
+ " \n",
+ " print ' \\n x1 = %f\\n x2 = %f\\n x3 = %f\\n'%(x1,x2,x3)\n",
+ " \n"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example No. 8_03 page no. 269"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 3,
+ "metadata": {
+ "collapsed": false
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Using a matrix to display the results after each iteration, first row represents initial assumption\n",
+ "x1 = (5-x2)/3\n",
+ "x2 = (x1 - 5)/3\n",
+ "The system converges to the solution ( 1.999949 , -1.000017 ) in 4 iterations\n",
+ "\n",
+ "Final Result is as : \n",
+ "0.0000000000 \t0.0000000000 \t1.9999491947 \t1.00001693509\n",
+ "-1.1111111111 \t1.6666666667 \t0.3332825281 \t0.111094176023\n",
+ "-0.9876543210 \t2.0370370370 \t0.0370878423 \t0.0123626141002\n",
+ "-1.0013717421 \t1.9958847737 \t0.0040644211 \t0.00135480702467\n",
+ "-0.9998475842 \t2.0004572474 \t0.0005080526 \t0.000169350878084\n"
+ ]
+ }
+ ],
+ "source": [
+ "from __future__ import division\n",
+ "from numpy import array,zeros,ones,nditer,vstack,hstack\n",
+ "\n",
+ "#Gauss Seidel\n",
+ "\n",
+ "\n",
+ "A = array([[ 3, 1],[ 1 ,-3]])\n",
+ "B = array([[ 5],[5 ]])\n",
+ "\n",
+ "X=zeros([6,2])\n",
+ "print ('Using a matrix to display the results after each iteration, first row represents initial assumption')\n",
+ "X[0,0] = 0; X[0,1] = 0 ;#initial assumption\n",
+ "\n",
+ "maxit = 1000;#Maximum number of iterations\n",
+ "err = 0.0003 ;\n",
+ "\n",
+ "print('x1 = (5-x2)/3');\n",
+ "print('x2 = (x1 - 5)/3');\n",
+ "\n",
+ "for i in range(1,maxit):\n",
+ " \n",
+ " X[i,0] = (5 - X[i-1,1])/3 ;\n",
+ " X[i,1] = (X[i,0] - 5)/3 ;\n",
+ " \n",
+ " #Error Calculations\n",
+ " err1 =abs((X[i,0] - X[i-1,0])/X[i,0]) \n",
+ " err2 =abs((X[i,1]- X[i-1,1])/X[i,1])\n",
+ " \n",
+ " #Terminating Condition \n",
+ " if err >= err1 and err >= err2:\n",
+ " print 'The system converges to the solution ( %f , %f ) in %d iterations\\n'%(X[i,0],X[i,1],i-1) \n",
+ " break\n",
+ " \n",
+ " \n",
+ "\n",
+ "#calcution of true error i.e. difference between final result and results from each iteration\n",
+ "trueerr1 = abs(X[:,0] - X[i,0]*ones([i+1,1])) ;\n",
+ "trueerr2 = abs(X[:,1] - X[i,1]*ones([i+1,1])) ;\n",
+ "\n",
+ "#displaying final results\n",
+ "print 'Final Result is as : '\n",
+ "for i in range(0,5):\n",
+ " print '%.10f'%X[i,:][1],'\\t%.10f'%X[i,:][0],'\\t%.10f'%trueerr1[0,i],'\\t',trueerr2[0,i]"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example No. 8_04 Page No.261"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 4,
+ "metadata": {
+ "collapsed": false
+ },
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "x1 = 5 + 3*x2 \n",
+ "x2 = 5 - 3*x1 \n",
+ "\n",
+ " Iteration : 1 x1 = 5 and x2 = -10\n",
+ "\n",
+ "\n",
+ " Iteration : 2 x1 = -25 and x2 = 80\n",
+ "\n",
+ "\n",
+ " Iteration : 3 x1 = 245 and x2 = -730\n",
+ "\n",
+ "It is clear that the process do not converge towards the solution, rather it diverges.\n"
+ ]
+ }
+ ],
+ "source": [
+ "from numpy import mat\n",
+ "#Gauss Seidel\n",
+ "\n",
+ "A = mat([[ 1, -3],[3, 1 ]])\n",
+ "B = mat([[ 5],[5] ])\n",
+ "x1old = 0 #intial assumption\n",
+ "x2old = 0 #intial assumption\n",
+ "\n",
+ "print 'x1 = 5 + 3*x2 '\n",
+ "print 'x2 = 5 - 3*x1 '\n",
+ " \n",
+ "for i in range(1,4):\n",
+ " x1 = 5 + 3*x2old \n",
+ " x1old = x1\n",
+ " x2 = 5 - 3*x1old \n",
+ " x2old = x2\n",
+ " \n",
+ " print '\\n Iteration : %d x1 = %d and x2 = %d\\n'%(i,x1,x2)\n",
+ " \n",
+ "print 'It is clear that the process do not converge towards the solution, rather it diverges.'"
+ ]
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "Python 2",
+ "language": "python",
+ "name": "python2"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 2
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython2",
+ "version": "2.7.9"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 0
+}