Bekijk http://doc.sagemath.org/html/en/reference/calculus/sage/calculus/desolvers.html voor een overzicht van mogelijke oplossingsmethoden voor differentiaalvergelijkingen (ODE= ordinary differential equation).
|
Bepaal de meest algemene oplossing van de DV van 1e orde $y'(x) - 3y(x)=x$ .
|
Laat zien welke oplossingsmethode Sage daarvoor gebruikt.
|
Vereenvoudig de bekomen oplossing tot de oplossing uit de cursus, nl: $y(x)=-\frac{1}{3}x-\frac{1}{9}+Ce^{3x}$
|
Bepaal de meest algemene oplossing van de DV van 1e orde $y'(x) - \tan(x)y(x)=\cos(x)-2x\sin(x)$ :
|
En bepaal vervolgens de unieke oplossing waarvoor $y(\frac{\pi}{6})=0$ :
ics - (optional) the initial or boundary conditions
for a first-order equation, specify the initial $x$ and $y$
for a second-order equation, specify the initial $x$, $y$, and $dy/dx$, i.e. write $[x0,y(x0),y′(x0)]$
for a second-order boundary solution, specify initial and final $x$ and $y$ boundary conditions, i.e. write $[x0,y(x0),x1,y(x1)].$
|
Bepaal de unieke oplossing van de DV $a^2xy'(x)+y(x)(x^2-a^2)=0$ waarvoor $y(1)=\frac{1}{a^2}e^{-\frac{1}{2a^2}}$. Je mag hierbij aannemen dat $x>0$ en dat $a>0$.
For equations involving more variables we specify an independent variable:
ivar - (optional) the independent variable (hereafter called $x$), which must be specified if there is more than one independent variable in the equation.
|
Vergeet niet om de gemaakte veronderstellingen ongedaan te maken:
|
Bepaal de A.O. van de DV: $y''-2y'+3y=x^3$
|
Bepaal de oplossing van het beginwaardeprobleem: $y''-2y'+3y=x^3$ met $y(0)=y'(0)=0$.
|
Bepaal de oplossing van de DV van de 2de orde: $y''(x)-3y'(x)+2y(x)=xcos(x)+e^x$ waarbij $y(0)=1$ en $y'(0)=0$.
|
Vergelijk dit met de oplossing uit de oefeningencursus: $y(x)=C_1e^x+C_2e^{2x}+(\frac{1}{10}x-\frac{3}{25})\cos(x)+(-\frac{3}{10}x-\frac{17}{50})\sin(x)-xe^x$ met $C_1=1$ en $C_2=\frac{3}{25}$.
Bepaal de algemene oplossing van de volgende differentiaalvergelijking $y'''-4y"+3y'=(x+1)(\cos(x)+e^x)$ :
Traceback (click to the left of this block for traceback) ... NotImplementedError: Maxima was unable to solve this ODE. Consider to set option contrib_ode to True. Traceback (most recent call last): File "<stdin>", line 1, in <module> File "_sage_input_11.py", line 10, in <module> exec compile(u'open("___code___.py","w").write("# -*- coding: utf-8 -*-\\n" + _support_.preparse_worksheet_cell(base64.b64decode("eD12YXIoJ3gnKQp5PWZ1bmN0aW9uKCd5JykoeCkKZGVzb2x2ZShkaWZmKHkseCwzKS00KmRpZmYoeSx4LDIpKzMqZGlmZih5LHgsMSk9PSh4KzEpKihjb3MoeCkrZV54KSx5KQ=="),globals())+"\\n"); execfile(os.path.abspath("___code___.py")) File "", line 1, in <module> File "/var/sage/tmpRMlIIV/___code___.py", line 5, in <module> exec compile(u'desolve(diff(y,x,_sage_const_3 )-_sage_const_4 *diff(y,x,_sage_const_2 )+_sage_const_3 *diff(y,x,_sage_const_1 )==(x+_sage_const_1 )*(cos(x)+e**x),y) File "", line 1, in <module> File "/opt/sage/sage-7.4/local/lib/python2.7/site-packages/sage/calculus/desolvers.py", line 470, in desolve raise NotImplementedError("Maxima was unable to solve this ODE. Consider to set option contrib_ode to True.") NotImplementedError: Maxima was unable to solve this ODE. Consider to set option contrib_ode to True. |
Traceback (click to the left of this block for traceback) ... NotImplementedError: Maxima was unable to solve this ODE. Traceback (most recent call last): File "<stdin>", line 1, in <module> File "_sage_input_15.py", line 10, in <module> exec compile(u'open("___code___.py","w").write("# -*- coding: utf-8 -*-\\n" + _support_.preparse_worksheet_cell(base64.b64decode("ZGVzb2x2ZShkaWZmKHkseCwzKS00KmRpZmYoeSx4LDIpKzMqZGlmZih5LHgsMSk9PSh4KzEpKihjb3MoeCkrZV54KSx5LGNvbnRyaWJfb2RlPXRydWUp"),globals())+"\\n"); execfile(os.path.abspath("___code___.py")) File "", line 1, in <module> File "/var/sage/tmpBoTGHv/___code___.py", line 3, in <module> exec compile(u'desolve(diff(y,x,_sage_const_3 )-_sage_const_4 *diff(y,x,_sage_const_2 )+_sage_const_3 *diff(y,x,_sage_const_1 )==(x+_sage_const_1 )*(cos(x)+e**x),y,contrib_ode=true) File "", line 1, in <module> File "/opt/sage/sage-7.4/local/lib/python2.7/site-packages/sage/calculus/desolvers.py", line 468, in desolve raise NotImplementedError("Maxima was unable to solve this ODE.") NotImplementedError: Maxima was unable to solve this ODE. |
desolve()
- Compute the “general solution” to a 1st or 2nd order ODE via Maxima.
Bepaal de A.O. van die differentiaalvergelijking met verlaging van de orde (dus naar $y'$) en om daarna $y$ te bepalen.
|
|
Gegeven het stelsel lineaire 1ste orde differentiaalvergelijkingen:
$\begin{cases} y'_1&=y_1+2y_2\\y'_2&=3y_1+2y_2 \end{cases} $ met $y_1(0)=0$ en $y_2(0)=-4$.
a) Bepaal de oplossing van dit stelsel lineaire 1ste orde differentiaalvergelijkingen als volgt:
|
|
b) Bepaal met onderstaande methode van Sage de oplossing van dit stelsel.
File: /opt/sage/sage-7.4/local/lib/python2.7/site-packages/sage/calculus/desolvers.py Type: <type ‘function’> Definition: desolve_system(des, vars, ics=None, ivar=None) Docstring:
File: /opt/sage/sage-7.4/local/lib/python2.7/site-packages/sage/calculus/desolvers.py Type: <type ‘function’> Definition: desolve_system(des, vars, ics=None, ivar=None) Docstring:
|
|
De 2e orde differentiaalvergelijking $2y''+5y'-3y=0$ met beginvoorwaarden $y(0)=-4$ en $y'(0)=9$ kan geschreven worden als het stelsel 1e orde differentiaalvergelijkingen $$\begin{cases} y'_1&=y_2\\y'_2&=\frac{3}{2}y_1-\frac{5}{2}y_2 \end{cases} $$ met $y_1(0)=-4$ en $y_2(0)=9$. (ga dit na)
Los met Sage zowel de 2e orde differentiaalvergelijking als het stelsel 1e orde differentiaalvergelijkingen op en controleer dat de oplossingen wel degelijk overeenkomen.
|
|