{ "metadata": { "name": "", "signature": "sha256:06d5b5d3383544afe2882dc453f47ce8b1f21cf03cdd7fd9fb88a52700278c68" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "code", "collapsed": false, "input": [ "import numpy as np\n", "from scipy.integrate import odeint\n", "from scipy.interpolate import interp1d\n", "\n", "t = np.linspace(0, 4, 5)\n", "print t\n", "data = [1, 2, 3, 4, 5]\n", "\n", "linear_interpolation = interp1d(t, data)\n", "\n", "def func(y, t0):\n", " print 't0', t0\n", " return -2*y + linear_interpolation(t0)\n", "\n", "soln = odeint(func, 1, t[:-1])\n", "print odeint(func, 1, [3,])\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "[ 0. 1. 2. 3. 4.]\n", "t0 0.0\n", "t0 0.000109183148883\n", "t0 0.000109183148883\n", "t0 0.000218366297766\n", "t0 0.000218366297766\n", "t0 0.00300900612159\n", "t0 0.00300900612159\n", "t0 0.00579964594542\n", "t0 0.00579964594542\n", "t0 0.00859028576925\n", "t0 0.00859028576925\n", "t0 0.0197692611633\n", "t0 0.0197692611633\n", "t0 0.0171924756543\n", "t0 0.0171924756543\n", "t0 0.0257946655393\n", "t0 0.0257946655393\n", "t0 0.0343968554243\n", "t0 0.0343968554243\n", "t0 0.0429990453094\n", "t0 0.0429990453094\n", "t0 0.0602034250794\n", "t0 0.0602034250794\n", "t0 0.0774078048495\n", "t0 0.0774078048495\n", "t0 0.0946121846195\n", "t0 0.0946121846195\n", "t0 0.11181656439\n", "t0 0.11181656439" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n", "t0 0.12902094416\n", "t0 0.12902094416\n", "t0 0.183018039318\n", "t0 0.183018039318\n", "t0 0.237015134475\n", "t0 0.237015134475\n", "t0 0.291012229633\n", "t0 0.291012229633\n", "t0 0.27621570766\n", "t0 0.27621570766\n", "t0 0.315416280845\n", "t0 0.315416280845\n", "t0 0.35461685403\n", "t0 0.35461685403\n", "t0 0.393817427215\n", "t0 0.393817427215\n", "t0 0.4330180004\n", "t0 0.4330180004\n", "t0 0.472218573585\n", "t0 0.472218573585\n", "t0 0.534011749833\n", "t0 0.534011749833\n", "t0 0.595804926081\n", "t0 0.595804926081\n", "t0 0.657598102329\n", "t0 0.657598102329\n", "t0 0.719391278578\n", "t0 0.719391278578\n", "t0 0.781184454826\n", "t0 0.781184454826\n", "t0 0.842977631074\n", "t0 0.842977631074\n", "t0 0.904770807322\n", "t0 0.904770807322\n", "t0 0.988771686509\n", "t0 0.988771686509\n", "t0 1.0727725657\n", "t0 1.0727725657\n", "t0 1.15677344488\n", "t0 1.15677344488\n", "t0 1.24077432407\n", "t0 1.24077432407\n", "t0 1.32477520326\n", "t0 1.32477520326\n", "t0 1.40877608244\n", "t0 1.40877608244\n", "t0 1.49277696163\n", "t0 1.49277696163\n", "t0 1.59277696157\n", "t0 1.59277696157\n", "t0 1.69277696151\n", "t0 1.69277696151\n", "t0 1.79277696144\n", "t0 1.79277696144\n", "t0 1.89277696138\n", "t0 1.89277696138\n", "t0 1.99277696132\n", "t0 1.99277696132\n", "t0 2.09277696126\n", "t0 2.09277696126\n", "t0 2.1927769612\n", "t0 2.1927769612\n", "t0 2.29277696113\n", "t0 2.29277696113\n", "t0 2.40471541324\n", "t0 2.40471541324\n", "t0 2.51665386534\n", "t0 2.51665386534\n", "t0 2.62859231744\n", "t0 2.62859231744\n", "t0 2.74053076954\n", "t0 2.74053076954\n", "t0 2.85246922165\n", "t0 2.85246922165\n", "t0 2.96440767375\n", "t0 2.96440767375\n", "t0 3.07634612585\n", "t0 3.07634612585\n", "[[ 1.]]\n" ] } ], "prompt_number": 2 }, { "cell_type": "code", "collapsed": false, "input": [ "interp1d??" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 3 }, { "cell_type": "code", "collapsed": false, "input": [ "odeint??" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 4 }, { "cell_type": "code", "collapsed": false, "input": [ "soln" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 5, "text": [ "array([[ 1. ],\n", " [ 0.85150146],\n", " [ 1.26373673],\n", " [ 1.75185906]])" ] } ], "prompt_number": 5 }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [] } ], "metadata": {} } ] }