diff --git a/stopy/Ćwiczenia_6.ipynb b/stopy/Ćwiczenia_6.ipynb new file mode 100644 index 0000000..fa00c83 --- /dev/null +++ b/stopy/Ćwiczenia_6.ipynb @@ -0,0 +1,839 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "4cc6c96f", + "metadata": {}, + "source": [ + "# Ćwiczenia 6" + ] + }, + { + "cell_type": "markdown", + "id": "1276423e", + "metadata": {}, + "source": [ + "***TEMAT:*** funkcje wielu zmiennych - definicja, wykres, granica, ciągłość, pochdone cząstkowe i gradient" + ] + }, + { + "cell_type": "markdown", + "id": "a92c3fcc", + "metadata": {}, + "source": [ + "## Funkcje wielu zmiennych: definicja i wykresy niektórych funkcji" + ] + }, + { + "cell_type": "markdown", + "id": "c85e4fed-46e6-4310-9128-337d82b8c235", + "metadata": {}, + "source": [ + "Funkcją $n$-zmiennych ($n \\geq 2$) określoną na zbiorze $A\\subset\\mathbb{R}^n$ o wartościach w $\\mathbb{R}$ nazywamy przyporządkowanie każdemu punktowi ze zbioru $A$ dokładnie jednej liczby rzeczywistej. Funkcję taką oznaczamy przez $f:A\\rightarrow \\mathbb{R}$. Wartość funkcji $f$ w punkcie $(x_1, ... x_n)$ oznaczamy przez $f(x_1, ... x_n)$." + ] + }, + { + "cell_type": "markdown", + "id": "b0897f5c-381a-47df-8e6a-e20b5b665b05", + "metadata": {}, + "source": [ + "#### Zadanie 1 \n", + "\n", + "Wyznacz dziedzinę następujących funkcji i naszkicuj ją na płaszczyźnie:\n", + ">1. $f(x,y)=\\sqrt{4-(x-4)^2-(y+2)^2}$;\n", + ">2. $f(x,y)=\\ln x\\cdot \\ln y +\\frac{1}{\\sqrt{1-x-y}}$." + ] + }, + { + "cell_type": "markdown", + "id": "303dc23a-6e38-4435-b067-bfe1d99742f5", + "metadata": {}, + "source": [ + "##### Rozwiązanie:" + ] + }, + { + "cell_type": "markdown", + "id": "7ae3148c", + "metadata": {}, + "source": [ + "1. Dziedzinę funkcji $f$ tworzy zbiór tych $(x,y)$ takich, że \n", + "\n", + "$$\n", + "4-(x-4)^2-(y+2)^2\\geq 0\n", + "$$\n", + "\n", + "czyli zbiór rozwiązań nierówności\n", + "\n", + "$$\n", + "(x-4)^2+(y+2)^2\\leq 4.\n", + "$$\n", + "\n", + "Jest to kolo o środku w punkcie $(4,-2)$ i promieniu $2$." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "d9fd7f28", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAcAAAAHKCAYAAACUvpsVAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8fJSN1AAAACXBIWXMAAA9hAAAPYQGoP6dpAAAocElEQVR4nO3df3RU5Z3H8U8Iw4QAQZMcIIFAAlIDpQgEf4D8CCooUhdxly0WFZGyiEChnFWodEuwQBABPSsVBS3aogvbohVFXFJNQOUgMUSW2jUoEEASiqImQHAYkmf/sMkh5AcJzOTOnef9OmeOzjN37ny/zx3uJ8/MJBNhjDECAMAyzZwuAAAAJxCAAAArEYAAACsRgAAAKxGAAAArEYAAACsRgAAAKxGAAAArEYAAACsRgAAAKxGAAAArEYBAgPh8Pk2cOFFJSUmKiYnRDTfcoB07djhdluswj2gqBCAQIOfOnVNKSoo++OADffvtt5o6dar+6Z/+SWVlZU6X5irMI5pKBN8GAQRPbGyssrOzdc011zhdiqsxjwgGVoBw1GOPPaaePXuqoqLC6VKqef755xUREaHWrVvXuO2FF15Qx44ddfr06Xr38emnn+rMmTPq1q1bsMqsEkrz+O677+qBBx5QamqqWrVqpY4dO2r06NHKy8urtl0ozmOl+o4/wogBHHL06FHTqlUr88c//tHpUqr54osvTNu2bU1iYqJp1apVjdv9fr/p3r27+fWvf13nPk6fPm369+9vFi5cGMxSjTGhN4//8i//YoYNG2aeeeYZk5OTY/74xz+aG264wTRv3ty88847VduF2jxWutjxR/jgJVA4Zs6cOXr55Zd1+PBhNWsWOi9G3HHHHYqIiFBsbKz+9Kc/6dSpUzW2Wb58uX7zm9+oqKhI0dHR1W7z+/0aM2aM4uLi9OKLLyoiIiKo9QZ7HtPT05WcnKwXX3yxQdsfP35c7dq1qzZ26tQpXXXVVerVq5f+8pe/VI03xTxWVFRo165d2rJliyZOnKjk5OR6t2/I8Ud4CJ2zDqxy9uxZvfDCC/rpT39a7aRdXFys1q1ba9y4cdW2f/PNN+XxeDRv3ryg1rVu3Tpt27ZNzzzzTL3bjR8/XqWlpVq/fn218YqKCt13332KjIzUCy+8EPTwq2se77rrLnXq1KnG9ufOnVOfPn00fPjwoNV0YfhJUuvWrdWzZ08dOXKk2niw5vHLL7/UunXrNH78eLVr104DBgzQb3/7W507d67e+zX0+CM8EIBwxIcffqgTJ05o2LBh1cYTEhL0yCOP6L//+7+r3jPKycnR2LFjNXXqVC1atChoNR0/flyzZs3SkiVLag2P83Xo0EGpqanavHlztfEpU6aouLhYGzZsUPPmzYNWa6W65nHIkCE6evSoDh06VG18xYoV+vTTT5v8BF9SUqLdu3frhz/8YbXxQM1jRUWFPvzwQ2VkZOi6665T+/btdd9996mgoEBTp07Vjh07dPz4cV111VV17qMxxx9hwunXYGGnxx9/3Egyx44dq3Hb6dOnTWJiorn55pvNrl27TJs2bczEiRNNRUVFUGv653/+ZzNw4MCqx5kwYUK97wGNHz/etG/fvup6YWGhkWSioqJMq1atqi7bt28PWs11zWNeXp6RZF555ZWqsQMHDpjo6Gjz2GOP1bm/iooK4/f7q12GDBli7rvvvhrjjTF+/HjTvHlz89FHH9V62+XMY35+vomLizOSzBVXXGH+9V//1axdu7bW51Z9Gnv84X6sAOGIoqIiRUREKD4+vsZt0dHRWrhwod555x0NGzZMI0eO1Jo1a+p8GSwnJ0cRERENunz88ce17mPjxo1644036n2cC7Vr107Hjx+velmtS5cuMsbozJkzOnXqVNVl8ODBQau7rnns06ePYmJi9MEHH1SNTZ06VUlJSZozZ06dPW3btk0ej6faZfv27fr9739fY7ywsLBB8/Qf//Efevnll/Xkk08qLS2txu2XO4+RkZFV7x+eO3dO3333XdWloS7l+MP9gv8aDVCLM2fOyOPxKDIystbbf/CDH0iSIiIi9OKLL9a5nSRdffXVWrNmTYMet3PnzjXGTp06pWnTpmnGjBlKTEzUt99+K+n799ck6dtvv5XH41GrVq2q3S8qKkrGGH333XeX9HH5y61bqnsemzVrpoEDB1b9BZWXX35Z//M//6Ps7Gy1aNGizsdJS0tTbm5utbEpU6YoMTFR8+fPrzaemJh40boXLFighQsXatGiRZo+fXqt21zuPP7oRz/S4cOH9de//lVbtmzRW2+9pZ///Ofy+/3q2bOnRo4cqZEjR2rw4MG19n6pxx9hwNkFKGz16KOPGknm1KlTNW7Lz883V1xxhbnxxhuNJLNy5cqg1nLw4EEjqd7L6NGja9xvypQpxuv1BrW2i6lvHhcvXmwiIyPNoUOHTLt27cyECRMu6TGGDh16SffNyMgwkkxGRka92wVjHktLS82rr75qJk+ebDp16mQkmdatW5uCgoIa217q8Yf7sQKEI1JTUyVJ+/fvV+/evavGCwoKdOutt2rAgAF6/fXXNXbsWGVkZOiee+5R27Ztg1JLhw4dlJ2dXWN8yZIl2rZtm7Zs2VLrS7UHDhxQz549g1JTQ9U1j9L3H4QpLy/Xj3/8Y5WXl2vZsmVNVtdvfvMbZWRk6Fe/+lWNleOFgjGPbdq00ZgxYzRmzBhJ0t69e7VlyxZFRUXV2PZSjz/cjwCEI9LT0yVJO3furDpxFxYW6pZbbtHVV1+tjRs3yuPxaMmSJerVq5cWL16sxx9/PCi1REVFVdVzvsqXXmu7rfJ3yyZNmhSUmhqqtnmsdO2116ply5bau3evfve73zXZSXz58uX69a9/rdtuu02jRo3Szp07q91+ww03VP1/IOaxuLi4xqdIaxMbG1vrS6yXcvwRJpxegsJegwcPNrfffrsxxpiioiLTrVs3069fP1NSUlJtu8mTJxuv12sOHjzYpPXV9ynAd955x0gyeXl5TVpTbc6fx/P5/X6TmJhoBg8efFmfoG3sS6BDhw6t9+XE8wViHrOzsy/6EmblJT8/v8H75VOg4Y+/BAPHbNy4UT/5yU906NAhdezY0elyGuXee+/VgQMHqn3K0il1zeOyZcs0b948ffzxx+rRo4eDFdYtlOYR9iEA4RhjjAYOHKi0tDStXLnS6XIabP/+/erRo4feffddDRo0yOlyqs3j0qVLtWfPHuXm5urhhx/WokWL9O///u9Ol1irUJtH2IffA4RjIiIitGbNGiUmJobEtxg01OHDh7Vy5cqQOWmfP49vv/22Bg4cqMzMTD366KMhG35S6M0j7MMKEABgJdeuADMzMxUREaFZs2Y5XQoAwIVcGYC5ublavXp1jY99AwDQUK4LwFOnTmn8+PFas2aNrrzySqfLAQC4lOt+EX7atGkaNWqUbrnlFi1cuLDebX0+n3w+X9X1iooKff3114qLi+MP3gKAyxhjdPLkSSUmJgbky59dFYDr16/X7t27a/yx3rpkZmZqwYIFQa4KANCUjhw5EpDvbHRNAB45ckQzZ87U1q1ba/17frX55S9/qdmzZ1ddLykpUefOnbVv3z7FxsYGq9SQ4vf7NWrUKG3evFkej8fpcpqM3+9Xdna2hg0bRt9hzsaeJTv7/vrrr/WDH/xAbdq0Ccj+XBOAeXl5On78eLXvEysvL9f27du1cuVK+Xy+Gl8J4/V65fV6a+wrNjZWcXFxQa85FPj9fkVGRiouLs6afyTS931HR0fTtwVs7Fmyt29JAXsLyzUBePPNN2vv3r3VxiZOnKjU1FTNmTOn3u+LAwDgQq4JwDZt2qhXr17Vxlq1aqW4uLga4wAAXIzrfg0CAIBAcM0KsDY5OTlOlwAAcClWgAAAKxGAAAArEYAAACsRgAAAKxGAAAArEYAAACsRgAAAKxGAAAArEYAAACsRgAAAKxGAAAArEYAAACsRgAAAKxGAAAArEYAAACsRgAAAKxGAAAArEYAAACsRgAAAKxGAAAArEYAAACsRgAAAKxGAAAArEYAAACsRgAAAKxGAAAArEYAAACsRgAAAKxGAAAArEYAAACsRgAAAKxGAAAArEYAAACsRgAAAKxGAAAArEYAAACsRgAAAKxGAAAArEYAAACsRgAAAKxGAAAArEYAAACsRgAAAKxGAAAArEYAAACsRgAAAKxGAAAArEYAAACsRgAAAKxGAAAArEYAAACu5JgAzMzN17bXXqk2bNmrXrp3uvPNOFRQUOF0WAMClXBOA27Zt07Rp07Rz505lZWXp3LlzGjFihE6fPu10aQAAF2rudAEN9fbbb1e7vnbtWrVr1055eXkaMmSIQ1UBANzKNQF4oZKSEklSbGxsndv4fD75fL6q66WlpZIkv98vv98f3AJDRGWftvRbib7t6dvGniU7+w50rxHGGBPQPTYBY4xGjx6tb775Ru+9916d22VkZGjBggU1xl955RVFR0cHs8SQsmjRIs2bN8/pMgDgspSVlemnP/2pSkpKFBMTc9n7c2UATps2TZs3b9b777+vTp061bldbSvApKQkFRcXKy4urilKdZzf71d6erpycnLk8XicLqfJ+P1+ZWVlafjw4fQd5mzsWbKz7xMnTighISFgAei6l0BnzJihTZs2afv27fWGnyR5vV55vd4a4x6Px5onTCUbe5bo2yY29izZ1Xeg+3RNABpjNGPGDL322mvKyclRSkqK0yUBAFzMNQE4bdo0vfLKK3r99dfVpk0bHTt2TJLUtm1btWzZ0uHqAABu45rfA1y1apVKSkqUnp6uhISEqsuGDRucLg0A4EKuWQG68LM6AIAQ5poVIAAAgUQAAgCsRAACAKxEAAIArEQAAgCsRAACAKxEAAIArEQAAgCsRAACAKxEAAIArEQAAgCsRAACAKxEAAIArEQAAgCsRAACAKxEAAIArEQAAgCsRAACAKxEAAIArEQAAgCsRAACAKxEAAIArEQAAgCsRAACAKxEAAIArEQAAgCsRAACAKxEAAIArEQAAgCsRAACAKxEAAIArEQAAgCsRAACAKxEAAIArEQAAgCsRAACAKxEAAIArEQAAgCsRAACAKxEAAIArEQAAgCsRAACAKxEAAIArEQAAgCsRAACAKxEAAIArEQAAgCsRAACAKxEAAIArEQAAgCs5LoAfOaZZ5SSkqKoqCilpaXpvffec7okAIALuSoAN2zYoFmzZmnevHnKz8/X4MGDNXLkSB0+fNjp0gAALuOqAFyxYoUmTZqkn/3sZ+rRo4eeeuopJSUladWqVU6XBgBwmeZOF9BQZ8+eVV5enubOnVttfMSIEdqxY0et9/H5fPL5fFXXS0tLJUl+v19+vz94xYaQyj5t6bcSfdvTt409S3b2HeheI4wxJqB7DJKioiJ17NhRH3zwgQYOHFg1vnjxYr300ksqKCiocZ+MjAwtWLCgxni/fv0UGRkZ1HpDyWeffabu3bs7XQYAXJby8nLt3r1bJSUliomJuez9uWYFWCkiIqLadWNMjbFKv/zlLzV79uyq66WlpUpKStLmzZsVFxcX1DpDhd/vV3p6unJycuTxeJwup8n4/X5lZWVp+PDhruz7jc/+fml3LC9X5IGPVd61j9TIH/Lu6N7+0h7TYW4/1pfKxr5PnDihhISEgO3PNQEYHx+vyMhIHTt2rNr48ePH1b597f9wvV6vvF5vjXGPx2PNE6aSjT1L7un71YLi6gOX+wpFZGSj9/HGga+qXb/r6sCdaJqCW451oNnUd6D7dE0AtmjRQmlpacrKytKYMWOqxrOysjR69GgHKwMuTY3QCzHn1+e2MAQawjUBKEmzZ8/Wvffeq/79+2vAgAFavXq1Dh8+rAcffNDp0oAGC/Xgq01lzQQhwomrAvAnP/mJTpw4occee0zFxcXq1auX3nrrLXXp0sXp0oB6uTH0asOqEOHEVQEoSQ899JAeeughp8sAGiRcgq82rArhdq4LQMANwjn4LkQQwq1c9ZdgADewKfzOZ2vfcC9WgECAEACsBuEurACBACD8qnu1oJg5QcgjAIHLwIm+fswNQhkBCFwiTu4NwzwhVPEeINBInNAbj/cGEYpYAQKNQPhdHuYPoYQABBqIk3dgMI8IFQQg0ACctAOL+UQoIACBi+BkHRzMK5xGAAL14CQdXMwvnEQAAnXg5Nw0mGc4hQAEasFJuWkx33ACAQhcgJOxM5h3NDUCEDgPJ2FnMf9oSgQggJBCCKKpEIDAP3DiBexCAAIi/EINxwNNgQCE9TjZhiaOC4KNAAQAWIkAhNVYZYQ2jg+CiQCEtTi5ugPHCcFCAAIArEQAwkqsKtyF44VgIAABAFYiAGEdVhPuxHFDoBGAAAArEYCwCqsId+P4IZAIQACAlQhAWIPVQ3jgOCJQCEAAgJUIQACuwyoQgUAAwgqcMAFciAAEAFiJAATgSqzqcbkIQIQ9TpQAakMAAgCsRAACcC1W97gcBCDC2huf/d3pEgCEKAIQAGAlAhAAYCUCEABgJQIQgKvxPi8uFQEIALASAQgAsBIBCACwEgEIALASAQgAsBIBCACwEgEIALCSKwKwsLBQkyZNUkpKilq2bKlu3bpp/vz5Onv2rNOlAQBcqrnTBTTEp59+qoqKCj333HO66qqr9Ne//lWTJ0/W6dOntWzZMqfLAwC4UKMD8P7779cDDzygIUOGBKOeWt1222267bbbqq537dpVBQUFWrVqFQGIWr3x2d8V6XQRAEJaowPw5MmTGjFihJKSkjRx4kRNmDBBHTt2DEZt9SopKVFsbGy92/h8Pvl8vqrrpaWlkiS/3y+/3x/U+kJFZZ+29FulvLz6f21hY9//6NW257iN/7YD3WujA3Djxo06ceKE1q1bpxdffFHz58/XLbfcokmTJmn06NHyeDwBLbA2+/fv19NPP63ly5fXu11mZqYWLFhQYzw7O1vR0dHBKi8kZWVlOV1Ck6pc/UUe+NjJMhxjY9+2Pccr2dR3WVlZQPcXYYwxl7OD/Px8/e53v9Pzzz+v1q1b65577tFDDz2k7t27X/S+GRkZtQbU+XJzc9W/f/+q60VFRRo6dKiGDh2q559/vt771rYCTEpKUnFxseLi4i5aXzjw+/1KT09XTk5Ok/xwEire+LRIkQc+VnnXPlKkRS+Glpfb1/c/eh4+fLhVz3G/36+srCyr+j5x4oQSEhJUUlKimJiYy97fZX0Ipri4WFu3btXWrVsVGRmp22+/XZ988ol69uyppUuX6he/+EW9958+fbrGjRtX7zbJyclV/19UVKRhw4ZpwIABWr169UXr83q98nq9NcY9Ho81T5hKtvV8R2qi3jrw8fchYEsQnM/Cvm17jleyqe9A99noAPT7/dq0aZPWrl2rrVu3qnfv3vrFL36h8ePHq02bNpKk9evXa+rUqRcNwPj4eMXHxzfocY8ePaphw4YpLS1Na9euVbNmrvgNDgBAiGp0ACYkJKiiokJ33323du3apT59+tTY5tZbb9UVV1wRgPK+V1RUpPT0dHXu3FnLli3Tl19+WXVbhw4dAvY4AAB7NDoAn3zySY0dO1ZRUVF1bnPllVfq4MGDl1XY+bZu3arPP/9cn3/+uTp16lTttst8CxMAYKlGv45477331ht+wXD//ffLGFPrBQCAS8EbaQAAKxGAAAArEYAAACsRgAAAKxGAAAArEYAAXO2O7u2dLgEuRQACAKxEAAIArEQAAgCsRAAirPH+UHi76+oEp0uAixGAAAArEYAAACsRgAh7vEwGoDYEIABX4gcbXC4CEABgJQIQVmC1AOBCBCAA1+EHGgQCAQgAsBIBCGuwaggPHEcECgEIALASAQirsHpwN44fAokABABYiQCEdVhFuBPHDYFGAAIArEQAwkqsJtyF44VgIABhLU6qgN0IQAAhjR9UECwEIKzGyTW0cXwQTAQgrMdJFrATAQggJPGDCYKNAATEyTbUcDzQFAhA4B846YYGjgOaCgEInIeTL2APAhBAyOAHEDQlAhC4ACdhZzDvaGoEIFALTsZNi/mGEwhAoA6clJsG8wynEIBAPTg5BxfzCycRgMBFcJIODuYVTiMAgQbgZB1YzCdCAQEINBAn7cBgHhEqmjtdAOAmlSfvVwuKHa7EfQg+hBpWgMAl4GTeOMwXQhEBCFwiTuoNwzwhVPESKHAZeEm0bgQfQh0rQCAAONlXx3zADVgBAgHCapDgg7sQgECA2RiEBB/ciJdAgSC56+oEK4LBhh4RnlgBAkEWjitCQg/hgAAEmkg4BCHBh3DiugD0+Xy6/vrrtWfPHuXn56tPnz5OlwQ0yvkh4oYwJPQQrlwXgI888ogSExO1Z88ep0sBLluohiGhBxu4KgC3bNmirVu3auPGjdqyZYvT5QABdWHoNGUgEniwkWsC8O9//7smT56sP//5z4qOjm7QfXw+n3w+X9X10tJSSZLf75ff7w9KnaGmsk9b+q0UDn3f0TW+xtgbn/29/juVl1f/b2377d6+xpib5ykcjvWlsLHvQPfqigA0xuj+++/Xgw8+qP79+6uwsLBB98vMzNSCBQtqjGdnZzc4RMNFVlaW0yU4Itz6jmzodgc+rvO2tz4LSCkhJ9yOdUPZ1HdZWVlA9xdhjDEB3WMjZGRk1BpQ58vNzdWOHTu0YcMGbd++XZGRkSosLFRKSspFPwRT2wowKSlJxcXFiouLC1QbIc3v9ys9PV05OTnyeDxOl9Nk/H6/srKyNHz4cPoOczb2LNnZ94kTJ5SQkKCSkhLFxMRc9v4cXQFOnz5d48aNq3eb5ORkLVy4UDt37pTX6612W//+/TV+/Hi99NJLtd7X6/XWuI8keTwea54wlWzsWaJvm9jYs2RX34Hu09EAjI+PV3x8zfc5LvSf//mfWrhwYdX1oqIi3XrrrdqwYYOuv/76YJYIAAhTrngPsHPnztWut27dWpLUrVs3derUyYmSAAAux98CBQBYyRUrwAslJyfLwc/uAADCACtAAICVCEAAgJUIQACAlQhAAICVCEAAgJUIQACAlQhAAICVCEAAgJUIQACAlQhAAICVCEAAgJUIQACAlQhAAICVCEAAgJUIQACAlQhAAICVCEAAgJUIQACAlQhAAICVCEAAgJUIQACAlQhAAICVCEAAgJUIQACAlQhAAICVCEAAgJUIQACAlQhAAICVCEAAgJUIQACAlQhAAICVCEAAgJUIQACAlQhAAICVCEAAgJUIQACAlQhAAICVCEAAgJUIQACAlQhAAICVCEAAgJUIQACAlQhAAICVCEAAgJUIQACAlQhAAICVCEAAgJUIQACAlQhAAICVCEAAgJVcFYCbN2/W9ddfr5YtWyo+Pl533XWX0yUBAFyqudMFNNTGjRs1efJkLV68WDfddJOMMdq7d6/TZQEAXMoVAXju3DnNnDlTTzzxhCZNmlQ1fvXVVztYFQDAzVwRgLt379bRo0fVrFkz9e3bV8eOHVOfPn20bNky/fCHP6zzfj6fTz6fr+p6aWmpJMnv98vv9we97lBQ2act/Vaib3v6trFnyc6+A92rKwLwwIEDkqSMjAytWLFCycnJWr58uYYOHap9+/YpNja21vtlZmZqwYIFNcazs7MVHR0d1JpDTVZWltMlOIK+7WFjz5JdfZeVlQV0fxHGGBPQPTZCRkZGrQF1vtzcXO3bt0/jx4/Xc889p3/7t3+T9P3qrlOnTlq4cKGmTJlS631rWwEmJSWpuLhYcXFxgWskhPn9fqWnpysnJ0cej8fpcpqM3+9XVlaWhg8fTt9hzsaeJTv7PnHihBISElRSUqKYmJjL3p+jK8Dp06dr3Lhx9W6TnJyskydPSpJ69uxZNe71etW1a1cdPny4zvt6vV55vd4a4x6Px5onTCUbe5bo2yY29izZ1Xeg+3Q0AOPj4xUfH3/R7dLS0uT1elVQUKBBgwZJ+v6nn8LCQnXp0iXYZQIAwpAr3gOMiYnRgw8+qPnz5yspKUldunTRE088IUkaO3asw9UBANzIFQEoSU888YSaN2+ue++9V2fOnNH111+vd999V1deeaXTpQEAXMg1AejxeLRs2TItW7bM6VIAAGHAVX8KDQCAQCEAAQBWIgABAFYiAAEAViIAAQBWIgABAFYiAAEAViIAAQBWIgABAFYiAAEAViIAAQBWIgABAFYiAAEAViIAAQBWIgABAFYiAAEAViIAAQBWIgABAFYiAAEAViIAAQBWIgABAFYiAAEAViIAAQBWIgABAFYiAAEAViIAAQBWIgABAFYiAAEAViIAAQBWIgABAFYiAAEAViIAAQBWIgABAFYiAAEAViIAAQBWIgABAFYiAAEAViIAAQBWIgABAFYiAAEAViIAAQBWIgABAFYiAAEAViIAAQBWIgABAFYiAAEAViIAAQBWIgABAFYiAAEAViIAAQBWIgABAFZyTQDu27dPo0ePVnx8vGJiYnTjjTcqOzvb6bIAAC7lmgAcNWqUzp07p3fffVd5eXnq06ePfvzjH+vYsWNOlwYAcCFXBOBXX32lzz//XHPnzlXv3r3VvXt3LVmyRGVlZfrkk0+cLg8A4ELNnS6gIeLi4tSjRw/9/ve/V79+/eT1evXcc8+pffv2SktLq/N+Pp9PPp+v6npJSYkk6euvvw56zaHC7/ervLxcJ06ckMfjcbqcJuP3+1VWVkbfFrCxZ8nOvivP3caYwOzQuMQXX3xh0tLSTEREhImMjDSJiYkmPz+/3vvMnz/fSOLChQsXLmF02b9/f0ByJcKYQEVp42VkZGjBggX1bpObm6u0tDTdeeed8vv9mjdvnlq2bKnnn39emzZtUm5urhISEmq974UrwG+//VZdunTR4cOH1bZt24D2EqpKS0uVlJSkI0eOKCYmxulymgx929O3jT1LdvZdUlKizp0765tvvtEVV1xx2ftzNAC/+uorffXVV/Vuk5ycrA8++EAjRozQN998U+1Ad+/eXZMmTdLcuXMb9HilpaVq27atSkpKrHnC2NizRN829W1jz5KdfQe6Z0ffA4yPj1d8fPxFtysrK5MkNWtW/TM7zZo1U0VFRVBqAwCEN1d8CnTAgAG68sorNWHCBO3Zs0f79u3Tww8/rIMHD2rUqFFOlwcAcCFXBGB8fLzefvttnTp1SjfddJP69++v999/X6+//rquueaaBu/H6/Vq/vz58nq9Qaw2tNjYs0TfNvVtY8+SnX0HumdH3wMEAMAprlgBAgAQaAQgAMBKBCAAwEoEIADASlYGYGFhoSZNmqSUlBS1bNlS3bp10/z583X27FmnSwu4Z555RikpKYqKilJaWpree+89p0sKqszMTF177bVq06aN2rVrpzvvvFMFBQVOl9WkMjMzFRERoVmzZjldStAdPXpU99xzj+Li4hQdHa0+ffooLy/P6bKC5ty5c/rVr35Vde7q2rWrHnvssbD7fejt27frjjvuUGJioiIiIvTnP/+52u3GGGVkZCgxMVEtW7ZUenr6JX0xgpUB+Omnn6qiokLPPfecPvnkEz355JN69tln9eijjzpdWkBt2LBBs2bN0rx585Sfn6/Bgwdr5MiROnz4sNOlBc22bds0bdo07dy5U1lZWTp37pxGjBih06dPO11ak8jNzdXq1avVu3dvp0sJum+++UY33nijPB6PtmzZor/97W9avnx5QP5EVqh6/PHH9eyzz2rlypX6v//7Py1dulRPPPGEnn76aadLC6jTp0/rmmuu0cqVK2u9fenSpVqxYoVWrlyp3NxcdejQQcOHD9fJkycb90AB+YuiYWDp0qUmJSXF6TIC6rrrrjMPPvhgtbHU1FQzd+5chypqesePHzeSzLZt25wuJehOnjxpunfvbrKysszQoUPNzJkznS4pqObMmWMGDRrkdBlNatSoUeaBBx6oNnbXXXeZe+65x6GKgk+See2116quV1RUmA4dOpglS5ZUjX333Xembdu25tlnn23Uvq1cAdampKREsbGxTpcRMGfPnlVeXp5GjBhRbXzEiBHasWOHQ1U1vcqvwAqnY1uXadOmadSoUbrlllucLqVJbNq0Sf3799fYsWPVrl079e3bV2vWrHG6rKAaNGiQ3nnnHe3bt0+StGfPHr3//vu6/fbbHa6s6Rw8eFDHjh2rdm7zer0aOnRoo89trvg+wGDbv3+/nn76aS1fvtzpUgLmq6++Unl5udq3b19tvH379jp27JhDVTUtY4xmz56tQYMGqVevXk6XE1Tr16/X7t27lZub63QpTebAgQNatWqVZs+erUcffVS7du3Sz3/+c3m9Xt13331OlxcUc+bMUUlJiVJTUxUZGany8nItWrRId999t9OlNZnK81dt57ZDhw41al9htQLMyMhQREREvZePPvqo2n2Kiop02223aezYsfrZz37mUOXBExERUe26MabGWLiaPn26/vd//1f/9V//5XQpQXXkyBHNnDlT69atU1RUlNPlNJmKigr169dPixcvVt++fTVlyhRNnjxZq1atcrq0oNmwYYPWrVunV155Rbt379ZLL72kZcuW6aWXXnK6tCYXiHNbWK0Ap0+frnHjxtW7TXJyctX/FxUVadiwYRowYIBWr14d5OqaVnx8vCIjI2us9o4fP17jJ6dwNGPGDG3atEnbt29Xp06dnC4nqPLy8nT8+HGlpaVVjZWXl2v79u1auXKlfD6fIiMjHawwOBISEtSzZ89qYz169NDGjRsdqij4Hn74Yc2dO7fqPPejH/1Ihw4dUmZmpiZMmOBwdU2jQ4cOkr5fCZ7/XbCXcm4LqwBs6NcrSd9/fHrYsGFKS0vT2rVra3zVktu1aNFCaWlpysrK0pgxY6rGs7KyNHr0aAcrCy5jjGbMmKHXXntNOTk5SklJcbqkoLv55pu1d+/eamMTJ05Uamqq5syZE5bhJ0k33nhjjV9x2bdvn7p06eJQRcFXVlZW41wVGRkZdr8GUZ+UlBR16NBBWVlZ6tu3r6TvP/Owbds2Pf74443bWSA+peM2R48eNVdddZW56aabzBdffGGKi4urLuFk/fr1xuPxmBdeeMH87W9/M7NmzTKtWrUyhYWFTpcWNFOnTjVt27Y1OTk51Y5rWVmZ06U1KRs+Bbpr1y7TvHlzs2jRIvPZZ5+Zl19+2URHR5t169Y5XVrQTJgwwXTs2NG8+eab5uDBg+bVV1818fHx5pFHHnG6tIA6efKkyc/PN/n5+UaSWbFihcnPzzeHDh0yxhizZMkS07ZtW/Pqq6+avXv3mrvvvtskJCSY0tLSRj2OlQG4du1aI6nWS7j57W9/a7p06WJatGhh+vXrF/a/DlDXcV27dq3TpTUpGwLQGGPeeOMN06tXL+P1ek1qaqpZvXq10yUFVWlpqZk5c6bp3LmziYqKMl27djXz5s0zPp/P6dICKjs7u9Z/xxMmTDDGfP+rEPPnzzcdOnQwXq/XDBkyxOzdu7fRj8PXIQEArBReb3wBANBABCAAwEoEIADASgQgAMBKBCAAwEoEIADASgQgAMBKBCAAwEoEIADASgQgAMBKBCAAwEoEIOByX375pTp06KDFixdXjX344Ydq0aKFtm7d6mBlQGjjj2EDYeCtt97SnXfeqR07dig1NVV9+/bVqFGj9NRTTzldGhCyCEAgTEybNk1/+ctfdO2112rPnj3Kzc1VVFSU02UBIYsABMLEmTNn1KtXLx05ckQfffSRevfu7XRJQEjjPUAgTBw4cEBFRUWqqKjQoUOHnC4HCHmsAIEwcPbsWV133XXq06ePUlNTtWLFCu3du1ft27d3ujQgZBGAQBh4+OGH9ac//Ul79uxR69atNWzYMLVp00Zvvvmm06UBIYuXQAGXy8nJ0VNPPaU//OEPiomJUbNmzfSHP/xB77//vlatWuV0eUDIYgUIALASK0AAgJUIQACAlQhAAICVCEAAgJUIQACAlQhAAICVCEAAgJUIQACAlQhAAICVCEAAgJUIQACAlf4favzp1PL56h8AAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "\n", + "# Define the grid of x and y values\n", + "x = np.linspace(-2, 10, 400)\n", + "y = np.linspace(-8, 4, 400)\n", + "X, Y = np.meshgrid(x, y)\n", + "\n", + "# Define the function for the inequality (x-4)^2 + (y+2)^2 <= 4\n", + "Z = (X - 4)**2 + (Y + 2)**2 - 4\n", + "\n", + "# Plot the contour for the region where Z <= 0\n", + "plt.contourf(X, Y, Z, levels=[-1000, 0], colors=['lightblue'])\n", + "\n", + "# Additional plot settings\n", + "plt.xlabel('x')\n", + "plt.ylabel('y')\n", + "plt.title(r'$(x-4)^2 - (y+2)^2 \\leq 4$')\n", + "plt.axhline(0, color='black',linewidth=0.5)\n", + "plt.axvline(0, color='black',linewidth=0.5)\n", + "plt.grid(True)\n", + "plt.gca().set_aspect('equal', adjustable='box')\n", + "plt.show()\n" + ] + }, + { + "cell_type": "markdown", + "id": "c4050694", + "metadata": {}, + "source": [ + "2. Dziedzinę funkcji $f$ tworzy zbiór tych $(x,y)$ dla których\n", + "\n", + "$$\n", + "x>0, y>0 \\text{ oraz } 1-x-y>0.\n", + "$$" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "3b933612", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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W1WL+NpTez3Fs2fPNquupnryyScxYcKEBtt069bN7vYdO3bg5MmTdo+EnLWP6OhoaDQaHD16FDt37kTbtm3x2GOP2W27cOFCLFy4sMH9bNu2DTExMbbv27VrB41GU+eoraCgoME+OQtDjojcSmBgoOJtnaldu3Zo166dw487evQoxo4di/fffx8bNmzAX//6V2zatMmp+wCuDorr06cPNm/ejOXLl+Of//xnvQsuN+V0pU6nQ1RUFDIzM5GQkGDbnpmZiZEjRzapZkcw5IiIHFRaWor//Oc/tu/Pnj2LH374AeHh4fUeMTni7NmzGDZsGObMmYOJEyeid+/euO2225CdnY2oqKhmP39t/fr1w+LFizF8+HDcc8899bZr06YN2rRpA+BqyBUXFyM4OPiadyFITk7GxIkTER0djf79+2P58uXIzc1FYmKiU/thD0OOiMhBR44cwd133237/qmnngIATJo0CR9++GGznvu3335DXFwc7r//fjz//PMAgKioKIwYMQIpKSnYvn17s57fnr59+0Kr1eKNN95w+nMDwPjx43H58mUsWLAAFy9exE033YT09PQ6ozddgSFHROSgu+66q8aozOpHNc3Vpk0bnDhxos72zz//vNnPXZ9169YhKSkJvXr1ctk+kpKSkJSU5LLnrw9DjojIB1mtVly6dAmrVq3Cv//9b2zZskXpklxC0SkETVn/be/evYiKioJer0f37t3x3nvvub5QJ9BoNIiLi0NUVBSX9SIixe3btw+hoaH4+OOPsXnzZqdOMHcnih7JVa3/9uijj+KBBx64ZvszZ84gPj4ejz/+OD7++GMcPHgQSUlJaN++faMeryS9Xo/PP/8c6enpXNaLiBR31113wWq1Kl2GyykacnFxcYiLi2t0+/feew9dunRBWloaACAyMhJHjhzBm2++6fYhR0RE8vOoa3KHDh2qs/7Z0KFDsWrVKphMJkiSVOcxlZWVqKystH1fXFwMADCZTDCZTK4tuBaTyYSvv/4aQggMGzZM1n0rqerfWe5/byX5Yp8Bx/ptMpkghIDVavX4I4qqQShV/fEFru6z1WqFEAImk6nOJR5Hfq88KuTy8/Ptrn9mNptRWFiI0NDQOo9ZtGgR5s+fX2d7RkYGAgICXFZrbQaDARMnToTJZMKyZcvw/PPP4w9/+INs+3cHmZmZSpcgO1/sM9C4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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "\n", + "# Define the x range for the plot\n", + "x = np.linspace(0, 1, 400)\n", + "\n", + "# Define the boundary lines\n", + "y1 = 0 * x # y = 0 line for y > 0\n", + "y2 = 1 - x # y = 1 - x line for 1 - x - y > 0\n", + "\n", + "# Fill the region where the inequalities hold\n", + "plt.fill_between(x, y1, y2, where=(y2 > y1), color=\"lightblue\", alpha=0.5)\n", + "\n", + "# Plot the boundaries with dashed lines\n", + "plt.plot(x, y2, 'k--', label=r'$1 - x - y = 0$')\n", + "plt.axvline(0, color='k', linestyle='--', label=r'$x = 0$')\n", + "plt.axhline(0, color='k', linestyle='--', label=r'$y = 0$')\n", + "\n", + "# Additional plot settings\n", + "plt.xlim(-0.1, 1.1)\n", + "plt.ylim(-0.1, 1.1)\n", + "plt.xlabel('x')\n", + "plt.ylabel('y')\n", + "plt.title(r'Set: $x > 0$, $y > 0$, $1 - x - y > 0$')\n", + "plt.grid(True)\n", + "plt.legend(loc=\"upper right\")\n", + "plt.gca().set_aspect('equal', adjustable='box')\n", + "plt.show()\n" + ] + }, + { + "cell_type": "markdown", + "id": "7b9026af-9d58-490c-8707-154352d22ce3", + "metadata": {}, + "source": [ + "#### Zadanie 2 \n", + "Wykreśl wykres poniższych funkcji:\n", + " >1. $f(x,y)=x^2+y^2$;\n", + " >2. $f(x,y)=\\sqrt{x^2+y^2}$;\n", + " >3. $f(x,y)=\\sqrt{16-x^2-y^2}$ i $g(x,y)=-\\sqrt{16-x^2-y^2} $;\n", + " >4. $f(x,y)=x^2-y^2$." + ] + }, + { + "cell_type": "markdown", + "id": "fdfcf3f2-447a-42af-ad58-82ebe18b8218", + "metadata": {}, + "source": [ + "##### Rozwiązanie:" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "1a1d6417-4095-4f3b-a020-cab300fd9de6", + "metadata": {}, + "outputs": [], + "source": [ + "import IPython.display as display\n" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "5ccf805e-2bc0-4b70-a62a-a92254ea9c70", + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "execution_count": 1, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from IPython.display import IFrame\n", + "IFrame('https://www.geogebra.org/calculator/ahx8sscp', width=800, height=600, style=\"border: 1px solid black\")" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "08cee401-113a-477e-bb0a-1bfa51afd412", + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from IPython.display import IFrame\n", + "IFrame('https://geogebra.org/calculator/x4ngbw4r', width=800, height=600, style=\"border: 1px solid black\")" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "2f7a5f9f-b234-416f-af00-9f92eb55c53d", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from IPython.display import IFrame\n", + "IFrame('https://www.geogebra.org/calculator/dywfgwgb', width=800, height=600, style=\"border: 1px solid black\")" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "896bc403-9945-4d66-a905-9315debb3abd", + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from IPython.display import IFrame\n", + "IFrame('https://www.geogebra.org/calculator/rztxuac3', width=800, height=600, style=\"border: 1px solid black\")" + ] + }, + { + "cell_type": "markdown", + "id": "05e2b5c1-e621-4c3e-bea3-15c142af68c4", + "metadata": {}, + "source": [ + "## Granica i ciągłość" + ] + }, + { + "cell_type": "markdown", + "id": "13dd02b5", + "metadata": {}, + "source": [ + "### Granica\n", + "Niech $A\\subset \\mathbb{R}^n$ i niech $x_0\\in A$ będzie punktem skupienia zbioru $A$ (to oznacza, że $x_0$ jest granicą ciągu $(x_n)$ punktów ze zbioru $A\\setminus\\{x_0\\}$). Mówimy, że funkcja $f:A\\to\\mathbb{R}$ ma granicę w punkcie $x_0$ równą $g$ i piszemy\n", + "\n", + "$$\n", + "\\lim_{x\\to x_0 } f(x)=g,\n", + "$$\n", + "\n", + "gdy dla każdego ciągu $(x_n)$ punktów zbioru $A\\setminus\\{x_0\\}$ zachodzi\n", + "\n", + "$$\n", + "x_n \\xrightarrow{n \\to \\infty} x_0\\Rightarrow f(x_n) \\xrightarrow{n \\to \\infty} g.\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "id": "a7630640-71b9-46be-a910-32d41d26d7d6", + "metadata": {}, + "source": [ + "#### Zadanie 3 \n", + "\n", + "Oblicz następujące granice\n", + ">1. $\\displaystyle \\lim_{(x,y)\\to (1,1)}\\frac{x^2y}{x^2+y^2}$;\n", + ">2. $\\displaystyle \\lim_{(x,y)\\to (0,0)}\\frac{x^2y}{x^2+y^2}$;\n", + ">3. $\\displaystyle \\lim_{(x,y)\\to (0,0)}\\frac{x^2+y^2}{\\sqrt{x^2+y^2}}$;\n", + ">4. $\\displaystyle \\lim_{(x,y)\\to (0,0)}\\frac{x^2y^3}{x^4+y^4}$." + ] + }, + { + "cell_type": "markdown", + "id": "4b48884a-2d2d-4994-925d-2281759c470f", + "metadata": {}, + "source": [ + "##### Rozwiązanie:\n", + "1. Z własności granic bardzo łatwo dostajemy, że \n", + "\n", + "$$\n", + "\\displaystyle \\lim_{(x,y)\\to (1,1)}\\frac{x^2y}{x^2+y^2}=\\frac{1}{2}.\n", + "$$\n", + "\n", + "2. Dla $(x,y)\\not=0$ mamy \n", + "\n", + "$$\n", + "\\left|\\frac{x^2y}{x^2+y^2}\\right|\\leq |y|\\cdot \\frac{x^2}{x^2+y^2}\\leq |y|.\n", + "$$\n", + "\n", + "Zatem \n", + "\n", + "$$\n", + "\\lim_{(x,y)\\to (0,0)}\\frac{x^2y}{x^2+y^2}=0.\n", + "$$\n", + "3. Dla $(x,y)\\not=(0,0)$ mamy\n", + "\n", + "$$\n", + "\\left|\\frac{x^2+y^2}{\\sqrt{x^2+y^2}}\\right|\\leq |x|\\cdot\\frac{|x|}{\\sqrt{x^2+y^2}}+|y|\\cdot\\frac{|y|}{\\sqrt{x^2+y^2}}\\leq |x|+|y|.\n", + "$$\n", + "\n", + "Zatem\n", + "\n", + "$$\n", + "\\lim_{(x,y)\\to (0,0)}\\frac{x^2+y^2}{\\sqrt{x^2+y^2}}=0.\n", + "$$\n", + "4. Niech dla $(x,y)\\not=(0,0)$ \n", + "\n", + "$$\n", + "f(x,y)=\\frac{x^2y^3}{x^4+y^4},\n", + "$$\n", + "\n", + "niech\n", + "\n", + "$$\n", + "(0,0)\\not=(x_n,y_n)\\xrightarrow{n\\to\\infty}(0,0)\n", + "$$\n", + "\n", + "i niech \n", + "\n", + "$$\n", + "u_n=\\max\\{|x_n|,|y_n|\\}.\n", + "$$\n", + "\n", + "Jest jasne, że \n", + "\n", + "$$\n", + "u_n\\xrightarrow{n\\to\\infty}0.\n", + "$$\n", + "\n", + "Ponadto \n", + "\n", + "$$\n", + "|f(x_n,y_n)|=\\left|\\frac{x_n^2y_n^3}{x_n^4+y_n^4}\\right|\\leq\\frac{u_n^5}{u_n^4}=u_n.\n", + "$$\n", + "\n", + "Zatem \n", + "\n", + "\n", + "$$\n", + "f(x_n,y_n)\\xrightarrow{n\\to\\infty}0.\n", + "$$\n", + "\n", + "Ostatecznie \n", + "\n", + "$$\n", + "\\lim_{(x,y)\\to (0,0)}\\frac{x^2y^3}{x^4+y^4}=0.\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "id": "d10f6a21-3419-4d0e-9bc6-67286fab908f", + "metadata": {}, + "source": [ + "#### Zadanie 4\n", + "Pokaż, że nastepujace funkcje nie mają granicy w punkcie (0,0).\n", + "\n", + ">1. $f(x,y)=1$ jeśli $x=0$ lub $y=0$ oraz $f(x,y)=0$ w przeciwnym wypadku.\n", + ">2. $\\displaystyle f(x,y)=\\frac{xy}{x^2+y^2}$ dla $(x,y)\\not=0$." + ] + }, + { + "cell_type": "markdown", + "id": "fee6a963", + "metadata": {}, + "source": [ + "##### Rozwiązanie:\n", + "\n", + "1. Ciągi $(0,1/n)_{n\\in\\mathbb{N}}$ oraz $(1/n,1/n)_{n\\in\\mathbb{N}}$ dążą do punktu $(0,0)$. \n", + "Ponadto \n", + "\n", + "\n", + "$$\n", + "f(0,1/n)=1\\xrightarrow{n\\to\\infty}1 \\quad\\text{ i }\\quad f(1/n,1/n)=0\\xrightarrow{n\\to\\infty}0. \n", + "$$\n", + "Zatem funkcja $f$ nie ma granicy w punkcie $(0,0)$.\n", + "\n", + "2. Ciągi $(0,1/n)_{n\\in\\mathbb{N}}$ oraz $(1/n,1/n)_{n\\in\\mathbb{N}}$ dążą do punktu $(0,0)$. \n", + "Ponadto \n", + "\n", + "\n", + "$$\n", + "f(0,1/n)=0\\xrightarrow{n\\to\\infty}0\\quad \\text{ i }\\quad f(1/n,1/n)=1/2\\xrightarrow{n\\to\\infty}1/2. \n", + "$$\n", + "Zatem funkcja $f$ nie ma granicy w punkcie $(0,0)$." + ] + }, + { + "cell_type": "markdown", + "id": "2076a8a2", + "metadata": {}, + "source": [ + "### Ciągłość\n", + "\n", + "Niech $A\\subset \\mathbb{R}^n$ i niech $f:A\\to\\mathbb{R}$. Mówimy, że funkcja $f$ jest ciągła w punkcie $x_0\\in A$, gdy \n", + " dla każdego ciągu $(x_n)$ punktów zbioru $A$ zachodzi\n", + "\n", + "$$\n", + "x_n \\xrightarrow{n \\to \\infty} x_0\\Rightarrow f(x_n) \\xrightarrow{n \\to \\infty} f(x_0).\n", + "$$\n", + "\n", + "\n", + "***Uwaga:***\n", + ">* Jeśli $x_0$ **nie** jest punktem skupienia zbioru $A$, to funkcja $f$ **jest** ciągła w punkcie $x_0$.\n", + ">* Jeśli $x_0$ jest punktem skupienia zbioru $A$, to funkcja $f$ **jest** ciągła w punkcie $x_0$ dokładnie wtedy gdy \n", + "$\\displaystyle \\lim_{x\\to x_0}f(x)=f(x_0)$.\n", + ">* Jeśli funkcja $f$ jest ciągła w każdym punkcie zbioru $A$, to mówimy że jest ciągła na $A$.\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "id": "ab4a522c-652e-461d-a880-af51d80b94f8", + "metadata": {}, + "source": [ + "#### Zadanie 5\n", + "\n", + "Omów ciągłość poniższych funkcji.\n", + "\n", + ">1. $f(x,y,z)=x^2y+z$.\n", + ">2. $f(x,y)=\\frac{x^4}{x^2+y^2}$, gdy $(x,y)\\not=(0,0)$ oraz $f(0,0)=1$." + ] + }, + { + "cell_type": "markdown", + "id": "ce59d7b8", + "metadata": {}, + "source": [ + "##### Rozwiązanie:\n", + "1. Jest jasne, że funkcja $f$ jest funkcją ciągłą na $\\mathbb{R}^3$. Istotnie, niech \n", + "\n", + "$$\n", + "(x_n,y_n,z_n)\\xrightarrow{n\\to\\infty}(x_0,y_0,z_0).\n", + "$$\n", + "\n", + "Wtedy \n", + "\n", + "$$\n", + "x_n\\xrightarrow{n\\to\\infty}x_0,\\quad y_n\\xrightarrow{n\\to\\infty}y_0,\\quad z_n\\xrightarrow{n\\to\\infty}z_0.\n", + "$$\n", + "\n", + "Zatem \n", + "\n", + "$$\n", + "f(x_n,y_n,z_n)=x_n^2y_n+z_n\\xrightarrow{n\\to\\infty}x^2_0y_0+z_0=f(x_0,y_0,z_0).\n", + "$$\n", + "\n", + "2. Argumenty takie jak wyżej i wiedza z wykłady łatwo dają, że funkcja $f$ jest ciągła na zbiorze $\\mathbb{R}^2\\setminus\\{(0,0)\\}$.\n", + "Mamy\n", + "\n", + "$$\n", + "f(0,1/n)=0.\n", + "$$\n", + "\n", + "Zatem $f$ nie jest ciągła w punkcie $(0,0)$." + ] + }, + { + "cell_type": "markdown", + "id": "933b8b8b-4b65-4cf0-99ac-a07e67c0041e", + "metadata": {}, + "source": [ + "## Pochodne cząstkowe" + ] + }, + { + "cell_type": "markdown", + "id": "b8047623-9367-4eca-b8a1-bae341bdcc59", + "metadata": {}, + "source": [ + "### Definicja i podstawowe rachunki" + ] + }, + { + "cell_type": "markdown", + "id": "a4098dbc-47a6-475d-aed3-4d9a130c31f2", + "metadata": {}, + "source": [ + "Pochodną cząstkową I rzędu funkcji $f$ w punkcie $(x_1, ... , x_n)$ względem zmiennej $x_k$ nazywamy granicę ilorazu różnicowego:\n", + "\n", + "$$ \n", + "{\\frac{\\partial f}{\\partial x_k}(x_1, ..., x_n):=\\lim\\limits_{h \\to 0 } \\frac{f(x_1, ... , x_{k-1} , x_k+h, x_{k+1}, ... x_n) - f(x_1, ..., x_n)}{h}.}\n", + "$$\n" + ] + }, + { + "cell_type": "markdown", + "id": "d446b8ec-7b97-4a08-b7af-d04c59d9a610", + "metadata": {}, + "source": [ + "#### Zadanie 5 \n", + "\n", + "Oblicz wszystkie pochodne cząstkowe I rzędu dla funkcji \n", + "\n", + "$$\n", + "f(x,y,z)=xy^2+z.\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "id": "bd6fe862", + "metadata": {}, + "source": [ + "##### Rozwiązanie:\n", + "1.\n", + "\n", + "$$\n", + "\\frac{\\partial f}{\\partial x}(x,y,z)= \\lim_{h\\to 0} \\frac{f((x+h,y,z))-f(x,y,z)}{h}=\n", + "\\lim_{h\\to 0}\\frac{hy^2}{h}=y^2.\n", + "$$\n", + "\n", + "2.\n", + "\n", + "$$\n", + "\\frac{\\partial f}{\\partial y}(x,y,z)= \\lim_{h\\to 0} \\frac{f((x,y+y,z))-f(x,y,z)}{h}=\n", + "\\lim_{h\\to 0}\\frac{x(y+h)^2-xy^2}{h}=\n", + "=\\lim_{h\\to 0}\\frac{2xyh+xh^2}{h}=\\lim_{h\\to 0}(2xy+xh)=2xy.\n", + "$$\n", + "\n", + "3.\n", + "\n", + "$$\n", + "\\frac{\\partial f}{\\partial z}(x,y,z)= \\lim_{h\\to 0} \\frac{f((x,y,z+h))-f(x,y,z)}{h}=\n", + "\\lim_{h\\to 0}\\frac{h}{h}=1.\n", + "$$\n" + ] + }, + { + "cell_type": "markdown", + "id": "dd16f502", + "metadata": {}, + "source": [ + "#### Zadanie 6\n", + "\n", + "Obliczymy pochodne cząstkowe funkcji \n", + "\n", + "$$\n", + "f(x,y)=\\begin{cases}\n", + "\\frac{xy}{x^2+y^2}, & (x,y)\\not=(0,0)\\\\\n", + "0, & (x,y)=(0,0).\n", + "\\end{cases}\n", + "$$\n", + "\n", + "w punkcie $(0,0)$." + ] + }, + { + "cell_type": "markdown", + "id": "3b0b301c", + "metadata": {}, + "source": [ + "##### Rozwiązanie:" + ] + }, + { + "cell_type": "markdown", + "id": "4c2c9446", + "metadata": {}, + "source": [ + "Mamy\n", + "\n", + "$$\n", + "\\frac{\\partial f}{\\partial x}(0,0)=\\lim_{h\\to 0}\\frac{f(h,0)-f(0,0)}{h}\n", + "=\\lim_{h\\to 0}\\frac{0-0}{h}=0\n", + "$$\n", + "\n", + "oraz\n", + "\n", + "$$\n", + "\\frac{\\partial f}{\\partial y}(0,0)=\\lim_{h\\to 0}\\frac{f(0,h)-f(0,0)}{h}\n", + "=\\lim_{h\\to 0}\\frac{0-0}{h}=0.\n", + "$$\n", + "\n", + "***Uwaga:*** zauważmy, że \n", + "\n", + "$$\n", + "f(1/n,1/n)=1/2\\xrightarrow{n\\to\\infty}1/2\\not=0=f(0,0).\n", + "$$\n", + "\n", + "Stąd $f$ nie jest ciągła w punkcie $(0,0)$. Zatem istnienie pochodnych cząstkowych w punkcie $(0,0)$ __nie implikuje__ ciągłości funkcji w tym punkcie" + ] + }, + { + "cell_type": "markdown", + "id": "44450f43-6d68-44ca-ac06-909841547ba1", + "metadata": {}, + "source": [ + "#### Zadanie 7\n", + "\n", + "Zbadaj istnienie pochodnych cząstkowych funkcji $f(x,y)=\\sqrt{x^2+y^4}$ w punkcie $(0,0)$." + ] + }, + { + "cell_type": "markdown", + "id": "e0da843f", + "metadata": {}, + "source": [ + "##### Rozwiązanie:\n", + "\n", + "1. Mamy\n", + "\n", + "$$\n", + "\\frac{\\partial f}{\\partial x}(0,0)=\\lim_{h\\to 0}\\frac{f(h,0)-f(0,0)}{h}\n", + "=\\lim_{h\\to 0}\\frac{|h|}{h}.\n", + "$$\n", + "\n", + "Ta granica nie istnieje, zatem funkcja $f$ nie ma pochodnej cząstkowej względem pierwszej zmiennej w punkcie $(0,0)$.\n", + "\n", + "2. Na podstawie definicji otrzymujemy, że \n", + "$$\n", + "\\frac{\\partial f}{\\partial y}(0,0)=\\lim_{h\\to 0}\\frac{f(0,h)-f(0,0)}{h}\n", + "=\\lim_{h\\to 0}\\frac{h^2}{h}=0.\n", + "$$\n" + ] + }, + { + "cell_type": "markdown", + "id": "36fc2bcf-a2dd-47d1-abbb-06bd3782e2bb", + "metadata": {}, + "source": [ + "#### Zadanie 8 " + ] + }, + { + "cell_type": "markdown", + "id": "67fd2093", + "metadata": {}, + "source": [ + "Korzystając z reguł różniczkowania oblicz pochodne cząstkowe poniższych funkcji.\n", + "\n", + "> 1. $f(x,y,z)=x^2+2xyz+yz^3$;\n", + "> 2. $f(x,y)=xe^{x^2+y^2}$;\n", + "> 3. $f(x,y)=\\frac{x^2+y}{x^2+y^2+1}$." + ] + }, + { + "cell_type": "markdown", + "id": "346feb36-5e77-4e51-9435-df2ea46f3517", + "metadata": {}, + "source": [ + "Dla $f(x,y,z) = x^2 + 2xyz + yz^3$:\n", + "\n", + "$$\n", + " \\frac{\\partial f}{\\partial x}{(x, y, z)} = 2x + 2yz\n", + "$$\n", + "$$\n", + "\\frac{\\partial f}{\\partial y}{(x, y, z)} = 2xz + z^3\n", + "$$\n", + "$$\n", + "\\frac{\\partial f}{\\partial z} {(x, y, z)} = 2xy + 3yz^2\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "id": "0027c7c4-460f-42fa-91ce-d04330e3152d", + "metadata": {}, + "source": [ + "Dla $f(x,y) = x e^{x^2 + y^2}$:\n", + "$$\n", + "\\frac{\\partial f}{\\partial x}{(x, y)} = e^{x^2 + y^2} + 2x^2 e^{x^2 + y^2}\n", + "$$\n", + "$$\n", + "\\frac{\\partial f}{\\partial y}{(x, y)} = 2x y e^{x^2 + y^2}\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "id": "81d36af3-1408-4345-8ec1-7f107b5189c1", + "metadata": {}, + "source": [ + "Dla $ f(x,y) = \\frac{x^2 + y}{x^2 + y^2 + 1} $:\n", + "$$\n", + "\\frac{\\partial f}{\\partial x} {(x, y)} = \\frac{2x(x^2 + y^2 + 1) - (x^2 + y)(2x)}{(x^2 + y^2 + 1)^2} = \\frac{2x(x^2 + y^2 + 1 - y)}{(x^2 + y^2 + 1)^2}\n", + "$$\n", + "$$\n", + "\\frac{\\partial f}{\\partial y} {(x, y)} = \\frac{(x^2 + y^2 + 1) - (x^2 + y)(2y)}{(x^2 + y^2 + 1)^2} = \\frac{x^2 + y^2 + 1 - 2y(x^2 + y)}{(x^2 + y^2 + 1)^2}\n", + "$$" + ] + } + ], + "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 +}