RepozytoriumzprojektemPython/stopy/Ćwiczenia_8.ipynb

437 lines
13 KiB
Plaintext
Raw Normal View History

2024-11-27 08:28:07 +01:00
{
"cells": [
{
"cell_type": "markdown",
"id": "4cc6c96f",
"metadata": {},
"source": [
"# Ćwiczenia 8"
]
},
{
"cell_type": "markdown",
"id": "1276423e",
"metadata": {},
"source": [
"***TEMAT:*** funkcje wielu zmiennych - pochodna, różniczki i wzór Taylora"
]
},
{
"cell_type": "markdown",
"id": "8469f948-9849-4527-981c-1217b18027a4",
"metadata": {},
"source": [
"## Pochodna funkcji wielu zmiennych"
]
},
{
"cell_type": "markdown",
"id": "7e1cf07c-1f4c-4e6a-a530-b148dba79441",
"metadata": {},
"source": [
"### Odwzorowania liniowe a macierze"
]
},
{
"cell_type": "markdown",
"id": "9ab3b1eb-3d22-450e-9912-a37f70c64a57",
"metadata": {},
"source": [
"Z algebry liniowej wiadomo, że dla każdego odwzorowania liniowego \n",
"$$\n",
"A:\\mathbb{R}^n\\to\\mathbb{R}^m\n",
"$$\n",
"istnieje macierz $M$ wymiaru $m\\times n$\n",
"taka, że dla każdego $(x_1,x_2,\\ldots, x_n)$\n",
"mamy\n",
"$$\n",
"A(x_1,x_2,\\ldots, x_n)=M\\cdot (x_1,x_2,\\ldots, x_n)^T. \n",
"$$\n",
"__UWAGA:__ Niech wektory $e_i$ tworzą bazę standardową przestrzeni $\\mathbb{R}^n$. Wtedy $i$-ta kolumna macierzy M jest równa wektorowi $Ae_i$. "
]
},
{
"cell_type": "markdown",
"id": "51a415b0-0480-43ff-9502-352f43d7a4a6",
"metadata": {},
"source": [
"#### Zadanie 1\n",
"Wyznacz macierz poniższych odwzorowań liniowych.\n",
"1. $A(x,y)=(2x+3y,2x-3y,x)$;\n",
"2. $A(x,y,z)=(x+y,z)$;\n",
"3. $A(x,y)=2x+y$."
]
},
{
"cell_type": "markdown",
"id": "57d0b29c-d2b6-41de-a042-ef22b30dc2df",
"metadata": {},
"source": [
"##### Rozwiązanie:\n",
"1. $M=\\begin{bmatrix}\n",
"2 & 3 \\\\\n",
"2 & -3 \\\\\n",
"1 & 0 \n",
"\\end{bmatrix} $\n",
"2. $M=\\begin{bmatrix}\n",
"1 & 1 & 0 \\\\\n",
"0 & 0 & 1\n",
"\\end{bmatrix} $\n",
"3. $M=\\begin{bmatrix}\n",
"2 & 1 \\\\\n",
"\\end{bmatrix} $"
]
},
{
"cell_type": "markdown",
"id": "45ebb0f7-c623-4c8a-b97d-4d12f9ceebb2",
"metadata": {},
"source": [
"### Pochodna funkcji o wartościach w $\\mathbb{R}$"
]
},
{
"cell_type": "markdown",
"id": "b76d65cf-584d-4db1-ae38-ea4f8c4e1502",
"metadata": {},
"source": [
"__Definicja__ \n",
"\n",
"Niech $U$ będzie otwartym podzbiorem $\\mathbb{R}^n$, niech $f:U\\to\\mathbb{R}$ i niech $(x_1,\\ldots,x_n)\\in U$.\n",
"Mówimy, że funkcja jest __różniczkowalna w punkcie $(x_1,\\ldots,x_n)$__, jeżeli istnieje przekształcenie liniowe $A:\\mathbb{R}^{n}\\rightarrow \\mathbb{R}$ takie, że:\n",
"\n",
"$$\n",
"\\lim\\limits_{(h_1,\\ldots, h_n)\\to (0,\\ldots,0)} \\frac{f(x_1+h_1,\\ldots,x_n+h_n) - f(x_1,\\ldots, x_n) - A(h_1,\\ldots, h_n)}{\\|(h_1,\\ldots, h_n)\\|}=0,\n",
"$$\n",
"\n",
"gdzie\n",
"\n",
"$$ \n",
"\\|(h_1,\\ldots, h_n)\\|=\\sqrt{h_1^2+h_2^2+...+h_n^2}.\n",
"$$\n",
"\n",
"Odwzorowanie $A$ (o ile istnieje) oznaczamy symbolem $f'(x_1,\\ldots,x_n)$."
]
},
{
"cell_type": "markdown",
"id": "e9d49884-37a6-4a98-9959-da92c6c347eb",
"metadata": {},
"source": [
"__UWAGA:__ Można pokazać, że jeśli $f$ ma pochodną w punkcie $(x_1,\\ldots,x_n)$, to\n",
"$$ \n",
"f'(x_1,\\ldots,x_n)(h_1,\\ldots, h_n)=\\sum_{i=1}^n \\frac{\\partial f}{\\partial x_i}(x_1,\\ldots,x_n)\\cdot h_i.\n",
"$$\n",
"__UWAGA:__ o warunkach dostatecznych na różniczkowalność można przeczytać w materiałach do wykładu (lub podręcznikach). Warto zapamiętać, że\n",
"samo istnienie pochodnych cząstkowych nie implikuje różniczkowalności!!! Ale istnienie ciągłych pochodnych cząstkowych już daje różniczkowalność!!!"
]
},
{
"cell_type": "markdown",
"id": "a80cb736-4a21-46fb-9189-894c19afecf6",
"metadata": {},
"source": [
"### Zadanie 2\n",
"Niech \n",
"$$f(x,y)=x^2+3xy+y.$$\n",
"Pokażemy, że funkcja $f$ jest różniczkowalna w dowolnym punkcie i wyznaczymy jej pochodną."
]
},
{
"cell_type": "markdown",
"id": "82fb71af-e330-4ef0-b72b-e877d7fee581",
"metadata": {},
"source": [
"##### Rozwiązanie:\n",
"Z informacji powyżej wynika, że naturalnym kandydatem na pochodną jest odwzorowanie liniowe dane wzorem: \n",
"$$\n",
"f'(x,y)(h_1,h_2)=(2x+3y)h_1+(3x+1)h_2.\n",
"$$\n",
"Aby pokazać, że tak jest musimy sprawdzić z definicji czy rzeczywiście jest to pochodna.\n",
"Mamy\n",
"\n",
"$$\n",
"\\frac{f(x+h_1,y+h_2)-f(x,y)-f'(x,y)(h_1,h_2)}{\\sqrt{h_1^2+h_2^2}}=\\frac{(x+h_1)^2 +3(x+h_1)(y+h_2) +(y+h_2)-x^2-3xy-y-(2x+3y)h_1-(3x+1)h_2}{\\sqrt{h_1^2+h_2^2}}=\\frac{h_1^2+h_1h_2}{\\sqrt{h_1^2+h_2^2}}.\n",
"$$"
]
},
{
"cell_type": "markdown",
"id": "2915356e-114f-4eb4-ace4-dcd552e0914b",
"metadata": {},
"source": [
"Ponieważ\n",
"$$\n",
"\\left|\\frac{h_1^2+h_1h_2}{\\sqrt{h_1^2+h_2^2}}\\right|\\leq |h_1|\\frac{|h_1|}{\\sqrt{h_1^2+h_2^2}}+|h_1|\\frac{|h_2|}{\\sqrt{h_1^2+h_2^2}}\\leq 2|h_1|,\n",
"$$\n",
"to\n",
"$$\n",
"\\lim_{(h_1,h_2)\\to (0,0)}\\frac{f(x+h_1,y+h_2)-f(x,y)-f'(x,y)(h_1,h_2)}{\\sqrt{h_1^2+h_2^2}}=0.\n",
"$$"
]
},
{
"cell_type": "markdown",
"id": "16f2c8ea-f17d-4e61-8292-f6a017c87373",
"metadata": {},
"source": [
"### Pochodna funkcji o wartościach w $\\mathbb{R}^m$"
]
},
{
"cell_type": "markdown",
"id": "a225da3b-9c40-44fd-82a8-332c44e1022c",
"metadata": {},
"source": [
"__Definicja__ \n",
"\n",
"Niech $U$ będzie otwartym podzbiorem $\\mathbb{R}^n$, niech $f:U\\to\\mathbb{R}^m$ i niech $(x_1,\\ldots,x_n)\\in U$.\n",
"Mówimy, że funkcja jest __różniczkowalna w punkcie $(x_1,\\ldots,x_n)$__, jeżeli istnieje przekształcenie liniowe $A:\\mathbb{R}^{n}\\rightarrow \\mathbb{R}^m$ takie, że:\n",
"\n",
"$$\n",
"\\lim\\limits_{(h_1,\\ldots, h_n)\\to (0,\\ldots,0)} \\frac{\\|f(x_1+h_1,\\ldots,x_n+h_n) - f(x_1,\\ldots, x_n) - A(h_1,\\ldots, h_n)\\|_{\\mathbb{R}^m}}{\\|(h_1,\\ldots, h_n)\\|_{\\mathbb{R}^n}}=0,\n",
"$$\n",
"\n",
"gdzie\n",
"\n",
"$$ \n",
"\\|(h_1,\\ldots, h_n)\\|_{\\mathbb{R}^n}=\\sqrt{h_1^2+h_2^2+...+h_n^2}.\n",
"$$\n",
"\n",
"Odwzorowanie $A$ (o ile istnieje) oznaczamy symbolem $f'(x_1,\\ldots,x_n)$."
]
},
{
"cell_type": "markdown",
"id": "e58addbb-8221-4412-b97a-70585c6b77e5",
"metadata": {},
"source": [
"__UWAGA:__ jeśli $f$ jest takie jak wyżej, to $f=(f_1,\\ldots,f_m)$, gdzie $f_i:U\\to\\mathbb{R}$ dla $1\\leq i \\leq m$. Okazuje się, że funkcja $f$ ma pochodną w jakimś punkcie wtedy i tylko wtedy, gdy każda jej składowa ma pochodną w tym punkcie. Ponadto\n",
"$$f'=(f'_1,\\ldots,f'_m).$$"
]
},
{
"cell_type": "markdown",
"id": "b29318c9-2ab9-4248-9c3b-1952fd378dd0",
"metadata": {},
"source": [
"#### Zadanie 3\n",
"Wyznaczymy pochodną funkcji $f(x,y)=(x^2+y,x+y^2, x+y).$"
]
},
{
"cell_type": "markdown",
"id": "6a1238a8-331b-4352-8792-8fa4d3c6bb69",
"metadata": {},
"source": [
"##### Rozwiązanie:\n",
"Niech $f_1,f_2,f_3$ będą składowymi funkcji $f$.\n",
"Mamy\n",
"$$\n",
"f'_1(x,y)(h_1,h_2)=2xh_1 +h_2, \\quad f'_2(x,y)(h_1,h_2)=h_1+2yh_2, \\quad f'_3(x,y)(h_1,h_2)=h_1+h_2.\n",
"$$\n",
"Zatem \n",
"\n",
"$$\n",
"f'(x,y)(h_1,h_2)=(2xh_1 +h_2,h_1+2yh_2,h_1+h_2).\n",
"$$"
]
},
{
"cell_type": "markdown",
"id": "70674154-bcfa-4aea-963c-348207b1ec0a",
"metadata": {},
"source": [
"### Macierz Jacobiego i jakobian"
]
},
{
"cell_type": "markdown",
"id": "27f88995-46ff-482e-9057-abeeabdccb64",
"metadata": {},
"source": [
"__Definicja__\n",
"\n",
"Niech $U$ będzie otwartym podzbiorem $\\mathbb{R}^n$, niech $f:U\\to\\mathbb{R}^m$ i niech $(x_1,\\ldots,x_n)\\in U$.\n",
"Jeśli funkcja $f$ ma pochodną w punkcie $(x_1,\\ldots,x_n)$, to $f'(x_1,\\ldots,x_n)$ jest odwzorowaniem liniowym.\n",
"Jego macierz nazywamy macierzą Jacobiego funkcji $f$. W przypadk, gdy $n=m$ macierz ta jest kwadratowa, można zatem policzyć jej wyznacznik - nazywamy go jakobianem."
]
},
{
"cell_type": "markdown",
"id": "be402e14-067e-462d-9035-eb1caf0139ce",
"metadata": {},
"source": [
"#### Zadanie 4\n",
"Wyznacz macierz Jacobiego i jakobian dla funkcji\n",
"\n",
"$$f(r,\\alpha,z)=(r\\cos\\alpha,r\\sin \\alpha,z)$$"
]
},
{
"cell_type": "markdown",
"id": "44095ce6-b2da-4d7b-8f48-b48bddd098a7",
"metadata": {},
"source": [
"##### Rozwiązanie:\n",
"\n",
"Mamy \n",
"\n",
"$$ \n",
"f'(r,\\alpha,z)(h_1,h_2,h_3)=(h_1\\cos\\alpha -h_2 r\\sin\\alpha, h_1\\sin\\alpha+h_2r\\cos\\alpha, h_3)\n",
"$$"
]
},
{
"cell_type": "markdown",
"id": "1ec3be96-35b6-4b8a-bd80-c807a19fba3d",
"metadata": {},
"source": [
"Macierzą tego odwzorowania jest macierz:\n",
"\n",
"$$\n",
"\\begin{bmatrix}\n",
"\\cos\\alpha &-r\\sin\\alpha & 0\\\\\n",
"\\sin\\alpha & r\\cos\\alpha & 0\\\\\n",
"0 & 0 & 1\n",
"\\end{bmatrix}\n",
"$$\n",
"Jej wyznacznik jest równy \n",
"$$r.$$"
]
},
{
"cell_type": "markdown",
"id": "e93f7478-4c0e-4b5c-82ba-344b30d83b44",
"metadata": {},
"source": [
"## Wzór Taylora: przypadek funkcji dwóch zmiennych"
]
},
{
"cell_type": "markdown",
"id": "c09ea20a-c3a2-4539-b365-2e33ea030855",
"metadata": {},
"source": [
"Niech $U$ będzie otwartym podzbiorem $\\mathbb{R}^2$ i niech $f:U\\to\\mathbb{R}$. \n",
"Załóżmy, że funkcja $f$ ma wszystkie pochodne cząstkowe aż do rzędu $m$ włącznie.\n",
"Dla dowolnego $(x,y)\\in U$ wyrażenie\n",
"$$\n",
"d^mf(x,y)(h_1,h_2)=\\sum_{i=0}^m\\frac{m!}{i!(m-i)!}\\frac{\\partial^m f}{\\partial x^{m-i}\\partial y^{i}}(x,y)h_i^{m-i}h_2^{i}\n",
"$$\n",
"nazywamy $m$-tą różniczką funkcji $f$ w punkcie $(x,y)$."
]
},
{
"cell_type": "markdown",
"id": "63559bd2-d6c3-459f-93ae-488f5e556568",
"metadata": {},
"source": [
"#### Zadanie 5\n",
"Napisz wzór na $d^1f(x,y)(h_1,h_2)$ i $d^2f(x,y)(h_1,h_2)$."
]
},
{
"cell_type": "markdown",
"id": "e292cb77-c4d1-44cc-bc5e-1df216637b70",
"metadata": {},
"source": [
"##### Rozwiązanie:\n",
"\n",
"Mamy:\n",
"$$\n",
"d^1f(x,y)(h_1,h_2)=\\frac{\\partial f}{\\partial{x}} (x,y)h_1+\\frac{\\partial f}{\\partial{y}} (x,y)h_2\n",
"$$\n",
"oraz\n",
"$$\n",
"d^2f(x,y)(h_1,h_2)=\\frac{\\partial^2 f}{\\partial{x^2}} (x,y)h_1^2+2\\frac{\\partial^2 f}{\\partial{x}\\partial y} (x,y)h_1h_2+\\frac{\\partial^2 f}{\\partial{y^2}} (x,y)h_2^2.\n",
"$$"
]
},
{
"cell_type": "markdown",
"id": "69f6e41e-8f12-45ef-a23d-6c0c120b58f4",
"metadata": {},
"source": [
"### Twierdzenie Taylora.\n",
"\n",
"Dla dowolnych punktów $(x,y)$ oraz $(x+h_1,y+h_2)$ zbioru $ U $ takich, że odcinek je łączący jest zawarty w $U$ zachodzi równość \n",
" \n",
"$$\n",
" f(x+h_1,y+h_2) = f(x,y)+\\sum_{i=1}^{m-1}\\frac{d^if(x,y)(h_1,h_2)}{i!}+\\text{ reszta }.\n",
"$$\n",
"__UWAGA:__ Dokładna postać reszty podana została na wykładzie."
]
},
{
"cell_type": "markdown",
"id": "8a4905a2-0622-4217-a022-7920852bd022",
"metadata": {},
"source": [
"#### Przykład\n",
"\n",
"Dla funkcji $f(x,y)=x^y$\n",
"dostajemy, że \n",
"$$\n",
"d^1f(x, y)(h_1, h_2) = \\frac{\\partial f}{\\partial x}(x, y) h_1 + \\frac{\\partial f}{\\partial y}(x, y) h_2 = y x^{y-1} h_1 + x^y \\ln(x) h_2\n",
"$$\n",
"oraz\n",
"\n",
"$$\n",
"d^2f(x, y)(h_1, h_2) = \\frac{\\partial^2 f}{\\partial x^2}(x, y) h_1^2 + 2 \\frac{\\partial^2 f}{\\partial x \\partial y}(x, y) h_1 h_2 + \\frac{\\partial^2 f}{\\partial y^2}(x, y) h_2^2 = y(y-1)x^{y-2}h_1^2 + 2x^{y-1}\\ln(x)h_1h_2 + x^y (\\ln(x))^2 h_2^2.\n",
"$$ \n",
"\n",
"Stąd dla małych $h_1$ i $h_2$ mamy\n",
"\n",
"$$\n",
"f(x+h_1,y+h_2)\\approx x^y+y x^{y-1} h_1 + x^y \\ln(x) h_2+ \\frac{y(y-1)x^{y-2}h_1^2 + 2x^{y-1}(y\\ln(x)+1)h_1h_2 + x^y (\\ln(x))^2 h_2^2}{2}.\n",
"$$\n",
"\n",
"Wykorzystujące ten wzór można policzyć, że $0.95^{2.01}\\approx 0,902$.\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "8ad51b95-378b-4456-a7de-5f20fdd29275",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.9.2"
},
"toc": {
"base_numbering": 1,
"nav_menu": {},
"number_sections": false,
"sideBar": true,
"skip_h1_title": false,
"title_cell": "Table of Contents",
"title_sidebar": "Contents",
"toc_cell": false,
"toc_position": {},
"toc_section_display": true,
"toc_window_display": true
}
},
"nbformat": 4,
"nbformat_minor": 5
}