From 34fc2269257957d10e564b7da53a6d3e439e82bc Mon Sep 17 00:00:00 2001 From: Dane Sabo Date: Mon, 30 Sep 2024 14:54:05 -0400 Subject: [PATCH] class 9/30 me2016 --- .../DulacExample-checkpoint.ipynb | 6 + .../Untitled-checkpoint.ipynb | 6 + ME_2016/2024-09-23 Nonlinear Pendulum.ipynb | 29 +- ME_2016/DulacExample.ipynb | 157 +++++++++ ME_2016/Untitled.ipynb | 321 ++++++++++++++++++ 5 files changed, 500 insertions(+), 19 deletions(-) create mode 100644 ME_2016/.ipynb_checkpoints/DulacExample-checkpoint.ipynb create mode 100644 ME_2016/.ipynb_checkpoints/Untitled-checkpoint.ipynb create mode 100644 ME_2016/DulacExample.ipynb create mode 100644 ME_2016/Untitled.ipynb diff --git a/ME_2016/.ipynb_checkpoints/DulacExample-checkpoint.ipynb b/ME_2016/.ipynb_checkpoints/DulacExample-checkpoint.ipynb new file mode 100644 index 0000000..363fcab --- /dev/null +++ b/ME_2016/.ipynb_checkpoints/DulacExample-checkpoint.ipynb @@ -0,0 +1,6 @@ +{ + "cells": [], + "metadata": {}, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/ME_2016/.ipynb_checkpoints/Untitled-checkpoint.ipynb b/ME_2016/.ipynb_checkpoints/Untitled-checkpoint.ipynb new file mode 100644 index 0000000..363fcab --- /dev/null +++ b/ME_2016/.ipynb_checkpoints/Untitled-checkpoint.ipynb @@ -0,0 +1,6 @@ +{ + "cells": [], + "metadata": {}, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/ME_2016/2024-09-23 Nonlinear Pendulum.ipynb b/ME_2016/2024-09-23 Nonlinear Pendulum.ipynb index b2dd9a8..2a1cfde 100644 --- a/ME_2016/2024-09-23 Nonlinear Pendulum.ipynb +++ b/ME_2016/2024-09-23 Nonlinear Pendulum.ipynb @@ -185,7 +185,7 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": 10, "id": "ed7258d8-1908-43bd-89e4-0048e9ff5a1f", "metadata": {}, "outputs": [ @@ -205,7 +205,7 @@ }, { "cell_type": "code", - "execution_count": 19, + "execution_count": 11, "id": "9ec4806e-3199-49f0-9217-e7f20f903266", "metadata": {}, "outputs": [], @@ -218,7 +218,7 @@ }, { "cell_type": "code", - "execution_count": 25, + "execution_count": 12, "id": "092f82d4-5aae-4056-b9ee-2453b651c988", "metadata": {}, "outputs": [ @@ -253,7 +253,7 @@ }, { "cell_type": "code", - "execution_count": 41, + "execution_count": 13, "id": "024812c6-e894-4ede-8594-99da95b5b92c", "metadata": {}, "outputs": [ @@ -262,23 +262,14 @@ "output_type": "stream", "text": [ "[1. 1.]\n", + "[-1. -0.5]\n", + "[ 0.2 -1. ]\n", "[-1. -0.5]\n" ] }, - { - "ename": "AttributeError", - "evalue": "'EigResult' object has no attribute 'eignvalues'", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mAttributeError\u001b[0m Traceback (most recent call last)", - "Cell \u001b[0;32mIn[41], line 9\u001b[0m\n\u001b[1;32m 6\u001b[0m \u001b[38;5;28mprint\u001b[39m(np\u001b[38;5;241m.\u001b[39mlinalg\u001b[38;5;241m.\u001b[39meig(J)\u001b[38;5;241m.\u001b[39meigenvalues)\n\u001b[1;32m 8\u001b[0m pointcolor \u001b[38;5;241m=\u001b[39m \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mro\u001b[39m\u001b[38;5;124m'\u001b[39m\n\u001b[0;32m----> 9\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m(\u001b[38;5;28meval\u001b[39m\u001b[38;5;241m.\u001b[39meigenvalues[\u001b[38;5;241m0\u001b[39m]\u001b[38;5;241m<\u001b[39m\u001b[38;5;241m0\u001b[39m \u001b[38;5;129;01mand\u001b[39;00m \u001b[38;5;28;43meval\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43meignvalues\u001b[49m[\u001b[38;5;241m1\u001b[39m]\u001b[38;5;241m<\u001b[39m\u001b[38;5;241m0\u001b[39m):\n\u001b[1;32m 10\u001b[0m pointcolor \u001b[38;5;241m=\u001b[39m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124myo\u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[1;32m 12\u001b[0m plt\u001b[38;5;241m.\u001b[39mplot(criticalpoints[k][\u001b[38;5;241m0\u001b[39m],criticalpoints[k][\u001b[38;5;241m1\u001b[39m],\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124myo\u001b[39m\u001b[38;5;124m\"\u001b[39m)\n", - "\u001b[0;31mAttributeError\u001b[0m: 'EigResult' object has no attribute 'eignvalues'" - ] - }, { "data": { - "image/png": "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", + "image/png": "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f6N9Pp/KysrU09OT/QH/Y8ZeM+Lz+RSNRhWPx9PLksmk4vF4RuP7bxUVFSMu7Pv666+1ePHinM46nU0kZ0zMRLP+8MMP9cEHH6ihoUGLFi1yY9RpLVvP6WQyqaGhoVyMOCM4zXnBggV68803tW3btvSfP/7xj1qyZIm2bdumW2+91c3xp41sPJ+TyaTOnj2rW265JVdjztwjI5JUW1urvXv3KhqNqry8XO3t7RocHNTy5cslSXv27NHcuXO1bt06SdLKlSu1efNmtbW16d5779Xx48f13Xff6dlnnzX4KKY+pznbtq3z58+nf7506ZJ++OEH5eXl8X82v8Np1q2trWpqatKmTZs0f/789P8d5eXlKS8vz9CjmPqc5tzS0qJFixapuLhYQ0ND+uqrr/T555/rmWeeMfgopj4nOQcCAd12220Z28+aNUuSRixHJqfP5+bmZi1evFihUEi//PKLDh06pEQioZqampzNOKPLSFVVlXp7e9XU1CTLslRaWqqGhob0oamLFy/K4/Gk17/99tu1adMmvf/++3rvvfcUDof10ksv8UT/HU5zvnTpUsaHFLW1tamtrU133nmnNm/e7PL004vTrI8cOSLbtrVjx46M/dTV1WnNmjVujj6tOM15cHBQ+/fv188//6xAIKCFCxfqhRdeUFVVlaFHMD04zRkT4zTnq1ev6q233pJlWZo1a5ai0ai2bNmikpKSnM3oSQ2fdAMAADBgxl4zAgAApgfKCAAAMIoyAgAAjKKMAAAAoygjAADAKMoIAAAwijICAACMoowAAACjKCMAAMAoyggAADCKMgIAAIyijAAAAKP+D8jshfUYdwR5AAAAAElFTkSuQmCC", "text/plain": [ "
" ] @@ -296,7 +287,7 @@ " print(np.linalg.eig(J).eigenvalues)\n", "\n", " pointcolor = 'ro'\n", - " if(eval.eigenvalues[0]<0 and eval.eignvalues[1]<0):\n", + " if(eval.eigenvalues[0]<0 and eval.eigenvalues[1]<0):\n", " pointcolor = \"yo\"\n", " \n", " plt.plot(criticalpoints[k][0],criticalpoints[k][1],\"yo\")" @@ -337,7 +328,7 @@ }, { "cell_type": "code", - "execution_count": 42, + "execution_count": 14, "id": "f2daadfc-ce2b-4a33-b882-22c7a14c51c5", "metadata": {}, "outputs": [ @@ -347,7 +338,7 @@ "Text(0.5, 1.0, 'Exothermic Reactor with Tc = 305.0 K')" ] }, - "execution_count": 42, + "execution_count": 14, "metadata": {}, "output_type": "execute_result" }, diff --git a/ME_2016/DulacExample.ipynb b/ME_2016/DulacExample.ipynb new file mode 100644 index 0000000..efd3332 --- /dev/null +++ b/ME_2016/DulacExample.ipynb @@ -0,0 +1,157 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "id": "0e643cc2-eca9-4b7f-b942-bd15d13b7f60", + "metadata": {}, + "outputs": [], + "source": [ + "from scipy.integrate import odeint\n", + "import matplotlib.pyplot as plt\n", + "import numpy as np\n", + "import pylab as pl" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "d0b6f7fc-f2dd-4a25-a264-c72a8fb1b252", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "
" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "plt.figure(figsize = (12,12))\n" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "ae79c57a-5d98-480f-a8ac-3fb7b066be4b", + "metadata": {}, + "outputs": [], + "source": [ + "omega = 2\n", + "omegasq = omega**2\n", + "a, b, c, d = 0, 1, omegasq, -0.5" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "cb8788a7-9f2c-4924-82ca-782807c45d2f", + "metadata": {}, + "outputs": [], + "source": [ + "def dx_dt(xx,t):\n", + " x = xx[0]\n", + " y = xx[1]\n", + " term1 = y\n", + " term2 = -y - x + x**2 + y**2\n", + " return [term1, term2]" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "cb60b342-c69a-4f1f-821e-5dd0a2b998ed", + "metadata": {}, + "outputs": [], + "source": [ + "maxtime = .5\n", + "xmin = -2\n", + "xmax = 2\n", + "ts = np.linspace(0, maxtime, 1000)\n", + "ic = np.linspace(xmin, xmax, 8) +0.001" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "234edaa5-eec7-4663-9a31-a2d5428037c1", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/tmp/ipykernel_31511/3640988554.py:4: ODEintWarning: Excess work done on this call (perhaps wrong Dfun type). Run with full_output = 1 to get quantitative information.\n", + " xs = odeint(dx_dt,x0,ts)\n" + ] + }, + { + "data": { + "text/plain": [ + "(-2.0, 2.0)" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "for r in ic:\n", + " for s in ic:\n", + " x0 = [r,s]\n", + " xs = odeint(dx_dt,x0,ts)\n", + " plt.plot(xs[:,0],xs[:,1],\"b\")\n", + "\n", + "plt.xlabel('x')\n", + "plt.ylabel('y')\n", + "plt.xlim(xmin,xmax)\n", + "plt.ylim(xmin,xmax)" + ] + } + ], + "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.12.3" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/ME_2016/Untitled.ipynb b/ME_2016/Untitled.ipynb new file mode 100644 index 0000000..6ae1d75 --- /dev/null +++ b/ME_2016/Untitled.ipynb @@ -0,0 +1,321 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "2ebd353f-ace3-422b-bcd3-f93019dcd2f7", + "metadata": {}, + "source": [ + "# " + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "c6fdaca9-fd8a-473d-8ae4-d54486617890", + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "$\\displaystyle t^{2} y$" + ], + "text/plain": [ + "t**2*y" + ] + }, + "execution_count": 1, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from sympy import *\n", + "t = symbols('t')\n", + "x = Function('x')(t)\n", + "y = symbols('y')\n", + "x=y*t**2\n", + "x" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "c8fa8842-ac96-40c0-95be-48626f4951ea", + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "$\\displaystyle 2 t y$" + ], + "text/plain": [ + "2*t*y" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "diff(x, t)" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "0fe70daa-5646-495d-9937-13e28c59200a", + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "$\\displaystyle \\frac{t^{2} y^{2}}{2}$" + ], + "text/plain": [ + "t**2*y**2/2" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "integrate(x,y)" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "d7f45a70-e116-4cb4-81cf-95eee393f1a6", + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "$\\displaystyle \\frac{t^{3} y}{3}$" + ], + "text/plain": [ + "t**3*y/3" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "integrate(x,t)" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "f8d0291f-aca1-46bd-a73a-2b0f2ea1e1cc", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "3" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "newfun = lambdify([t,y],x)\n", + "newfun(1,3)" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "73475974-e48a-42cf-bb44-12c2f120939e", + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "$\\displaystyle x{\\left(t \\right)} = C_{1} + C_{2} t$" + ], + "text/plain": [ + "Eq(x(t), C1 + C2*t)" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "x = Function('x')(t)\n", + "results = dsolve(Derivative(x,t,t))\n", + "results" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "e05c3b36-9175-47ac-bbd0-5d20cb6a083b", + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "$\\displaystyle \\epsilon^{3} x_{3}{\\left(t \\right)} + \\epsilon^{2} x_{2}{\\left(t \\right)} + \\epsilon x_{1}{\\left(t \\right)} + x_{0}{\\left(t \\right)}$" + ], + "text/plain": [ + "epsilon**3*x3(t) + epsilon**2*x2(t) + epsilon*x1(t) + x0(t)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "x0 = Function('x0')(t); x1 = Function('x1')(t); x2 = Function('x2')(t); x3 = Function('x3')(t); x = Function('x')\n", + "t = Symbol('t')\n", + "eps = Symbol('epsilon')\n", + "x = x0 + eps*x1 + eps**2 *x2 + eps**3 *x3\n", + "display(x)" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "c89c7a7f-0e1d-4f46-85bf-d0585dc7f0bf", + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "$\\displaystyle \\epsilon^{3} x_{3}{\\left(t \\right)} + \\epsilon^{3} \\frac{d}{d t} x_{3}{\\left(t \\right)} + \\epsilon^{2} x_{2}{\\left(t \\right)} + \\epsilon^{2} \\frac{d}{d t} x_{2}{\\left(t \\right)} - \\epsilon \\left(\\epsilon^{3} x_{3}{\\left(t \\right)} + \\epsilon^{2} x_{2}{\\left(t \\right)} + \\epsilon x_{1}{\\left(t \\right)} + x_{0}{\\left(t \\right)}\\right)^{2} + \\epsilon x_{1}{\\left(t \\right)} + \\epsilon \\frac{d}{d t} x_{1}{\\left(t \\right)} + x_{0}{\\left(t \\right)} + \\frac{d}{d t} x_{0}{\\left(t \\right)}$" + ], + "text/plain": [ + "epsilon**3*x3(t) + epsilon**3*Derivative(x3(t), t) + epsilon**2*x2(t) + epsilon**2*Derivative(x2(t), t) - epsilon*(epsilon**3*x3(t) + epsilon**2*x2(t) + epsilon*x1(t) + x0(t))**2 + epsilon*x1(t) + epsilon*Derivative(x1(t), t) + x0(t) + Derivative(x0(t), t)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "expr = x.diff(t) + x - eps*x**2\n", + "display(expr)" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "1f29a2d0-d861-45ac-8442-7cc4e52a496a", + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "$\\displaystyle - \\epsilon^{7} x_{3}^{2}{\\left(t \\right)} - 2 \\epsilon^{6} x_{2}{\\left(t \\right)} x_{3}{\\left(t \\right)} - 2 \\epsilon^{5} x_{1}{\\left(t \\right)} x_{3}{\\left(t \\right)} - \\epsilon^{5} x_{2}^{2}{\\left(t \\right)} - 2 \\epsilon^{4} x_{0}{\\left(t \\right)} x_{3}{\\left(t \\right)} - 2 \\epsilon^{4} x_{1}{\\left(t \\right)} x_{2}{\\left(t \\right)} - 2 \\epsilon^{3} x_{0}{\\left(t \\right)} x_{2}{\\left(t \\right)} - \\epsilon^{3} x_{1}^{2}{\\left(t \\right)} + \\epsilon^{3} x_{3}{\\left(t \\right)} + \\epsilon^{3} \\frac{d}{d t} x_{3}{\\left(t \\right)} - 2 \\epsilon^{2} x_{0}{\\left(t \\right)} x_{1}{\\left(t \\right)} + \\epsilon^{2} x_{2}{\\left(t \\right)} + \\epsilon^{2} \\frac{d}{d t} x_{2}{\\left(t \\right)} - \\epsilon x_{0}^{2}{\\left(t \\right)} + \\epsilon x_{1}{\\left(t \\right)} + \\epsilon \\frac{d}{d t} x_{1}{\\left(t \\right)} + x_{0}{\\left(t \\right)} + \\frac{d}{d t} x_{0}{\\left(t \\right)}$" + ], + "text/plain": [ + "-epsilon**7*x3(t)**2 - 2*epsilon**6*x2(t)*x3(t) - 2*epsilon**5*x1(t)*x3(t) - epsilon**5*x2(t)**2 - 2*epsilon**4*x0(t)*x3(t) - 2*epsilon**4*x1(t)*x2(t) - 2*epsilon**3*x0(t)*x2(t) - epsilon**3*x1(t)**2 + epsilon**3*x3(t) + epsilon**3*Derivative(x3(t), t) - 2*epsilon**2*x0(t)*x1(t) + epsilon**2*x2(t) + epsilon**2*Derivative(x2(t), t) - epsilon*x0(t)**2 + epsilon*x1(t) + epsilon*Derivative(x1(t), t) + x0(t) + Derivative(x0(t), t)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "expr = expr.expand()\n", + "display(expr)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "3c1ef020-baf0-459b-8066-d70e86912203", + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "$\\displaystyle - \\epsilon^{7} x_{3}^{2}{\\left(t \\right)} - 2 \\epsilon^{6} x_{2}{\\left(t \\right)} x_{3}{\\left(t \\right)} + \\epsilon^{5} \\left(- 2 x_{1}{\\left(t \\right)} x_{3}{\\left(t \\right)} - x_{2}^{2}{\\left(t \\right)}\\right) + \\epsilon^{4} \\left(- 2 x_{0}{\\left(t \\right)} x_{3}{\\left(t \\right)} - 2 x_{1}{\\left(t \\right)} x_{2}{\\left(t \\right)}\\right) + \\epsilon^{3} \\left(- 2 x_{0}{\\left(t \\right)} x_{2}{\\left(t \\right)} - x_{1}^{2}{\\left(t \\right)} + x_{3}{\\left(t \\right)} + \\frac{d}{d t} x_{3}{\\left(t \\right)}\\right) + \\epsilon^{2} \\left(- 2 x_{0}{\\left(t \\right)} x_{1}{\\left(t \\right)} + x_{2}{\\left(t \\right)} + \\frac{d}{d t} x_{2}{\\left(t \\right)}\\right) + \\epsilon \\left(- x_{0}^{2}{\\left(t \\right)} + x_{1}{\\left(t \\right)} + \\frac{d}{d t} x_{1}{\\left(t \\right)}\\right) + x_{0}{\\left(t \\right)} + \\frac{d}{d t} x_{0}{\\left(t \\right)}$" + ], + "text/plain": [ + "-epsilon**7*x3(t)**2 - 2*epsilon**6*x2(t)*x3(t) + epsilon**5*(-2*x1(t)*x3(t) - x2(t)**2) + epsilon**4*(-2*x0(t)*x3(t) - 2*x1(t)*x2(t)) + epsilon**3*(-2*x0(t)*x2(t) - x1(t)**2 + x3(t) + Derivative(x3(t), t)) + epsilon**2*(-2*x0(t)*x1(t) + x2(t) + Derivative(x2(t), t)) + epsilon*(-x0(t)**2 + x1(t) + Derivative(x1(t), t)) + x0(t) + Derivative(x0(t), t)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "epsforms = collect(expr,eps)\n", + "display(epsforms)" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "id": "d79677a6-b658-4970-aca7-8aaf8dfdd5ad", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[x0(t) + Derivative(x0(t), t),\n", + " -x0(t)**2 + x1(t) + Derivative(x1(t), t),\n", + " -2*x0(t)*x1(t) + x2(t) + Derivative(x2(t), t),\n", + " -2*x0(t)*x2(t) - x1(t)**2 + x3(t) + Derivative(x3(t), t)]" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "ename": "TypeError", + "evalue": "'x0' object is not callable", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mTypeError\u001b[0m Traceback (most recent call last)", + "Cell \u001b[0;32mIn[17], line 7\u001b[0m\n\u001b[1;32m 4\u001b[0m EqLHS\u001b[38;5;241m.\u001b[39mappend(collect(epsforms, eps, evaluate\u001b[38;5;241m=\u001b[39m\u001b[38;5;28;01mFalse\u001b[39;00m)[eps\u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39mk])\n\u001b[1;32m 5\u001b[0m display(EqLHS)\n\u001b[0;32m----> 7\u001b[0m a \u001b[38;5;241m=\u001b[39m dsolve(Eq(EqLHS[\u001b[38;5;241m0\u001b[39m],\u001b[38;5;241m0\u001b[39m),x0, ics \u001b[38;5;241m=\u001b[39m{\u001b[43mx0\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;241;43m0\u001b[39;49m\u001b[43m)\u001b[49m:\u001b[38;5;241m2\u001b[39m})\n", + "\u001b[0;31mTypeError\u001b[0m: 'x0' object is not callable" + ] + } + ], + "source": [ + "EqLHS = [ ] \n", + "Orders = [0,1,2,3]\n", + "for k in Orders:\n", + " EqLHS.append(collect(epsforms, eps, evaluate=False)[eps**k])\n", + "display(EqLHS)\n", + "\n", + "a = dsolve(Eq(EqLHS[0],0),x0, ics ={x0(0):2})" + ] + } + ], + "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.12.3" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +}