{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "## 5. Feladatsor\n", "\n", "\n", "\n", "
\n", "### Numerikus deriválás\n", "1.feladat. Vizsgáljuk meg a jobboldali, baloldali és középponti differenciahányados hanyad rendben közelíti $f'(x_i)$-t. Határozzuk meg a közelítés hibáját!
\n", "\n", "2.feladat. Mit approximál az
\n", "\n", "(a)\t$\\displaystyle \\frac{f(x_i+h)-2f(x_i)+f(x_i-h)}{h^2}$
\n", "(b) $\\displaystyle \\frac{f(x_i-2h)-4f(x_i-h)+6f(x_i)-4f(x_i+h)+f(x_i+2h)}{h^4}$
\n", "\t\t\n", "kifejezés? Határozzuk meg a közelítés hibáját!
\n", "\n" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "ans =\n", "\n", " 1 1 1 \n", " 1 0 -1 \n", " 1/2 0 1/2 \n", "\n", "\n", "b =\n", "\n", " 0\n", " 0\n", " 1\n", "\n", "\n", "x =\n", "\n", " 1\n", " -2\n", " 1\n" ] } ], "source": [ "A=[1 1 1; 1 0 -1; 1/2 0 1/2];rats(full(A))\n", "b=[0 0 1]'\n", "x=A\\b" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "3.feladat. Adjuk meg a középponti és centrális differenciahányados $\\epsilon$-hibával megadott függvényértékek melletti optimális $h$ lépéshossz megválasztását.
\n", "\n", "4.feladat. Egy $f$ függvény függvényértékeit tartalmazza az alábbi táblázat.\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
x11.051.11.151.21.25
f(x)11.024701.048811.072381.095441.11803
\n", "\n", "Az alábbi közelítõ kifejezések közül válasszuk ki azokat, amelyekkel lehet közelíteni $f'(1),\\ f''(1)$ és $f'''(1)$ és határozzuk meg, hogy a módszerek milyen közelítõ értéket adnak.
\n", "\n", "(a) $\\displaystyle \\frac{f(x_0+h)-f(x_0)}{h}$
\n", "(b) $\\displaystyle \\frac{f(x_0)-f(x_0-h)}{h}$
\n", "(c) $\\displaystyle \\frac{f(x_0+h)-2f(x_0)+f(x_0-h)}{h^2}$
\n", "(d) $\\displaystyle \\frac{f(x_0+2h)-2f(x_0+h)+f(x_0)}{h^2}$,
\n", "(e) $\\displaystyle \\frac{-f(x_0+h)+3f(x_0+2h)-3f(x_0+3h)+f(x_0+4h)}{h^3}$
\n", "(f) $\\displaystyle \\frac{-2f(x_0+h)-3f(x_0+2h)+2f(x_0+3h)+2f(x_0+4h)}{h^3}$
\n", "\n", "### Numerikus integrálás\n", "\n", "5.feladat. Határozzuk meg az $f(x)=x^2-2x+2$ függvény közelítõ integrálját az $x=1,\\ 2,\\ 3$ alappontokon az alábbi Newton-Cotes formulákkal:
\n", "\n", "(a) érintőformula
\n", "(b) trapézformula
\n", "(c) Simpson-formula
" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "fv =\n", "\n", " 1 2 5\n", "\n", "\n", "y =\n", "\n", " 1 2 5\n", "\n", "\n", "ans =\n", "\n", " 4\n" ] } ], "source": [ "format long\n", "a=1;\n", "b=3;\n", "n=1;\n", "h=(b-a)/n;\n", "% Érintő formula 5. feladatra\n", "x=[a:h/2:b];\n", "fv=x.^2-2*x+2\n", "y=eval('fv')\n", "((b-a)/n)*sum(y(2:2:2*n))\n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Beadható feladat MATLAB-ban programozni a trapéz szabályt." ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "fv =\n", "\n", " 1 2 5\n", "\n", "\n", "ans =\n", "\n", " 4.666666666666666\n" ] } ], "source": [ "format long\n", "a=1;\n", "b=3;\n", "n=2;\n", "h=(b-a)/n;\n", "% Simpson formula 5. feladatra\n", "%Fontos, hogy n páros és n/2 részintervallumra alkalmazzuk\n", "x=[a:h:b];\n", "fv=x.^2-2*x+2\n", "y=eval('fv');\n", "((b-a)/(3*n))*(y(1)+4*sum(y(2:2:n))+2*sum(y(3:2:n-1))+y(n+1))\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "\n", "6.feladat. Számítsuk ki az\n", "$$\\displaystyle\\int_0^1 x^2\\mathrm{dx}$$\n", "értékét érintõ- és trapézformulával. Mekkora a hiba? Számoljuk ki ugyanezt összetett érintõ- és trapézszabállyal is. Hány részintervallum kell ahhoz, hogy a hiba kisebb legyen, mint $0.0001$?
\n", "\n", "7.feladat. Az\n", "$$\\displaystyle\\int_{-1}^1 \\frac{1}{2+x}\\mathrm{dx}$$\n", "integrált érintõszabállyal közelítjük. Hány intervallumot kell megadnunk ahhoz, hogy az integrált $0.01$-nél kisebb hibával közelítsük?
\n", "\n", "8.feladat. Számoljuk ki az\n", "$$\\displaystyle\\int_{0}^1 \\frac{1}{1+x^2}\\mathrm{dx}$$\n", "integrál értékét a $[0,1]$ intervallum három részre való felosztásával trapézszabállyal. Mekkora a hiba? Hány intervallum kell ahhoz, hogy $0.00001$ pontossággal megkaphassuk a pontos értékét?
\n", "\n", "9.feladat. Adjuk meg az\n", "$$\\displaystyle\\int_{0}^2 \\frac{1}{(1+x)^2}\\mathrm{dx}$$\n", "integrál közelítését Simpson-formulával. Hány részre kell felosztani a $[0,2]$ intervallumot, hogy az összetett Simpson-formula legfeljebb $0.001$ hibával közelítse az integrál értékét?
\n", "\n", "10.feladat. Hányadfokú polinomokra pontos az alábbi kvadratúraformula?\n", "$$\\displaystyle\\int_{-1}^1 f(x)\\mathrm{dx}\\approx f\\Big(\\frac{-\\sqrt{3}}{3}\\Big)+f\\Big(\\frac{\\sqrt{3}}{3}\\Big)$$" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Matlab", "language": "matlab", "name": "matlab" }, "language_info": { "codemirror_mode": "octave", "file_extension": ".m", "help_links": [ { "text": "MetaKernel Magics", "url": "https://github.com/calysto/metakernel/blob/master/metakernel/magics/README.md" } ], "mimetype": "text/x-octave", "name": "matlab", "version": "0.11.0" } }, "nbformat": 4, "nbformat_minor": 0 }