<?xml version="1.0" encoding="UTF-8"?>
<Worksheet><Version major="6" minor="1"/><View-Properties><Zoom percentage="100"/></View-Properties><Styles><Layout alignment="centred" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" name="_pstyle258" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"/><Layout alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" name="Heading 1" rightmargin="0.0" spaceabove="8.0" spacebelow="4.0"/><Layout alignment="left" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" name="Normal" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"/><Layout alignment="centred" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" name="Normal257" rightmargin="0.0" spaceabove="0.0" spacebelow="0.0"/><Layout alignment="left" bullet="indent" firstindent="0.0" leftmargin="0.0" linebreak="space" linespacing="0.0" name="List Item" rightmargin="0.0" spaceabove="3.0" spacebelow="3.0"/><Font background="[0,0,0]" bold="true" executable="true" family="Monospaced" foreground="[255,0,0]" name="Maple Input"/><Font background="[0,0,0]" family="Times New Roman" foreground="[255,0,0]" name="2D Input" underline="false"/><Font background="[0,0,0]" family="Times New Roman" name="2D Comment" underline="false"/><Font background="[0,0,0]" bold="false" family="Times New Roman" foreground="[0,128,128]" italic="false" name="Hyperlink" size="12" subscript="false" superscript="false" underline="true"/><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" name="Normal257" readonly="false" size="12" underline="false"/><Font background="[0,0,0]" italic="true" name="_cstyle257"/><Font background="[0,0,0]" italic="true" name="_cstyle256"/><Font background="[0,0,0]" bold="true" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" name="Heading 1" readonly="false" size="18" underline="false"/><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" name="List Item" readonly="false" size="12" underline="false"/><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" name="Normal" readonly="false" size="12" underline="false"/><Font background="[0,0,0]" family="Times New Roman" name="Page Number" underline="false"/><Font background="[0,0,0]" bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" italic="false" name="_pstyle258" readonly="false" size="12" underline="false"/></Styles><Page-Numbers enabled="false" first-number="1" first-numbered-page="1" horizontal-location="right" style="Page Number" vertical-location="bottom"/><Group><Input><Text-field layout="Normal257" style="Normal257"/><Text-field layout="Normal257" style="Normal257">ORDINARY DIFFERENTIAL EQUATIONS POWERTOOL</Text-field><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal257" style="Normal257">Lesson 2 -- Separable Equations</Text-field><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal257" style="Hyperlink"><Hyperlink executable="false" hyperlink="true" linktarget="http://www.math.sc.edu/~meade/" style="Hyperlink">Prof. Douglas B. Meade</Hyperlink></Text-field><Text-field layout="Normal257" style="Hyperlink"><Hyperlink executable="false" hyperlink="true" linktarget="http://www.math.sc.edu/~IMI/" style="Hyperlink">Industrial Mathematics Institute</Hyperlink></Text-field><Text-field layout="Normal257" style="Hyperlink"><Hyperlink executable="false" hyperlink="true" linktarget="http://www.math.sc.edu/" style="Hyperlink">Department of Mathematics</Hyperlink></Text-field><Text-field layout="Normal257" style="Hyperlink"><Hyperlink executable="false" hyperlink="true" linktarget="http://www.sc.edu/" style="Hyperlink">University of South Carolina</Hyperlink></Text-field><Text-field layout="Normal257" style="Normal257">Columbia, SC 29208
</Text-field><Text-field layout="Normal257" style="Normal257">URL:   <Hyperlink executable="false" hyperlink="true" linktarget="http://www.math.sc.edu/~meade/" style="Hyperlink">http://www.math.sc.edu/~meade/</Hyperlink></Text-field><Text-field layout="Normal257" style="Normal257">E-mail: <Hyperlink executable="false" hyperlink="true" linktarget="mailto:meade@math.sc.edu" style="Hyperlink">meade@math.sc.edu</Hyperlink> </Text-field><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal257" style="Normal257"><Font encoding="ISO8859-1">Copyright \251  2001  by Douglas B. Meade</Font></Text-field><Text-field layout="Normal257" style="Normal257">All rights reserved</Text-field><Text-field layout="Normal257" style="Normal257"/><Text-field layout="Normal257" style="Normal257">-------------------------------------------------------------------</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group><Section collapsed="true"><Title><Text-field layout="Heading 1" style="Heading 1">Outline for Lesson 2</Text-field></Title><Group><Input><Text-field layout="List Item" style="List Item"><Hyperlink executable="false" hyperlink="true" linktarget="Wks:#2.A" style="Hyperlink">2.A</Hyperlink> General Solution Method for Separable ODEs</Text-field><Text-field layout="List Item" style="List Item"><Hyperlink executable="false" hyperlink="true" linktarget="Wks:#2.B" style="Hyperlink">2.B</Hyperlink> Cross-Check of Solutions</Text-field><Text-field layout="List Item" style="List Item"><Hyperlink executable="false" hyperlink="true" linktarget="Wks:#2.C" style="Hyperlink">2.C</Hyperlink> Closing Comment (<Font bold="false" executable="false" italic="false" size="12" style="2D Input">separablesol</Font> and <Font bold="false" executable="false" italic="false" size="12" style="2D Input">dsolve</Font>)</Text-field></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group></Section><Section collapsed="true"><Title><Text-field layout="Heading 1" style="Heading 1">Initialization</Text-field></Title><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">restart;</Font></Text-field><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">with( DEtools ):</Font></Text-field><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">with( plots ):</Font></Text-field></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group></Section><Section collapsed="true"><Title><Text-field bookmark="2.A" layout="Heading 1" style="Heading 1">2.A General Solution Method for Separable ODEs</Text-field></Title><Group><Input><Text-field layout="Normal" style="Normal">A separable differential equation is a differential equation that can be written in the form</Text-field><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal257" style="Normal257"> <Equation input-equation="diff( y(x), x ) = f(y(x))/g(x)" style="2D Comment">NiMvLSUlZGlmZkc2JC0lInlHNiMlInhHRioqJi0lImZHNiNGJyIiIi0lImdHRikhIiI=</Equation> .</Text-field><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal" style="Normal">or equivalently, in one of the forms</Text-field><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal257" style="Normal257"><Equation input-equation="F(y(x))*`y'`(x) = G(x);" style="2D Comment">NiMvKiYtJSJGRzYjLSUieUc2IyUieEciIiItJSN5J0dGKkYsLSUiR0dGKg==</Equation> </Text-field><Text-field layout="Normal" style="Normal">or</Text-field><Text-field layout="Normal257" style="Normal257"><Equation input-equation="F(y)*dy = G(x)*dx;" style="2D Comment">NiMvKiYtJSJGRzYjJSJ5RyIiIiUjZHlHRikqJi0lIkdHNiMlInhHRiklI2R4R0Yp</Equation> </Text-field><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal" style="Normal">For example, consider the equation</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">ode := y(x)/x*diff( y(x), x ) = exp(x)/y(x);</Font></Text-field></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group><Group><Input><Text-field layout="Normal" style="Normal">As discussed in <Hyperlink executable="false" hyperlink="true" linktarget="Wks:Lesson01.mw#1.E" style="Hyperlink">Lesson 1 (Section E)</Hyperlink> , the <Hyperlink executable="false" hyperlink="true" linktarget="Help:DEtools,odeadvisor" style="Hyperlink">odeadvisor</Hyperlink> command can be used to check the classification of an ODE.  It yields</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">odeadvisor(ode,[separable]);</Font></Text-field></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group><Group><Input><Text-field layout="Normal" style="Normal">In this case, it is easily seen that the variables are separated in this ODE when it is multiplied by <Equation input-equation="y(x)*x;" style="2D Comment">NiMqJi0lInlHNiMlInhHIiIiRidGKA==</Equation>, resulting in</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">sep_var := ode * y(x)*x ;</Font></Text-field></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group><Group><Input><Text-field layout="Normal" style="Normal">Once in separated form, the solution is obtained by integration of the separated equation with respect to the independent variable.  The usual notation for this calculation involves the <Font bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" size="12" style="_cstyle256" underline="false">differential</Font>, the product of a derivative such as <Equation input-equation="`y'` = dy/dx;" style="2D Comment">NiMvJSN5J0cqJiUjZHlHIiIiJSNkeEchIiI=</Equation> and an increment such as <Equation input-equation="dx;" style="2D Comment">NiMlI2R4Rw==</Equation>.  By definition, the differential <Equation input-equation="dy;" style="2D Comment">NiMlI2R5Rw==</Equation> is <Equation input-equation="`y'`*dx;" style="2D Comment">NiMqJiUjeSdHIiIiJSNkeEdGJQ==</Equation>, so multiplication of the form</Text-field><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal257" style="Normal257"><Equation input-equation="F(y(x))*`y'`(x) = G(x);" style="2D Comment">NiMvKiYtJSJGRzYjLSUieUc2IyUieEciIiItJSN5J0dGKkYsLSUiR0dGKg==</Equation> </Text-field><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal" style="Normal">by the increment <Equation input-equation="dx;" style="2D Comment">NiMlI2R4Rw==</Equation> yields the form</Text-field><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal257" style="Normal257"><Equation input-equation="F(y)*dy = G(x)*dx;" style="2D Comment">NiMvKiYtJSJGRzYjJSJ5RyIiIiUjZHlHRikqJi0lIkdHNiMlInhHRiklI2R4R0Yp</Equation> </Text-field><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal" style="Normal">which yields to antidifferentiation of both sides via the notation</Text-field><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal257" style="Normal257"><Equation input-equation="int(F(y),y) = int(G(x),x);" style="2D Comment">NiMvLSUkaW50RzYkLSUiRkc2IyUieUdGKi1GJTYkLSUiR0c2IyUieEdGMA==</Equation> </Text-field><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal" style="Normal">Since Maple does not have a true implementation of differentials, the differentials <Equation input-equation="dy;" style="2D Comment">NiMlI2R5Rw==</Equation> and <Equation input-equation="dx;" style="2D Comment">NiMlI2R4Rw==</Equation> are supplied my Maple's <Hyperlink executable="false" hyperlink="true" linktarget="Help:Int" style="Hyperlink">Int</Hyperlink> command, the inert form of the <Hyperlink executable="false" hyperlink="true" linktarget="Help:int" style="Hyperlink">int</Hyperlink> command.  Integration is mapped, or placed, on each side of the equation by the <Hyperlink executable="false" hyperlink="true" linktarget="Help:map" style="Hyperlink">map</Hyperlink> command, yielding</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">int_sep_var := map( Int, sep_var, x );</Font></Text-field></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group><Group><Input><Text-field layout="Normal" style="Normal">Evaluating these indefinite integrals, and adding a constant of integration to one side of the equation, leads to an implicit form of the general solution:</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">gen_impl_soln := value( int_sep_var ) + (0=C);</Font></Text-field></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group><Group><Input><Text-field layout="Normal" style="Normal">(Maple will add <Font bold="false" executable="false" family="Times New Roman" foreground="[0,0,0]" size="12" style="_cstyle257" underline="false">equations</Font>, so the constant of integration can be "added" to the right side of the implicit solution by the dodge of adding the "equation" <Equation input-equation="0 = C;" style="2D Comment">NiMvIiIhJSJDRw==</Equation>.)</Text-field><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal" style="Normal">Of the three explicit expressions for <Equation input-equation="y(x);" style="2D Comment">NiMtJSJ5RzYjJSJ4Rw==</Equation> that are obtained from this implicit solution via</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">all_expl_soln := solve( gen_impl_soln, {y(x)} );</Font></Text-field></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group><Group><Input><Text-field layout="Normal" style="Normal">only one is real-valued, namely,</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">real_expl_soln := op(op(remove( has, {all_expl_soln}, I )));</Font></Text-field></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group><Group><Input><Text-field layout="Normal" style="Normal">Of course, the constant <Equation input-equation="3*C" style="2D Comment">NiMqJiIiJCIiIiUiQ0dGJQ==</Equation> could be replaced by a new constant, but this is not an essential step.</Text-field><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal" style="Normal">If an initial condition </Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">ic := y(1) = 2;</Font></Text-field></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group><Group><Input><Text-field layout="Normal" style="Normal">is provided, it can be used to determine a specific value for the constant in the general solution.  First, substitute <Equation input-equation="x = 1;" style="2D Comment">NiMvJSJ4RyIiIg==</Equation> into the general solution to get</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">eqn_for_C := subs(x=1,ic,real_expl_soln);</Font></Text-field></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group><Group><Input><Text-field layout="Normal" style="Normal">then solve for <Equation input-equation="C;" style="2D Comment">NiMlIkNH</Equation> to obtain</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">soln_C := solve( eqn_for_C, {C} );</Font></Text-field></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group><Group><Input><Text-field layout="Normal" style="Normal">The resulting (explicit) particular solution to the IVP is</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">real_part_soln := subs( soln_C, real_expl_soln );</Font></Text-field></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group><Group><Input><Text-field layout="Normal" style="Normal">A plot of this solution could be obtained with</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">plot( rhs(real_part_soln), x=-1..3 );</Font></Text-field></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group><Group><Input><Text-field layout="Normal" style="Normal">The initial condition can be applied earlier in the problem, at the time of the integration. This would require the following modification of the integration process, using definite instead of indefinite integrals.  </Text-field><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal" style="Normal">In Maple, integrating both sides of the equation</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">sep_var;</Font></Text-field></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group><Group><Input><Text-field layout="Normal" style="Normal">with respect to the independent variable is simplest.  The requisite calculation is</Text-field><Text-field layout="Normal" style="Normal"/><Text-field layout="_pstyle258" style="_pstyle258"><Equation input-equation="Int(y(alpha)^2*diff(y(alpha),alpha),alpha = 1 .. x) = Int(exp(alpha)*alpha,alpha = 1 .. x);" style="2D Comment">NiMvLSUkSW50RzYkKiYtJSJ5RzYjJSZhbHBoYUciIiMtJSVkaWZmRzYkRihGKyIiIi9GKztGMCUieEctRiU2JComLSUkZXhwR0YqRjBGK0YwRjE=</Equation> </Text-field><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal" style="Normal">where <Equation input-equation="alpha;" style="2D Comment">NiMlJmFscGhhRw==</Equation> is the variable of integration.</Text-field><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal" style="Normal">The evaluated form of this equation is obtained in Maple via</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">def_int_sep_var2 := map(int, sep_var, x=1.._x, continuous);</Font></Text-field></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group><Group><Input><Text-field layout="Normal" style="Normal">Substitution of the initial condition</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">ic;</Font></Text-field></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group><Group><Input><Text-field layout="Normal" style="Normal">leads to</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">part_impl_soln2 := subs( _x=x, ic, value( def_int_sep_var2 ) );</Font></Text-field></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group><Group><Input><Text-field layout="Normal" style="Normal">Solving explicitly for the real branch of <Equation input-equation="y(x);" style="2D Comment">NiMtJSJ5RzYjJSJ4Rw==</Equation> is implemented with</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">real_part_soln2 := op(op( remove( has, {solve( part_impl_soln2, {y(x)} )}, I ) ));</Font></Text-field></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group><Group><Input><Text-field layout="Normal" style="Normal">Alternatively, the dependent variable can be used as the integration variable on the left, and the independent variable, on the right.  Using <Equation input-equation="alpha;" style="2D Comment">NiMlJmFscGhhRw==</Equation> as the variable of integration on both sides, the equation</Text-field><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal257" style="Normal257"><Equation input-equation="int(F(y),y) = int(G(x),x);" style="2D Comment">NiMvLSUkaW50RzYkLSUiRkc2IyUieUdGKi1GJTYkLSUiR0c2IyUieEdGMA==</Equation> </Text-field><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal" style="Normal">becomes</Text-field><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal257" style="Normal257"><Equation input-equation="int(F(alpha),alpha = 2 .. y) = int(g(alpha),alpha = 1 .. x);" style="2D Comment">NiMvLSUkaW50RzYkLSUiRkc2IyUmYWxwaGFHL0YqOyIiIyUieUctRiU2JC0lImdHRikvRio7IiIiJSJ4Rw==</Equation> </Text-field><Text-field layout="Normal" style="Normal"/><Text-field layout="Normal" style="Normal">The simplest way to obtain this version of the integration is to rebuild the integrals via the tedious </Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">temp := eval(sep_var,{diff(y(x),x)=1,y(x)=alpha, x=alpha}):
new_form := Int(lhs(temp),alpha=rhs(ic)..y(x)) = Int(rhs(temp),alpha=op(lhs(ic))..x);</Font></Text-field></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group><Group><Input><Text-field layout="Normal" style="Normal">Evaluation leads to</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">eval_new_form := value(new_form);</Font></Text-field></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group><Group><Input><Text-field layout="Normal" style="Normal">and isolating the dependent variable leads to the same real-valued solution as found earlier.</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">op(op( remove( has, {solve( eval_new_form, {y(x)} )}, I ) ));</Font></Text-field></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group></Section><Section collapsed="true"><Title><Text-field bookmark="2.B" layout="Heading 1" style="Heading 1">2.B Cross-Check of Solutions</Text-field></Title><Group><Input><Text-field layout="Normal" style="Normal">Observe that all solutions, implicit or explicit, satisfy the original ODE:</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">odetest( gen_impl_soln, ode );
odetest( real_part_soln, ode );
odetest( part_impl_soln2, ode );
odetest( real_part_soln2, ode );</Font></Text-field></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group></Section><Section collapsed="true"><Title><Text-field bookmark="2.C" layout="Heading 1" style="Heading 1">2.C Closing Remarks</Text-field></Title><Group><Input><Text-field layout="Normal" style="Normal">The <Hyperlink executable="false" hyperlink="true" linktarget="Help:DEtools" style="Hyperlink">DEtools</Hyperlink> package contains <Hyperlink executable="false" hyperlink="true" linktarget="Help:DEtools,separablesol" style="Hyperlink">separablesol</Hyperlink>, a procedure designed specifically for the solution of separable ODEs.  Applying it to the differential equation</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">ode;</Font></Text-field></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group><Group><Input><Text-field layout="Normal" style="Normal">leads to </Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">separablesol( ode );</Font></Text-field></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group><Group><Input><Text-field layout="Normal" style="Normal">The <Hyperlink executable="false" hyperlink="true" linktarget="Help:dsolve" style="Hyperlink">dsolve</Hyperlink> command returns the same result, but might not have used the same method, as we can see from </Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">infolevel[dsolve] := 3:</Font></Text-field><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">dsolve( ode, y(x) );</Font></Text-field></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group><Group><Input><Text-field layout="Normal" style="Normal">To force <Hyperlink executable="false" hyperlink="true" linktarget="Help:dsolve" style="Hyperlink">dsolve</Hyperlink> to use a specific method, an optional argument can be specified, as in</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">dsolve( ode, y(x), [separable] );</Font></Text-field><Text-field layout="Normal" prompt="&gt; " style="Maple Input"><Font italic="false" size="12" underline="false">infolevel[dsolve] := 0:</Font></Text-field></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group><Group><Input><Text-field layout="Normal" style="Normal">For additional information about this syntax, please consult the help topic <Hyperlink executable="false" hyperlink="true" linktarget="Help:dsolve,education" style="Hyperlink">dsolve,education</Hyperlink>.</Text-field><Text-field layout="Normal" style="Normal"/></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group></Section><Group><Input><Text-field layout="Normal" style="Normal">[Back to <Hyperlink executable="false" hyperlink="true" linktarget="Wks:Lesson00.mw" style="Hyperlink">ODE Powertool Table of Contents</Hyperlink>]</Text-field></Input></Group><Group><Input><Text-field layout="Normal" prompt="&gt; " style="Maple Input"/></Input></Group><Text-field/><Text-field/><Text-field/><Text-field/><Text-field/><Text-field/></Worksheet>