Skip to content

Instantly share code, notes, and snippets.

@MHenderson
Last active December 28, 2015 18:39
Show Gist options
  • Save MHenderson/7544475 to your computer and use it in GitHub Desktop.
Save MHenderson/7544475 to your computer and use it in GitHub Desktop.
MATLAB exercises from Computational and Numerical Methods 2, Winter 2013/14, Nottingham Trent University.
Display the source blob
Display the rendered blob
Raw
{
"metadata": {
"name": ""
},
"nbformat": 3,
"nbformat_minor": 0,
"worksheets": [
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Computational and Numerical Methods\n",
"\n",
"Based on [http://nbviewer.ipython.org/url/github.com/ipython/ipython/raw/master/examples/notebooks/Octave%20Magic.ipynb](http://nbviewer.ipython.org/url/github.com/ipython/ipython/raw/master/examples/notebooks/Octave%20Magic.ipynb)\n",
"\n",
"Notebook source code: [https://gist.github.com/MHenderson/7544475](https://gist.github.com/MHenderson/7544475)\n",
"\n",
"Notebook viewer: [http://nbviewer.ipython.org/7544475](http://nbviewer.ipython.org/7544475)"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%load_ext octavemagic"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 1
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%octave addpath(genpath(\"/home/matthew/workspace/resources/N/Numerical Methods/BEARDAHCC/work\"))"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 2
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Week 15"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"L = [1 0 0 0;2 1 0 0;3 2 1 0;-1 0 2 1];\n",
"b = [1 1 1 1]';\n",
"L\\b"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"ans =\n",
"\n",
" 1\n",
" -1\n",
" 0\n",
" 2\n"
]
}
],
"prompt_number": 3
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"U = [-2 1 1 -1;0 -1 0 1;0 0 1 1;0 0 0 2];\n",
"y = [1 -1 0 2]';\n",
"x = U\\y"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"x =\n",
"\n",
" -0.50000\n",
" 2.00000\n",
" -1.00000\n",
" 1.00000\n"
]
}
],
"prompt_number": 4
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"A = [-2 1 1 -1;-4 1 2 -1;-6 1 4 0;2 -1 1 5];\n",
"[L,U] = lufac(A,1)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"L =\n",
"\n",
" 1 0 0 0\n",
" 2 1 0 0\n",
" 3 2 1 0\n",
" -1 -0 2 1\n",
"\n",
"U =\n",
"\n",
" -2 1 1 -1\n",
" 0 -1 0 1\n",
" 0 0 1 1\n",
" 0 0 0 2\n"
]
}
],
"prompt_number": 5
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%octave help lufac"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"`lufac' is a function from the file /home/matthew/workspace/resources/N/Numerical Methods/BEARDAHCC/work/na/lufac.m\n",
"\n",
" LUFAC LU factorisations.\n",
"\n",
" Example: a=[12 2 3;2 5 1;3 1 1]\n",
" [l,u]=lufac(a,1);\n",
" [l,u]=lufac(a,3);\n",
"\n",
" [L,U]=LUFAC(A,METHOD,D) returns the LU factors of the\n",
" square matrix A in matrices L and U.\n",
" METHOD=1 uses Doolittle's factorisation (diagonals of L=1).\n",
" METHOD=2 uses Crout's factorisation (diagonals of U=1).\n",
" METHOD=3 uses Cholesky's factorisation. (Matrix A must be\n",
" symmetric positive definite.)\n",
"\n",
" D (optional) specifies the diagonal elements of the matrix\n",
" L (METHOD=1) or U (METHOD=2).\n",
"\n",
" Example: a=[1 2 4;2 -1 1;3 0 -1]\n",
" d=[1 2 3]\n",
" [l,u]=lufac(a,1,d);\n",
" [l,u]=lufac(a,2,d);\n",
"\n",
" Christian C. Beardah 1994\n",
"\n",
"Additional help for built-in functions and operators is\n",
"available in the on-line version of the manual. Use the command\n",
"`doc <topic>' to search the manual index.\n",
"\n",
"Help and information about Octave is also available on the WWW\n",
"at http://www.octave.org and via the [email protected]\n",
"mailing list."
]
}
],
"prompt_number": 6
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"A = [-2 1 1 -1;-4 1 2 -1;-6 1 4 0;2 -1 1 5];\n",
"b = [1 1 1 1]';\n",
"[L,U] = lufac(A, 1)\n",
"y = L\\b\n",
"x = U\\y"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"L =\n",
"\n",
" 1 0 0 0\n",
" 2 1 0 0\n",
" 3 2 1 0\n",
" -1 -0 2 1\n",
"\n",
"U =\n",
"\n",
" -2 1 1 -1\n",
" 0 -1 0 1\n",
" 0 0 1 1\n",
" 0 0 0 2\n",
"\n",
"y =\n",
"\n",
" 1\n",
" -1\n",
" 0\n",
" 2\n",
"\n",
"x =\n",
"\n",
" -0.50000\n",
" 2.00000\n",
" -1.00000\n",
" 1.00000\n"
]
}
],
"prompt_number": 7
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Week 16"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Week 17"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"newton('newtp5',1,30,1e-3,2,0);"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"i= 0 p_i= 1.00000 f(p_i)= 144.00000\n",
"i= 1 p_i= -0.09091 f(p_i)= 69.48616\n",
"i= 2 p_i= -165.99875 f(p_i)= -133690914784.86263\n",
"i= 3 p_i= -132.41222 f(p_i)= -43805173332.59692\n",
"i= 4 p_i= -105.54626 f(p_i)= -14352720936.39162\n",
"i= 5 p_i= -84.05756 f(p_i)= -4702408318.80671\n",
"i= 6 p_i= -66.87164 f(p_i)= -1540533854.57490\n",
"i= 7 p_i= -53.12917 f(p_i)= -504623928.00724\n",
"i= 8 p_i= -42.14293 f(p_i)= -165264972.95593\n",
"i= 9 p_i= -33.36351 f(p_i)= -54108499.96578\n",
"i= 10 p_i= -26.35174 f(p_i)= -17707369.37320\n",
"i= 11 p_i= -20.75676 f(p_i)= -5790872.57505\n",
"i= 12 p_i= -16.29839 f(p_i)= -1891825.80747\n",
"i= 13 p_i= -12.75308 f(p_i)= -617068.38919\n",
"i= 14 p_i= -9.94264 f(p_i)= -200792.65999\n",
"i= 15 p_i= -7.72528 f(p_i)= -65098.88986\n",
"i= 16 p_i= -5.98851 f(p_i)= -20984.17174\n",
"i= 17 p_i= -4.64375 f(p_i)= -6698.62019\n",
"i= 18 p_i= -3.62275 f(p_i)= -2099.42838\n",
"i= 19 p_i= -2.87611 f(p_i)= -631.86863\n",
"i= 20 p_i= -2.37360 f(p_i)= -171.30304\n",
"i= 21 p_i= -2.09846 f(p_i)= -34.36219\n",
"i= 22 p_i= -2.00905 f(p_i)= -2.87678\n",
"i= 23 p_i= -2.00009 f(p_i)= -0.02685\n",
"i= 24 p_i= -2.00000 f(p_i)= -0.00000\n",
"\n",
"Converged"
]
}
],
"prompt_number": 8
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"type newtp5"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"newtp5 is the user-defined function defined from: /home/matthew/workspace/resources/N/Numerical Methods/BEARDAHCC/work/fnm1/newtp5.m\n",
"\n",
"function [y,dydx]=newtp5(x)\n",
"\n",
"y=x.^5 - 10*x.^4 + 12*x.^3 + 60*x.^2 + 11*x + 70;\n",
"dydx=5*x.^4 - 40*x.^3 + 36*x.^2 + 120*x + 11;\n"
]
}
],
"prompt_number": 9
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"newton('newtq4',2+2i,30,1e-3,2,0);"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"i= 1 real(p_i)= 2.00000 imag(p_i)= 2.00000 mod(f(p_i))= 26.83282\n",
"i= 2 real(p_i)= 1.94706 imag(p_i)= 1.48824 mod(f(p_i))= 7.67789\n",
"i= 3 real(p_i)= 1.95003 imag(p_i)= 1.17388 mod(f(p_i))= 1.90468\n",
"i= 4 real(p_i)= 1.97882 imag(p_i)= 1.03021 mod(f(p_i))= 0.31722\n",
"i= 5 real(p_i)= 1.99805 imag(p_i)= 1.00049 mod(f(p_i))= 0.01657\n",
"i= 6 real(p_i)= 2.00000 imag(p_i)= 0.99999 mod(f(p_i))= 0.00005\n",
"\n",
"Converged"
]
}
],
"prompt_number": 10
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"A7 = [3 0 1;0 -3 -0;1 0 3]\n",
"i = 0\n",
"x = [1;1;1;]\n",
"i = i + 1, x = A7*x"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"A7 =\n",
"\n",
" 3 0 1\n",
" 0 -3 -0\n",
" 1 0 3\n",
"\n",
"i = 0\n",
"x =\n",
"\n",
" 1\n",
" 1\n",
" 1\n",
"\n",
"i = 1\n",
"x =\n",
"\n",
" 4\n",
" -3\n",
" 4\n"
]
}
],
"prompt_number": 11
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"i = i + 1, x = A7*x\n",
"i = i + 1, x = A7*x\n",
"i = i + 1, x = A7*x\n",
"i = i + 1, x = A7*x\n"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"i = 2\n",
"x =\n",
"\n",
" 16\n",
" 9\n",
" 16\n",
"\n",
"i = 3\n",
"x =\n",
"\n",
" 64\n",
" -27\n",
" 64\n",
"\n",
"i = 4\n",
"x =\n",
"\n",
" 256\n",
" 81\n",
" 256\n",
"\n",
"i = 5\n",
"x =\n",
"\n",
" 1024\n",
" -243\n",
" 1024\n"
]
}
],
"prompt_number": 12
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"A7 = [3 0 1;0 -3 -0;1 0 3]\n",
"i = 0\n",
"x = [1;1;1;]\n",
"i = i + 1, y = A7*x, [z,j]=max(abs(y)), delta=y(j), x=y/delta"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"A7 =\n",
"\n",
" 3 0 1\n",
" 0 -3 -0\n",
" 1 0 3\n",
"\n",
"i = 0\n",
"x =\n",
"\n",
" 1\n",
" 1\n",
" 1\n",
"\n",
"i = 1\n",
"y =\n",
"\n",
" 4\n",
" -3\n",
" 4\n",
"\n",
"z = 4\n",
"j = 1\n",
"delta = 4\n",
"x =\n",
"\n",
" 1.00000\n",
" -0.75000\n",
" 1.00000\n"
]
}
],
"prompt_number": 13
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"i = i + 1, y = A7*x, [z,j]=max(abs(y)), delta=y(j), x=y/delta\n",
"i = i + 1, y = A7*x, [z,j]=max(abs(y)), delta=y(j), x=y/delta"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"i = 2\n",
"y =\n",
"\n",
" 4.00000\n",
" 2.25000\n",
" 4.00000\n",
"\n",
"z = 4\n",
"j = 1\n",
"delta = 4\n",
"x =\n",
"\n",
" 1.00000\n",
" 0.56250\n",
" 1.00000\n",
"\n",
"i = 3\n",
"y =\n",
"\n",
" 4.00000\n",
" -1.68750\n",
" 4.00000\n",
"\n",
"z = 4\n",
"j = 1\n",
"delta = 4\n",
"x =\n",
"\n",
" 1.00000\n",
" -0.42188\n",
" 1.00000\n"
]
}
],
"prompt_number": 14
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"load matrices\n",
"x0 = rand(3,1)\n",
"[delta,x,n]=scalepm(M3, x0, 200, 0.001);"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"x0 =\n",
"\n",
" 0.12787\n",
" 0.28723\n",
" 0.26850\n"
]
}
],
"prompt_number": 15
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"eig(M3)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"ans =\n",
"\n",
" 3.99576 - 0.26780i\n",
" 4.02022 + 2.48393i\n",
" -5.01598 - 0.21613i\n"
]
}
],
"prompt_number": 16
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Week 18"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 4.8 The inverse power method"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"A7 = [3 0 1;0 -3 0;1 0 3]"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"A7 =\n",
"\n",
" 3 0 1\n",
" 0 -3 0\n",
" 1 0 3\n"
]
}
],
"prompt_number": 17
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"B = inv(A7)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"B =\n",
"\n",
" 0.37500 0.00000 -0.12500\n",
" 0.00000 -0.33333 0.00000\n",
" -0.12500 0.00000 0.37500\n"
]
}
],
"prompt_number": 18
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"i = 0\n",
"x = [0;1;2]\n",
"i=i+1, y=B*x, [z,j]=max(abs(y)), delta=y(j), x=y/delta"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"i = 0\n",
"x =\n",
"\n",
" 0\n",
" 1\n",
" 2\n",
"\n",
"i = 1\n",
"y =\n",
"\n",
" -0.25000\n",
" -0.33333\n",
" 0.75000\n",
"\n",
"z = 0.75000\n",
"j = 3\n",
"delta = 0.75000\n",
"x =\n",
"\n",
" -0.33333\n",
" -0.44444\n",
" 1.00000\n"
]
}
],
"prompt_number": 19
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"i=i+1, y=B*x, [z,j]=max(abs(y)), delta=y(j), x=y/delta"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"i = 2\n",
"y =\n",
"\n",
" -0.25000\n",
" 0.14815\n",
" 0.41667\n",
"\n",
"z = 0.41667\n",
"j = 3\n",
"delta = 0.41667\n",
"x =\n",
"\n",
" -0.60000\n",
" 0.35556\n",
" 1.00000\n"
]
}
],
"prompt_number": 20
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"i=i+1, y=B*x, [z,j]=max(abs(y)), delta=y(j), x=y/delta"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"i = 3\n",
"y =\n",
"\n",
" -0.35000\n",
" -0.11852\n",
" 0.45000\n",
"\n",
"z = 0.45000\n",
"j = 3\n",
"delta = 0.45000\n",
"x =\n",
"\n",
" -0.77778\n",
" -0.26337\n",
" 1.00000\n"
]
}
],
"prompt_number": 21
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"i=i+1, y=B*x, [z,j]=max(abs(y)), delta=y(j), x=y/delta"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"i = 4\n",
"y =\n",
"\n",
" -0.41667\n",
" 0.08779\n",
" 0.47222\n",
"\n",
"z = 0.47222\n",
"j = 3\n",
"delta = 0.47222\n",
"x =\n",
"\n",
" -0.88235\n",
" 0.18591\n",
" 1.00000\n"
]
}
],
"prompt_number": 22
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"i=i+1, y=B*x, [z,j]=max(abs(y)), delta=y(j), x=y/delta"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"i = 5\n",
"y =\n",
"\n",
" -0.45588\n",
" -0.06197\n",
" 0.48529\n",
"\n",
"z = 0.48529\n",
"j = 3\n",
"delta = 0.48529\n",
"x =\n",
"\n",
" -0.93939\n",
" -0.12770\n",
" 1.00000\n"
]
}
],
"prompt_number": 23
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"i=i+1, y=B*x, [z,j]=max(abs(y)), delta=y(j), x=y/delta"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"i = 6\n",
"y =\n",
"\n",
" -0.47727\n",
" 0.04257\n",
" 0.49242\n",
"\n",
"z = 0.49242\n",
"j = 3\n",
"delta = 0.49242\n",
"x =\n",
"\n",
" -0.96923\n",
" 0.08644\n",
" 1.00000\n"
]
}
],
"prompt_number": 24
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 4.8.1 The inverse power method in MATLAB"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"A7 = [3 0 1;0 -3 0;1 0 3]\n",
"i = 0\n",
"x = [0;1;2]\n",
"i=i+1; y=A7\\x, [z,j]=max(abs(y)), delta=y(j), x=y/delta"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"A7 =\n",
"\n",
" 3 0 1\n",
" 0 -3 0\n",
" 1 0 3\n",
"\n",
"i = 0\n",
"x =\n",
"\n",
" 0\n",
" 1\n",
" 2\n",
"\n",
"y =\n",
"\n",
" -0.25000\n",
" -0.33333\n",
" 0.75000\n",
"\n",
"z = 0.75000\n",
"j = 3\n",
"delta = 0.75000\n",
"x =\n",
"\n",
" -0.33333\n",
" -0.44444\n",
" 1.00000\n"
]
}
],
"prompt_number": 25
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"i=i+1; y=A7\\x, [z,j]=max(abs(y)), delta=y(j), x=y/delta"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"y =\n",
"\n",
" -0.25000\n",
" 0.14815\n",
" 0.41667\n",
"\n",
"z = 0.41667\n",
"j = 3\n",
"delta = 0.41667\n",
"x =\n",
"\n",
" -0.60000\n",
" 0.35556\n",
" 1.00000\n"
]
}
],
"prompt_number": 26
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"i=i+1; y=A7\\x, [z,j]=max(abs(y)), delta=y(j), x=y/delta"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"y =\n",
"\n",
" -0.35000\n",
" -0.11852\n",
" 0.45000\n",
"\n",
"z = 0.45000\n",
"j = 3\n",
"delta = 0.45000\n",
"x =\n",
"\n",
" -0.77778\n",
" -0.26337\n",
" 1.00000\n"
]
}
],
"prompt_number": 27
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"i=i+1; y=A7\\x, [z,j]=max(abs(y)), delta=y(j), x=y/delta"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"y =\n",
"\n",
" -0.41667\n",
" 0.08779\n",
" 0.47222\n",
"\n",
"z = 0.47222\n",
"j = 3\n",
"delta = 0.47222\n",
"x =\n",
"\n",
" -0.88235\n",
" 0.18591\n",
" 1.00000\n"
]
}
],
"prompt_number": 28
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"i=i+1; y=A7\\x, [z,j]=max(abs(y)), delta=y(j), x=y/delta"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"y =\n",
"\n",
" -0.45588\n",
" -0.06197\n",
" 0.48529\n",
"\n",
"z = 0.48529\n",
"j = 3\n",
"delta = 0.48529\n",
"x =\n",
"\n",
" -0.93939\n",
" -0.12770\n",
" 1.00000\n"
]
}
],
"prompt_number": 29
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"i=i+1; y=A7\\x, [z,j]=max(abs(y)), delta=y(j), x=y/delta"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"y =\n",
"\n",
" -0.47727\n",
" 0.04257\n",
" 0.49242\n",
"\n",
"z = 0.49242\n",
"j = 3\n",
"delta = 0.49242\n",
"x =\n",
"\n",
" -0.96923\n",
" 0.08644\n",
" 1.00000\n"
]
}
],
"prompt_number": 30
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"i=i+1; y=A7\\x, [z,j]=max(abs(y)), delta=y(j), x=y/delta"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"y =\n",
"\n",
" -0.48846\n",
" -0.02881\n",
" 0.49615\n",
"\n",
"z = 0.49615\n",
"j = 3\n",
"delta = 0.49615\n",
"x =\n",
"\n",
" -0.98450\n",
" -0.05807\n",
" 1.00000\n"
]
}
],
"prompt_number": 31
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"i=i+1; y=A7\\x, [z,j]=max(abs(y)), delta=y(j), x=y/delta"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"y =\n",
"\n",
" -0.49419\n",
" 0.01936\n",
" 0.49806\n",
"\n",
"z = 0.49806\n",
"j = 3\n",
"delta = 0.49806\n",
"x =\n",
"\n",
" -0.99222\n",
" 0.03887\n",
" 1.00000\n"
]
}
],
"prompt_number": 32
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"i=i+1; y=A7\\x, [z,j]=max(abs(y)), delta=y(j), x=y/delta"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"y =\n",
"\n",
" -0.49708\n",
" -0.01296\n",
" 0.49903\n",
"\n",
"z = 0.49903\n",
"j = 3\n",
"delta = 0.49903\n",
"x =\n",
"\n",
" -0.99610\n",
" -0.02596\n",
" 1.00000\n"
]
}
],
"prompt_number": 33
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"A7 =[3 0 1;0 -3 0;1 0 3]\n",
"[L,U]=lufac(A7,1)\n",
"i=0\n",
"x=[0;1;2]\n",
"i=i+1; y=U\\(L\\x), [z,j]=max(abs(y)), delta=y(j), x=y/delta"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"A7 =\n",
"\n",
" 3 0 1\n",
" 0 -3 0\n",
" 1 0 3\n",
"\n",
"L =\n",
"\n",
" 1.00000 0.00000 0.00000\n",
" 0.00000 1.00000 0.00000\n",
" 0.33333 -0.00000 1.00000\n",
"\n",
"U =\n",
"\n",
" 3.00000 0.00000 1.00000\n",
" 0.00000 -3.00000 0.00000\n",
" 0.00000 0.00000 2.66667\n",
"\n",
"i = 0\n",
"x =\n",
"\n",
" 0\n",
" 1\n",
" 2\n",
"\n",
"y =\n",
"\n",
" -0.25000\n",
" -0.33333\n",
" 0.75000\n",
"\n",
"z = 0.75000\n",
"j = 3\n",
"delta = 0.75000\n",
"x =\n",
"\n",
" -0.33333\n",
" -0.44444\n",
" 1.00000\n"
]
}
],
"prompt_number": 34
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"i=i+1; y=U\\(L\\x), [z,j]=max(abs(y)), delta=y(j), x=y/delta"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"y =\n",
"\n",
" -0.25000\n",
" 0.14815\n",
" 0.41667\n",
"\n",
"z = 0.41667\n",
"j = 3\n",
"delta = 0.41667\n",
"x =\n",
"\n",
" -0.60000\n",
" 0.35556\n",
" 1.00000\n"
]
}
],
"prompt_number": 35
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"i=i+1; y=U\\(L\\x), [z,j]=max(abs(y)), delta=y(j), x=y/delta"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"y =\n",
"\n",
" -0.35000\n",
" -0.11852\n",
" 0.45000\n",
"\n",
"z = 0.45000\n",
"j = 3\n",
"delta = 0.45000\n",
"x =\n",
"\n",
" -0.77778\n",
" -0.26337\n",
" 1.00000\n"
]
}
],
"prompt_number": 36
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"i=i+1; y=U\\(L\\x), [z,j]=max(abs(y)), delta=y(j), x=y/delta"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"y =\n",
"\n",
" -0.41667\n",
" 0.08779\n",
" 0.47222\n",
"\n",
"z = 0.47222\n",
"j = 3\n",
"delta = 0.47222\n",
"x =\n",
"\n",
" -0.88235\n",
" 0.18591\n",
" 1.00000\n"
]
}
],
"prompt_number": 37
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"i=i+1; y=U\\(L\\x), [z,j]=max(abs(y)), delta=y(j), x=y/delta"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"y =\n",
"\n",
" -0.45588\n",
" -0.06197\n",
" 0.48529\n",
"\n",
"z = 0.48529\n",
"j = 3\n",
"delta = 0.48529\n",
"x =\n",
"\n",
" -0.93939\n",
" -0.12770\n",
" 1.00000\n"
]
}
],
"prompt_number": 38
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"i=i+1; y=U\\(L\\x), [z,j]=max(abs(y)), delta=y(j), x=y/delta"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"y =\n",
"\n",
" -0.47727\n",
" 0.04257\n",
" 0.49242\n",
"\n",
"z = 0.49242\n",
"j = 3\n",
"delta = 0.49242\n",
"x =\n",
"\n",
" -0.96923\n",
" 0.08644\n",
" 1.00000\n"
]
}
],
"prompt_number": 39
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"i=i+1; y=U\\(L\\x), [z,j]=max(abs(y)), delta=y(j), x=y/delta"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"y =\n",
"\n",
" -0.48846\n",
" -0.02881\n",
" 0.49615\n",
"\n",
"z = 0.49615\n",
"j = 3\n",
"delta = 0.49615\n",
"x =\n",
"\n",
" -0.98450\n",
" -0.05807\n",
" 1.00000\n"
]
}
],
"prompt_number": 40
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"i=i+1; y=U\\(L\\x), [z,j]=max(abs(y)), delta=y(j), x=y/delta"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"y =\n",
"\n",
" -0.49419\n",
" 0.01936\n",
" 0.49806\n",
"\n",
"z = 0.49806\n",
"j = 3\n",
"delta = 0.49806\n",
"x =\n",
"\n",
" -0.99222\n",
" 0.03887\n",
" 1.00000\n"
]
}
],
"prompt_number": 41
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 4.11 The shifted inverse power method"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"A = rand(3)\n",
"\n",
"sigma=1\n",
"[V,D]=eig(A)\n",
"eig(A)-sigma\n",
"[V,D]=eig(A-sigma*eye(3))"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"A =\n",
"\n",
" 0.69417 0.94318 0.01898\n",
" 0.39730 0.79071 0.68434\n",
" 0.98099 0.60097 0.95634\n",
"\n",
"sigma = 1\n",
"V =\n",
"\n",
" -0.41581 + 0.00000i 0.66714 + 0.00000i 0.66714 - 0.00000i\n",
" -0.55327 + 0.00000i -0.32183 + 0.32725i -0.32183 - 0.32725i\n",
" -0.72180 + 0.00000i -0.33813 - 0.47950i -0.33813 + 0.47950i\n",
"\n",
"D =\n",
"\n",
"Diagonal Matrix\n",
"\n",
" 1.98210 + 0.00000i 0 0\n",
" 0 0.22956 + 0.44901i 0\n",
" 0 0 0.22956 - 0.44901i\n",
"\n",
"ans =\n",
"\n",
" 0.98210 + 0.00000i\n",
" -0.77044 + 0.44901i\n",
" -0.77044 - 0.44901i\n",
"\n",
"V =\n",
"\n",
" 0.41581 + 0.00000i 0.66714 + 0.00000i 0.66714 - 0.00000i\n",
" 0.55327 + 0.00000i -0.32183 + 0.32725i -0.32183 - 0.32725i\n",
" 0.72180 + 0.00000i -0.33813 - 0.47950i -0.33813 + 0.47950i\n",
"\n",
"D =\n",
"\n",
"Diagonal Matrix\n",
"\n",
" 0.98210 + 0.00000i 0 0\n",
" 0 -0.77044 + 0.44901i 0\n",
" 0 0 -0.77044 - 0.44901i\n"
]
}
],
"prompt_number": 42
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"A7=[3 0 1;0 -3 0;1 0 3]\n",
"sigma=-2.5;\n",
"M=A7-sigma*eye(3)\n",
"i=0\n",
"x=rand(3,1)\n"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"A7 =\n",
"\n",
" 3 0 1\n",
" 0 -3 0\n",
" 1 0 3\n",
"\n",
"M =\n",
"\n",
" 5.50000 0.00000 1.00000\n",
" 0.00000 -0.50000 0.00000\n",
" 1.00000 0.00000 5.50000\n",
"\n",
"i = 0\n",
"x =\n",
"\n",
" 0.20722\n",
" 0.87005\n",
" 0.59929\n"
]
}
],
"prompt_number": 43
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"i=i+1, y=M\\x, [z,j]=max(abs(y)), delta=y(j), x=y/delta"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"i = 1\n",
"y =\n",
"\n",
" 0.01848\n",
" -1.74010\n",
" 0.10560\n",
"\n",
"z = 1.7401\n",
"j = 2\n",
"delta = -1.7401\n",
"x =\n",
"\n",
" -0.01062\n",
" 1.00000\n",
" -0.06069\n"
]
}
],
"prompt_number": 44
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"i=i+1, y=M\\x, [z,j]=max(abs(y)), delta=y(j), x=y/delta"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"i = 2\n",
"y =\n",
"\n",
" 0.00008\n",
" -2.00000\n",
" -0.01105\n",
"\n",
"z = 2\n",
"j = 2\n",
"delta = -2\n",
"x =\n",
"\n",
" -0.00004\n",
" 1.00000\n",
" 0.00552\n"
]
}
],
"prompt_number": 45
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"i=i+1, y=M\\x, [z,j]=max(abs(y)), delta=y(j), x=y/delta"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"i = 3\n",
"y =\n",
"\n",
" -0.00020\n",
" -2.00000\n",
" 0.00104\n",
"\n",
"z = 2\n",
"j = 2\n",
"delta = -2\n",
"x =\n",
"\n",
" 0.00010\n",
" 1.00000\n",
" -0.00052\n"
]
}
],
"prompt_number": 46
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"M2=[4 -1 -1 -1;-1 4 -1 -1;-1 -1 4 -1;-1 -1 -1 4]\n",
"x0=rand(4,1)\n",
"[lambda,x,n]=shiftip(M2,2.9,x0,100,1e-3);"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"M2 =\n",
"\n",
" 4 -1 -1 -1\n",
" -1 4 -1 -1\n",
" -1 -1 4 -1\n",
" -1 -1 -1 4\n",
"\n",
"x0 =\n",
"\n",
" 0.82653\n",
" 0.87984\n",
" 0.59299\n",
" 0.29283\n"
]
}
],
"prompt_number": 47
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"lambda"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"lambda =\n",
"\n",
" Columns 1 through 8:\n",
"\n",
" 0.94009 0.70146 1.15294 0.74514 1.13211 0.78379 1.11327 0.81759\n",
"\n",
" Columns 9 through 16:\n",
"\n",
" 1.09647 0.84683 1.08166 0.87192 1.06877 0.89327 1.05766 0.91133\n",
"\n",
" Columns 17 through 24:\n",
"\n",
" 1.04815 0.92652 1.04007 0.93923 1.03326 0.94984 1.02754 0.95865\n",
"\n",
" Columns 25 through 32:\n",
"\n",
" 1.02276 0.96596 1.01878 0.97200 1.01547 0.97699 1.01273 0.98111\n",
"\n",
" Columns 33 through 40:\n",
"\n",
" 1.01047 0.98449 1.00860 0.98728 1.00706 0.98957 1.00579 0.99145\n",
"\n",
" Columns 41 through 48:\n",
"\n",
" 1.00475 0.99299 1.00390 0.99426 1.00319 0.99530 1.00262 0.99615\n",
"\n",
" Columns 49 through 56:\n",
"\n",
" 1.00214 0.99684 1.00176 0.99742 1.00144 0.99788 1.00118 0.99827\n",
"\n",
" Columns 57 through 64:\n",
"\n",
" 1.00097 0.99858 1.00079 0.99884 1.00065 0.99905 1.00053 0.99922\n",
"\n",
" Columns 65 through 70:\n",
"\n",
" 1.00043 0.99936 1.00036 0.99948 1.00029 0.99957\n"
]
}
],
"prompt_number": 48
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"circle([4 0],2)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"png": "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\n"
}
],
"prompt_number": 49
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"hold on\n",
"plot(3.9958, -0.2678, 'x')"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"png": "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\n/wNwFZprxOBLcQAAAABJRU5ErkJggg==\n"
}
],
"prompt_number": 50
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%%octave\n",
"\n",
"M3 = [4 i -1;2 -5 i;1 0 4+2i]\n",
"x0=[1;1;1]\n",
"[lambda,x,n]=shiftip(M3,-5,x0,10,1e-3)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"text": [
"M3 =\n",
"\n",
" 4 + 0i 3 + 0i -1 + 0i\n",
" 2 + 0i -5 + 0i 3 + 0i\n",
" 1 + 0i 0 + 0i 4 + 2i\n",
"\n",
"x0 =\n",
"\n",
" 1\n",
" 1\n",
" 1\n",
"\n",
"lambda =\n",
"\n",
" -6.14512 + 0.10610i -5.49978 - 0.02798i -5.53065 - 0.01943i -5.52915 - 0.02000i\n",
"\n",
"x =\n",
"\n",
" Columns 1 through 4:\n",
"\n",
" 1.00000 + 0.00000i -0.46829 + 0.01463i -0.30332 - 0.00037i -0.31199 - 0.00004i\n",
" 1.00000 + 0.00000i 1.00000 - 0.00000i 1.00000 - 0.00000i 1.00000 - 0.00000i\n",
" 1.00000 + 0.00000i -0.06951 + 0.02561i 0.03562 - 0.00908i 0.03111 - 0.00645i\n",
"\n",
" Column 5:\n",
"\n",
" -0.31151 - 0.00004i\n",
" 1.00000 - 0.00000i\n",
" 0.03129 - 0.00664i\n",
"\n",
"n = 4"
]
}
],
"prompt_number": 51
}
],
"metadata": {}
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment