Files
Mathematik-L-sungen/Mathematik für Ingenieure 1.ipynb
2026-03-14 21:31:50 +01:00

342 lines
26 KiB
Plaintext

{
"cells": [
{
"cell_type": "code",
"id": "902e4b59-77b9-4db6-9ec2-3cff55766dd5",
"metadata": {
"ExecuteTime": {
"end_time": "2026-03-14T20:28:45.280232Z",
"start_time": "2026-03-14T20:28:45.240030Z"
}
},
"source": [
"\n",
"def abs(c):\n",
" return (c.real**2 + c.imag**2)**0.5\n",
"\n",
"def add(c1, c2):\n",
" return complex(c1.real + c2.real, c1.imag + c2.imag)\n",
"\n",
"def sub(c1, c2):\n",
" # (a+bi) - (c+di) = (a-c) + (b-d)i\n",
" return complex(c1.real - c2.real, c1.imag - c2.imag)\n",
"\n",
"def mul(c1, c2):\n",
" # (a+bi)(c+di) = (ac-bd) + (ad+bc)i\n",
" return complex(c1.real * c2.real - c1.imag * c2.imag, c1.real * c2.imag + c1.imag * c2.real)\n",
"\n",
"\n",
"\n",
"print(mul(1+2j, 2+1j))"
],
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"5j\n"
]
}
],
"execution_count": 12
},
{
"cell_type": "code",
"id": "3fb82de2-875a-4dac-935a-e64bad48c895",
"metadata": {
"ExecuteTime": {
"end_time": "2026-03-14T20:28:45.320152Z",
"start_time": "2026-03-14T20:28:45.281685Z"
}
},
"source": [
"def add(v1, v2):\n",
" return (v1[0] + v2[0], v1[1] + v2[1])\n",
"\n",
"def sub(v1, v2):\n",
" return (v1[0] - v2[0], v1[1] - v2[1])\n",
"\n",
"\n",
"\n",
"print(add((2, 1), (3, 4)))\n"
],
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"(5, 5)\n"
]
}
],
"execution_count": 13
},
{
"cell_type": "code",
"id": "3a562f0e-162b-4760-ac6b-22587bf0bd60",
"metadata": {
"ExecuteTime": {
"end_time": "2026-03-14T20:28:45.659050Z",
"start_time": "2026-03-14T20:28:45.349987Z"
}
},
"source": [
"from sympy import Interval, Symbol\n",
"\n",
"# 1. Variable definieren\n",
"x = Symbol('x')\n",
"\n",
"# 2. Intervall erstellen (z.B. [2, 5) - links abgeschlossen, rechts offen)\n",
"# left_open=False (Standard) bedeutet inklusive 2, right_open=True bedeutet exklusive 5\n",
"mein_intervall = Interval(2, 5, left_open=False, right_open=True)\n",
"\n",
"# 3. In Mengenangabe / Ungleichung umwandeln\n",
"mengen_angabe = mein_intervall.as_relational(x)\n",
"\n",
"print(f\"Intervall: {mein_intervall}\")\n",
"print(f\"Mengenangabe: {mengen_angabe}\")\n"
],
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Intervall: Interval.Ropen(2, 5)\n",
"Mengenangabe: (2 <= x) & (x < 5)\n"
]
}
],
"execution_count": 14
},
{
"cell_type": "code",
"id": "5f024814-9f83-4d5f-a81f-4283e47e22b9",
"metadata": {
"ExecuteTime": {
"end_time": "2026-03-14T20:28:45.760535Z",
"start_time": "2026-03-14T20:28:45.660677Z"
}
},
"source": [
"from sympy import Symbol, And\n",
"\n",
"x = Symbol('x')\n",
"\n",
"# Eine Mengenangabe als logische Verknüpfung (2 <= x < 5)\n",
"mengen_angabe = And(x >= 2, x < 5)\n",
"\n",
"# Umwandlung in ein Intervall-Objekt\n",
"intervall = mengen_angabe.as_set()\n",
"\n",
"print(intervall) \n",
"# Ausgabe: [2, 5)\n"
],
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Interval.Ropen(2, 5)\n"
]
}
],
"execution_count": 15
},
{
"cell_type": "code",
"id": "b58b7c16-2c79-46a4-bde0-1d8fcc16cfa9",
"metadata": {
"ExecuteTime": {
"end_time": "2026-03-14T20:28:45.791872Z",
"start_time": "2026-03-14T20:28:45.765958Z"
}
},
"source": [
"from sympy import Symbol, solve_univariate_inequality\n",
"\n",
"x = Symbol('x')\n",
"\n",
"# Eine Ungleichung definieren\n",
"ungleichung = x**2 <= 4\n",
"\n",
"# Lösen und als Intervall ausgeben lassen (relational=False)\n",
"intervall = solve_univariate_inequality(ungleichung, x, relational=False)\n",
"\n",
"print(intervall)\n",
"# Ausgabe: [-2, 2]\n"
],
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Interval(-2, 2)\n"
]
}
],
"execution_count": 16
},
{
"cell_type": "code",
"id": "dd0522d3-0612-44f1-9504-1ba48542e37e",
"metadata": {
"ExecuteTime": {
"end_time": "2026-03-14T20:28:45.850425Z",
"start_time": "2026-03-14T20:28:45.792950Z"
}
},
"source": [
"from sympy import Symbol, solve_univariate_inequality\n",
"\n",
"x = Symbol('x')\n",
"\n",
"# Eine Ungleichung definieren\n",
"ungleichung = abs(x)<8\n",
"\n",
"# Lösen und als Intervall ausgeben lassen (relational=False)\n",
"intervall = solve_univariate_inequality(ungleichung, x, relational=False)\n",
"\n",
"print(intervall)"
],
"outputs": [
{
"ename": "AttributeError",
"evalue": "'Symbol' object has no attribute 'real'",
"output_type": "error",
"traceback": [
"\u001B[31m---------------------------------------------------------------------------\u001B[39m",
"\u001B[31mAttributeError\u001B[39m Traceback (most recent call last)",
"\u001B[36mCell\u001B[39m\u001B[36m \u001B[39m\u001B[32mIn[17]\u001B[39m\u001B[32m, line 6\u001B[39m\n\u001B[32m 3\u001B[39m x = Symbol(\u001B[33m'\u001B[39m\u001B[33mx\u001B[39m\u001B[33m'\u001B[39m)\n\u001B[32m 5\u001B[39m \u001B[38;5;66;03m# Eine Ungleichung definieren\u001B[39;00m\n\u001B[32m----> \u001B[39m\u001B[32m6\u001B[39m ungleichung = \u001B[38;5;28;43mabs\u001B[39;49m\u001B[43m(\u001B[49m\u001B[43mx\u001B[49m\u001B[43m)\u001B[49m<\u001B[32m8\u001B[39m\n\u001B[32m 8\u001B[39m \u001B[38;5;66;03m# Lösen und als Intervall ausgeben lassen (relational=False)\u001B[39;00m\n\u001B[32m 9\u001B[39m intervall = solve_univariate_inequality(ungleichung, x, relational=\u001B[38;5;28;01mFalse\u001B[39;00m)\n",
"\u001B[36mCell\u001B[39m\u001B[36m \u001B[39m\u001B[32mIn[12]\u001B[39m\u001B[32m, line 2\u001B[39m, in \u001B[36mabs\u001B[39m\u001B[34m(c)\u001B[39m\n\u001B[32m 1\u001B[39m \u001B[38;5;28;01mdef\u001B[39;00m\u001B[38;5;250m \u001B[39m\u001B[34mabs\u001B[39m(c):\n\u001B[32m----> \u001B[39m\u001B[32m2\u001B[39m \u001B[38;5;28;01mreturn\u001B[39;00m (\u001B[43mc\u001B[49m\u001B[43m.\u001B[49m\u001B[43mreal\u001B[49m**\u001B[32m2\u001B[39m + c.imag**\u001B[32m2\u001B[39m)**\u001B[32m0.5\u001B[39m\n",
"\u001B[31mAttributeError\u001B[39m: 'Symbol' object has no attribute 'real'"
]
}
],
"execution_count": 17
},
{
"cell_type": "code",
"id": "99ed5f78-8032-40eb-99ce-988de647549b",
"metadata": {
"ExecuteTime": {
"end_time": "2026-03-14T20:30:39.429411Z",
"start_time": "2026-03-14T20:30:39.352620Z"
}
},
"source": [
"import matplotlib.pyplot as plt\n",
"from sympy import Interval\n",
"\n",
"def plot_interval(intervall, x_range=(0, 10)):\n",
" fig, ax = plt.subplots(figsize=(8, 2))\n",
"\n",
" # Zahlenstrahl-Optik\n",
" ax.set_xlim(x_range)\n",
" ax.set_ylim(-1, 1)\n",
" ax.set_yticks([])\n",
" ax.spines['top'].set_visible(False)\n",
" ax.spines['right'].set_visible(False)\n",
" ax.spines['left'].set_visible(False)\n",
" ax.spines['bottom'].set_position('center')\n",
"\n",
" # Start- und Endpunkte extrahieren\n",
" start, end = float(intervall.start), float(intervall.end)\n",
"\n",
" # Die Linie für das Intervall zeichnen\n",
" ax.plot([start, end], [0, 0], color='blue', lw=4)\n",
"\n",
" # Punkte zeichnen: gefüllt = inklusive, weiß/leer = exklusive\n",
" ax.plot(start, 0, 'o', color='blue', mfc='blue' if not intervall.left_open else 'white', markersize=10)\n",
" ax.plot(end, 0, 'o', color='blue', mfc='blue' if not intervall.right_open else 'white', markersize=10)\n",
"\n",
" plt.title(f\"Intervall: {intervall}\")\n",
" plt.show()\n",
"\n",
"# Beispiel: [2, 5)\n",
"mein_intervall = Interval(2, 5, left_open=False, right_open=True)\n",
"plot_interval(mein_intervall, x_range=(0, 7))\n"
],
"outputs": [
{
"data": {
"text/plain": [
"<Figure size 800x200 with 1 Axes>"
],
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAogAAADECAYAAAAcTNCEAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjgsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvwVt1zgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAGmhJREFUeJzt3Ql0VOX9xvFfWBL2HSSCIJvIZlEUKwgoUCiCFaRAqZSwWrWCorSF0wWr1gWkR1xQqBRUamVRwbohKAIiHEGqBbXsZVE2EQREReD+z/Pmf9N5JwNkMhMCyfdzzkhmMpN7553rnWd+7zIpQRAEBgAAAPy/IuEPAAAAAAERAAAA2VBBBAAAgIeACAAAAA8BEQAAAB4CIgAAADwERAAAAHgIiAAAAPAQEAEAAOAhIALIZtq0aZaSkmL//e9/s2676qqr3AUnpzZT26kNC6Nt27ZZiRIlbOnSpXYm+P777+28886ziRMn5veuAGcVAiIQZ2hauXJl3G12+PBhu+uuu+ydd94p1KHpoYceytXj9eZe0AKXjgW1SXgpWrSoVatWzX7605/ap59+ameru+++2y6//HJr3bp11m0vvvii9enTx+rWrWulSpWyhg0b2p133mn79+9PWvtFXpYvX551v+LFi9sdd9xhf/7zn+3bb79N+PkBhUWx/N4BoDBQQPzTn/7kfqYKl7uAWKVKFRswYIAVNMOHD7fLLrvMVbr+/e9/25NPPunCz5o1a6x69ep2NtmzZ489/fTT7hLpxhtvtHPPPdf69etntWrVstWrV9tjjz1mr732mq1atcpKliyZcPtFql+/vnd94MCBNmrUKHvuueds0KBBud4WUJgQEIGz2Ndff22lS5fO7904Kx09etSOHz9uqamp+bofbdq0cVXDkKprN998sz3zzDP2m9/8xs4m06dPt2LFitm1117r3T579uxsH4xatGhhGRkZ9ve//92GDBmStPaLpUKFCtapUydXhSYgAjlDFzOQAFW0ypQpY5999pl1797d/Vy1alUbOXKkHTt2LKt7VbeJqohhN5i6nEP/+c9/3JtcpUqV3PitSy+91F5++eWYXdyLFi2yW265xXVH1qxZ0735hrdHmzRpkvudqlGiCpX2WV192o4qVHrD3Lt3b66e/9atW92+50b4fDRWTV2AaiOF3R49erhKVOj888+3jz/+2D2/sO0iw4a6KW+//XY3ziwtLc1Vjx588EEX/mJ1cT/88MNWr149d99//etfLtCE1d1Ia9eudY9RpUu+/PJL97o2a9bMvc7lypWzLl262EcffWTJpMAjGzdu9G7Xvmp72q6236FDB68rNbJNFy9ebL/85S+tcuXK7v79+/e3ffv2ZdvW66+/7randi9btqx17drVtXW8x3hozpw5rntZ94kUq2qu11mS0Z1+8OBBF/hP5kc/+pG9++677nUEcGpUEIEE6U2yc+fO7o1RAWTBggU2fvx4F0JUCdKb6RNPPOF+1pvi9ddf7x530UUXuX/1hqzxWjVq1HDdYHqznjlzpnszfuGFF7LeSEMKh/qbf/zjH10FUW/qekPWY9q1a+fdd8aMGdakSRNr2rSpuz5//nzbtGmT63JTONS2J0+e7P5V2FC4iIeCh4JbEAS5br9hw4ZZxYoVbcyYMS7IKcDdeuutbt9F13UfPcff/e537rZzzjknq+tez1nhRYFI3ZfvvfeejR492nbs2OEeG2nq1KluHJq6PBUQ09PT3ePVdtp+dNtpXGCvXr3cdbWbApCu16lTx3bt2uUCuB7/ySefuC7UZAgnBqlNQnp9FOQU9lRV1Lg6bVvBS+2vYy+S2k9VM30IUdDV8bdly5ascXvy7LPPugqejl0FarWl7nfllVe6MKpgntNjXNRFvmLFiqzrp7Jz5073r4YOJELH8qFDh9xrpTYaN26c+4AVTRVLHac6Prp165bQNoFCIQCQI1OnTlUKClasWJF1W0ZGhrvt7rvv9u578cUXBy1atMi6vmfPHne/MWPGZPu7HTp0CJo1axZ8++23WbcdP348aNWqVdCgQYNs27/yyiuDo0ePen+jb9++QbVq1bzbd+zYERQpUsTbt8OHD2fb/j/+8Q/3dxcvXpxtW5s3b866rV27du4SSddzchrR39H9xo0bl20bHTt2dM83NGLEiKBo0aLB/v37s25r0qRJtm3LPffcE5QuXTpYt26dd/uoUaPc39i6dau3/XLlygW7d+/27jtp0iT3u9WrV3u3N27cOGjfvn3Wdb0+x44dy/a80tLSvDYOt6XndzILFy509/vb3/7mjo/PP/88eOONN4L69esHKSkpwfvvv5913+7duwepqanBxo0bs27T/cuWLRu0bds2W5vq2Dty5EjW7WPHjnW3z507110/ePBg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"
},
"metadata": {},
"output_type": "display_data",
"jetTransient": {
"display_id": null
}
}
],
"execution_count": 19
},
{
"metadata": {
"ExecuteTime": {
"end_time": "2026-03-14T20:30:39.750872Z",
"start_time": "2026-03-14T20:30:39.440529Z"
}
},
"cell_type": "code",
"source": [
"from sympy import symbols, plot_implicit, And\n",
"\n",
"x = symbols('x')\n",
"# Zeichnet den Bereich auf der x-Achse\n",
"plot_implicit(And(x >= 2, x < 5), (x, 0, 7))\n"
],
"id": "cdb0080c9d06840a",
"outputs": [
{
"data": {
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
],
"image/png": "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"
},
"metadata": {},
"output_type": "display_data",
"jetTransient": {
"display_id": null
}
},
{
"data": {
"text/plain": [
"<sympy.plotting.backends.matplotlibbackend.matplotlib.MatplotlibBackend at 0x10eef2210>"
]
},
"execution_count": 20,
"metadata": {},
"output_type": "execute_result"
}
],
"execution_count": 20
}
],
"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.13.11"
}
},
"nbformat": 4,
"nbformat_minor": 5
}