<rss xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" version="2.0">
  <channel>
    <title>MaplePrimes - Newest Questions</title>
    <link>http://www.mapleprimes.com/questions</link>
    <language>en-us</language>
    <copyright>2026 Maplesoft, A Division of Waterloo Maple Inc.</copyright>
    <generator>Maplesoft Document System</generator>
    <lastBuildDate>Thu, 21 May 2026 14:44:03 GMT</lastBuildDate>
    <pubDate>Thu, 21 May 2026 14:44:03 GMT</pubDate>
    <itunes:subtitle />
    <itunes:summary />
    <description>The questions most recently asked on MaplePrimes</description>
    <image>
      <url>http://www.mapleprimes.com/images/mapleprimeswhite.jpg</url>
      <title>MaplePrimes - Newest Questions</title>
      <link>http://www.mapleprimes.com/questions</link>
    </image>
    <item>
      <title>Removing spaces in plots:-sparsematrixplot</title>
      <link>http://www.mapleprimes.com/questions/243605-Removing-Spaces-In-Plotssparsematrixplot?ref=Feed:MaplePrimes:New%20Questions</link>
      <itunes:summary>&lt;p&gt;&lt;br&gt;
&lt;br&gt;
&lt;strong&gt;M&lt;/strong&gt; being some sparse matrix, &lt;strong&gt;plots:-sparsematrixplot(M)&lt;/strong&gt; displays a patchwork of squares with two different colors: one for elements of &lt;strong&gt;M&lt;/strong&gt; different 0 and the other for elements of &lt;strong&gt;M&lt;/strong&gt; equal to 0.&lt;br&gt;
The squares are separated by what visually appears like blank lines (in fact tere are no such lines, just gaps between the different squares making them not adjacent).&lt;br&gt;
&lt;br&gt;
So my question: Is it possible, &lt;strong&gt;without resorting to any workaround based upon PLOT(POLYGONS(..)) or plottools functions&lt;/strong&gt;&amp;nbsp;(I know how to write such workarounds and I&amp;#39;m not interested in that) to suppress these &amp;quot;white lines&amp;quot;, or otherwise said to make the squares adjacent?&amp;nbsp;&lt;br&gt;
I thought that maybe some (hidden?) option acting like &lt;strong&gt;style=patchnogrid&lt;/strong&gt;&amp;nbsp;could exist, or to an undocumented feaure...&lt;br&gt;
&lt;br&gt;
Thanks for your reply.&lt;/p&gt;
</itunes:summary>
      <description>&lt;p&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;M&lt;/strong&gt; being some sparse matrix, &lt;strong&gt;plots:-sparsematrixplot(M)&lt;/strong&gt; displays a patchwork of squares with two different colors: one for elements of &lt;strong&gt;M&lt;/strong&gt; different 0 and the other for elements of &lt;strong&gt;M&lt;/strong&gt; equal to 0.&lt;br /&gt;
The squares are separated by what visually appears like blank lines (in fact tere are no such lines, just gaps between the different squares making them not adjacent).&lt;br /&gt;
&lt;br /&gt;
So my question: Is it possible, &lt;strong&gt;without resorting to any workaround based upon PLOT(POLYGONS(..)) or plottools functions&lt;/strong&gt;&amp;nbsp;(I know how to write such workarounds and I&amp;#39;m not interested in that) to suppress these &amp;quot;white lines&amp;quot;, or otherwise said to make the squares adjacent?&amp;nbsp;&lt;br /&gt;
I thought that maybe some (hidden?) option acting like &lt;strong&gt;style=patchnogrid&lt;/strong&gt;&amp;nbsp;could exist, or to an undocumented feaure...&lt;br /&gt;
&lt;br /&gt;
Thanks for your reply.&lt;/p&gt;
</description>
      <guid>243605</guid>
      <pubDate>Thu, 21 May 2026 09:43:24 Z</pubDate>
      <itunes:author>sand15</itunes:author>
      <author>sand15</author>
    </item>
    <item>
      <title>3-D histograms?</title>
      <link>http://www.mapleprimes.com/questions/243603-3D-Histograms?ref=Feed:MaplePrimes:New%20Questions</link>
      <itunes:summary>&lt;p&gt;The title is the question. I am fairly certain that Maple in itself (up to 2023) does not have this. There is of course Statistics:-Histogram, but that is a 1-D histogram only.&lt;/p&gt;

&lt;p&gt;Given 2 Vectors of floats, say, xvec[n] and yvec[n]. The idea would be to divide up a 2-D grid into &amp;quot;pixels&amp;quot; that accumulate a count when (xvec[i],yvec[i]) falls into the range for a pixel (xrange,yrange). Plotting each of these pixels as rectangular column creates the histogram.&lt;/p&gt;

&lt;p&gt;I could of course program one myself, but as I am lazy and this seems like a common kind of plot (at least in statistics and in physics), someone may well have done such a thing. DDG search did not find anything, at least not wrt. Maple.&lt;/p&gt;

&lt;p&gt;Here is an example plot close to what I am thinking of (random plot pulled off the web). The color scheme of the plot is not what I am after (although it does look nice).&lt;/p&gt;

&lt;p&gt;&lt;img alt="Lego plot of a 600MeV/A Si track. Empty pixels (i.e. TOT count = 0) are ..." class="PKoePAd27Rvkn8lN5Kqt" src="https://external-content.duckduckgo.com/iu/?u=https%3A%2F%2Ftse1.mm.bing.net%2Fth%2Fid%2FOIP.wD8ea3tQc0BpoL3PzyVNAAHaFH%3Fpid%3DApi&amp;amp;f=1&amp;amp;ipt=97097919aedf66109df5d98dcfd2b139f8833d793c75dea7c64da140ca8020a1&amp;amp;ipo=images"&gt;&lt;/p&gt;

&lt;div class="GUbK9PUYz4NGqHOfl4JY"&gt;&amp;nbsp;&lt;/div&gt;

&lt;div class="GUbK9PUYz4NGqHOfl4JY"&gt;Thanks in advance,&lt;/div&gt;

&lt;div class="GUbK9PUYz4NGqHOfl4JY"&gt;Mac Dude&lt;/div&gt;
</itunes:summary>
      <description>&lt;p&gt;The title is the question. I am fairly certain that Maple in itself (up to 2023) does not have this. There is of course Statistics:-Histogram, but that is a 1-D histogram only.&lt;/p&gt;

&lt;p&gt;Given 2 Vectors of floats, say, xvec[n] and yvec[n]. The idea would be to divide up a 2-D grid into &amp;quot;pixels&amp;quot; that accumulate a count when (xvec[i],yvec[i]) falls into the range for a pixel (xrange,yrange). Plotting each of these pixels as rectangular column creates the histogram.&lt;/p&gt;

&lt;p&gt;I could of course program one myself, but as I am lazy and this seems like a common kind of plot (at least in statistics and in physics), someone may well have done such a thing. DDG search did not find anything, at least not wrt. Maple.&lt;/p&gt;

&lt;p&gt;Here is an example plot close to what I am thinking of (random plot pulled off the web). The color scheme of the plot is not what I am after (although it does look nice).&lt;/p&gt;

&lt;p&gt;&lt;img alt="Lego plot of a 600MeV/A Si track. Empty pixels (i.e. TOT count = 0) are ..." class="PKoePAd27Rvkn8lN5Kqt" loading="lazy" src="https://external-content.duckduckgo.com/iu/?u=https%3A%2F%2Ftse1.mm.bing.net%2Fth%2Fid%2FOIP.wD8ea3tQc0BpoL3PzyVNAAHaFH%3Fpid%3DApi&amp;amp;f=1&amp;amp;ipt=97097919aedf66109df5d98dcfd2b139f8833d793c75dea7c64da140ca8020a1&amp;amp;ipo=images" /&gt;&lt;/p&gt;

&lt;div class="GUbK9PUYz4NGqHOfl4JY"&gt;&amp;nbsp;&lt;/div&gt;

&lt;div class="GUbK9PUYz4NGqHOfl4JY"&gt;Thanks in advance,&lt;/div&gt;

&lt;div class="GUbK9PUYz4NGqHOfl4JY"&gt;Mac Dude&lt;/div&gt;
</description>
      <guid>243603</guid>
      <pubDate>Tue, 19 May 2026 20:42:00 Z</pubDate>
      <itunes:author>Mac Dude</itunes:author>
      <author>Mac Dude</author>
    </item>
    <item>
      <title>why the error message?</title>
      <link>http://www.mapleprimes.com/questions/243602-Why-The-Error-Message?ref=Feed:MaplePrimes:New%20Questions</link>
      <itunes:summary>&lt;p&gt;Here is a snippet of code that returns an error message. The details of the h procedure should be irrelevant.&lt;/p&gt;

&lt;p&gt;h:=proc(k,x)&lt;br&gt;
local z,w;&lt;br&gt;
nans(parameters=[k,x]);&lt;br&gt;
z:=nans(0.98);&lt;br&gt;
w:=rhs(z[2]),rhs(z[3])&lt;br&gt;
end proc;&lt;br&gt;
&amp;nbsp;h := proc (k, x) local z, w; nans(parameters = [k, x]); z :=&amp;nbsp;&lt;/p&gt;

&lt;p&gt;&amp;nbsp; &amp;nbsp; nans(.98); w := rhs(z[2]), rhs(z[3]) end proc;&lt;/p&gt;

&lt;p&gt;&lt;br&gt;
h(7.7,0.3);&lt;br&gt;
0.310903619302454933005944397083, 0.731944275983583692659532399302&lt;/p&gt;

&lt;p&gt;plot([h(7.7,x),x=0..30]);&lt;br&gt;
Error, (in dsolve/numeric/process_parameters) &amp;#39;parameters&amp;#39; must be specified as a list of numeric values&lt;/p&gt;

&lt;p&gt;Note that the line&amp;nbsp;h(7.7,0.3); is just there to show that h functions well. It accepts 2 numerical inputs and spits out a pair of numerical values.&lt;/p&gt;

&lt;p&gt;Why is plot not plotting? Why is plot asking about inner workings of h?&lt;br&gt;
&lt;br&gt;
If I try&lt;/p&gt;

&lt;p&gt;f:=proc(x,y)&lt;/p&gt;

&lt;p&gt;cos(x),sin(x*y)&amp;nbsp;&lt;br&gt;
end proc;&lt;br&gt;
plot([f(x,7.7),x=0..3]);&lt;br&gt;
that woks fine. Plot does not inquire about f.&lt;/p&gt;
</itunes:summary>
      <description>&lt;p&gt;Here is a snippet of code that returns an error message. The details of the h procedure should be irrelevant.&lt;/p&gt;

&lt;p&gt;h:=proc(k,x)&lt;br /&gt;
local z,w;&lt;br /&gt;
nans(parameters=[k,x]);&lt;br /&gt;
z:=nans(0.98);&lt;br /&gt;
w:=rhs(z[2]),rhs(z[3])&lt;br /&gt;
end proc;&lt;br /&gt;
&amp;nbsp;h := proc (k, x) local z, w; nans(parameters = [k, x]); z :=&amp;nbsp;&lt;/p&gt;

&lt;p&gt;&amp;nbsp; &amp;nbsp; nans(.98); w := rhs(z[2]), rhs(z[3]) end proc;&lt;/p&gt;

&lt;p&gt;&lt;br /&gt;
h(7.7,0.3);&lt;br /&gt;
0.310903619302454933005944397083, 0.731944275983583692659532399302&lt;/p&gt;

&lt;p&gt;plot([h(7.7,x),x=0..30]);&lt;br /&gt;
Error, (in dsolve/numeric/process_parameters) &amp;#39;parameters&amp;#39; must be specified as a list of numeric values&lt;/p&gt;

&lt;p&gt;Note that the line&amp;nbsp;h(7.7,0.3); is just there to show that h functions well. It accepts 2 numerical inputs and spits out a pair of numerical values.&lt;/p&gt;

&lt;p&gt;Why is plot not plotting? Why is plot asking about inner workings of h?&lt;br /&gt;
&lt;br /&gt;
If I try&lt;/p&gt;

&lt;p&gt;f:=proc(x,y)&lt;/p&gt;

&lt;p&gt;cos(x),sin(x*y)&amp;nbsp;&lt;br /&gt;
end proc;&lt;br /&gt;
plot([f(x,7.7),x=0..3]);&lt;br /&gt;
that woks fine. Plot does not inquire about f.&lt;/p&gt;
</description>
      <guid>243602</guid>
      <pubDate>Tue, 19 May 2026 15:32:21 Z</pubDate>
      <itunes:author>awass</itunes:author>
      <author>awass</author>
    </item>
    <item>
      <title>Merging lists, with overriding</title>
      <link>http://www.mapleprimes.com/questions/243601-Merging-Lists-With-Overriding?ref=Feed:MaplePrimes:New%20Questions</link>
      <itunes:summary>&lt;p&gt;I am trying to select from a default list and a modified list to get a third combined list of the unmodified default elements and the mdfified elements plus extra elements. This is for plot data. I have managed to extract the colour data using something I did a couple of years ago. Though at this stage I don&amp;#39;t relly know how that works either but it works.&lt;/p&gt;

&lt;form name="worksheet_form"&gt;&lt;input name="md.ref" type="hidden" value="360E8B9893DAFFA0BD918DEEE179E7C8"&gt;
&lt;table align="center" width="768"&gt;
	&lt;tbody&gt;
		&lt;tr&gt;
			&lt;td&gt;
			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;restart&lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;with(ListTools)&lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;
						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img align="middle" alt="[BinaryPlace, BinarySearch, Categorize, Classify, Collect, Deal, DotProduct, Enumerate, FindMaximalElement, FindMinimalElement, FindRepetitions, Flatten, FlattenOnce, Group, Interleave, InversePermutation, Join, JoinSequence, LengthSplit, MakeUnique, Occurrences, Pad, PartialSums, Reverse, Rotate, Search, SearchAll, SelectFirst, SelectLast, Slice, Sorted, Split, Transpose, Unpermute]" height="74" src="/view.aspx?sf=243601_question/9249f66ba0d11f3876ff9b86b8f6506f.gif" style="vertical-align:-57px" width="738"&gt;&lt;/p&gt;
						&lt;/td&gt;
						&lt;td align="right" style="color:#000000; font-family:Times, serif; font-weight:bold; font-style:normal;"&gt;(1)&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;PlotDefaults:=[&amp;#39;colour&amp;#39; = &amp;#39;:-blue&amp;#39;, symbol = &amp;#39;:-solidcircle&amp;#39;, &lt;/span&gt;&lt;span style="color:#339966;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;#39;:-symbolsize&amp;#39; = 8,thickness=2&lt;/span&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;]; #for points and lines &lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;
						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="[colour = blue, symbol = solidcircle, symbolsize = 8, thickness = 2]" height="23" src="/view.aspx?sf=243601_question/dc63cc99232ea24891a8a21bc0019741.gif" style="vertical-align:-6px" width="506"&gt;&lt;/p&gt;
						&lt;/td&gt;
						&lt;td align="right" style="color:#000000; font-family:Times, serif; font-weight:bold; font-style:normal;"&gt;(2)&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;Inputs:=[&amp;#39;color&amp;#39;=[red, black, blue],symbol=square,&amp;#39;:-linestyle&amp;#39;=dash]; #&amp;#39;color&amp;#39;=[red, black, blue],&lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;nbsp; &lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;
						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="[color = [red, black, blue], symbol = square, linestyle = dash]" height="23" src="/view.aspx?sf=243601_question/5d97110cfdadc4d134e1398ab4184633.gif" style="vertical-align:-6px" width="437"&gt;&lt;/p&gt;
						&lt;/td&gt;
						&lt;td align="right" style="color:#000000; font-family:Times, serif; font-weight:bold; font-style:normal;"&gt;(3)&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;if has(Inputs,{colour,color}) then&lt;/span&gt;&lt;br&gt;
						&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;Colourlist:=remove(has,remove(has,Flatten(eval([&amp;#39;:-color&amp;#39;,&amp;#39;:-colour&amp;#39;],Inputs)),&amp;#39;:-colour&amp;#39;),&amp;#39;:-color&amp;#39;)&lt;/span&gt;&lt;br&gt;
						&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;else&lt;/span&gt;&lt;br&gt;
						&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;Colourlist:=remove(has,remove(has,Flatten(eval([&amp;#39;:-color&amp;#39;,&amp;#39;:-colour&amp;#39;],PlotDefaults)),&amp;#39;:-colour&amp;#39;),&amp;#39;:-color&amp;#39;);&lt;/span&gt;&lt;br&gt;
						&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;end if&lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;
						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="[red, black, blue]" height="23" src="/view.aspx?sf=243601_question/c2f4b783f0b1af9b92a868354eadd3e4.gif" style="vertical-align:-6px" width="195"&gt;&lt;/p&gt;
						&lt;/td&gt;
						&lt;td align="right" style="color:#000000; font-family:Times, serif; font-weight:bold; font-style:normal;"&gt;(4)&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;br&gt;
			&lt;span style="color:#000000;font-size: 116%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;Make this list&lt;/span&gt;&lt;/p&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;plotdata:=[symbol=square,&amp;#39;:-linestyle&amp;#39;=dash,&lt;/span&gt;&lt;span style="color:#339966;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;#39;:-symbolsize&amp;#39; = 8,thickness=2&lt;/span&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;]&lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;
						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="[symbol = square, linestyle = dash, symbolsize = 8, thickness = 2]" height="23" src="/view.aspx?sf=243601_question/78129950aa35bee47053edfb324794f1.gif" style="vertical-align:-6px" width="471"&gt;&lt;/p&gt;
						&lt;/td&gt;
						&lt;td align="right" style="color:#000000; font-family:Times, serif; font-weight:bold; font-style:normal;"&gt;(5)&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;mx:=max(nops(PlotDefaults),nops(Inputs))&lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;
						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="4" height="23" src="/view.aspx?sf=243601_question/e689107de7df2d9c039ff23a94a181f7.gif" style="vertical-align:-6px" width="56"&gt;&lt;/p&gt;
						&lt;/td&gt;
						&lt;td align="right" style="color:#000000; font-family:Times, serif; font-weight:bold; font-style:normal;"&gt;(6)&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;Plotdata:=[];&lt;/span&gt;&lt;br&gt;
						&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;for i to mx do&lt;/span&gt;&lt;br&gt;
						&lt;br&gt;
						&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;end do&lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;nbsp; &lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;nbsp; &lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;
						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="[]" height="24" src="/view.aspx?sf=243601_question/2962dbf316d405e6a966db59461abe56.gif" style="vertical-align:-7px" width="98"&gt;&lt;/p&gt;
						&lt;/td&gt;
						&lt;td align="right" style="color:#000000; font-family:Times, serif; font-weight:bold; font-style:normal;"&gt;(7)&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;nbsp; &lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;input name="sequence" type="hidden" value="1"&gt; &lt;input name="cmd" type="hidden" value="none"&gt;&lt;/form&gt;

&lt;p&gt;&lt;a href="/view.aspx?sf=243601_question/2026-05-18_Q_Select_from_Two_Lists_to_get_New_List.mw"&gt;Download 2026-05-18_Q_Select_from_Two_Lists_to_get_New_List.mw&lt;/a&gt;&lt;/p&gt;
</itunes:summary>
      <description>&lt;p&gt;I am trying to select from a default list and a modified list to get a third combined list of the unmodified default elements and the mdfified elements plus extra elements. This is for plot data. I have managed to extract the colour data using something I did a couple of years ago. Though at this stage I don&amp;#39;t relly know how that works either but it works.&lt;/p&gt;

&lt;form name="worksheet_form"&gt;&lt;input name="md.ref" type="hidden" value="360E8B9893DAFFA0BD918DEEE179E7C8"&gt;
&lt;table align="center" width="768"&gt;
	&lt;tbody&gt;
		&lt;tr&gt;
			&lt;td&gt;
			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;restart&lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;with(ListTools)&lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;
						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img align="middle" alt="[BinaryPlace, BinarySearch, Categorize, Classify, Collect, Deal, DotProduct, Enumerate, FindMaximalElement, FindMinimalElement, FindRepetitions, Flatten, FlattenOnce, Group, Interleave, InversePermutation, Join, JoinSequence, LengthSplit, MakeUnique, Occurrences, Pad, PartialSums, Reverse, Rotate, Search, SearchAll, SelectFirst, SelectLast, Slice, Sorted, Split, Transpose, Unpermute]" height="74" src="/view.aspx?sf=243601_question/9249f66ba0d11f3876ff9b86b8f6506f.gif" style="vertical-align:-57px" width="738"&gt;&lt;/p&gt;
						&lt;/td&gt;
						&lt;td align="right" style="color:#000000; font-family:Times, serif; font-weight:bold; font-style:normal;"&gt;(1)&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;PlotDefaults:=[&amp;#39;colour&amp;#39; = &amp;#39;:-blue&amp;#39;, symbol = &amp;#39;:-solidcircle&amp;#39;, &lt;/span&gt;&lt;span style="color:#339966;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;#39;:-symbolsize&amp;#39; = 8,thickness=2&lt;/span&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;]; #for points and lines &lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;
						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="[colour = blue, symbol = solidcircle, symbolsize = 8, thickness = 2]" height="23" src="/view.aspx?sf=243601_question/dc63cc99232ea24891a8a21bc0019741.gif" style="vertical-align:-6px" width="506"&gt;&lt;/p&gt;
						&lt;/td&gt;
						&lt;td align="right" style="color:#000000; font-family:Times, serif; font-weight:bold; font-style:normal;"&gt;(2)&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;Inputs:=[&amp;#39;color&amp;#39;=[red, black, blue],symbol=square,&amp;#39;:-linestyle&amp;#39;=dash]; #&amp;#39;color&amp;#39;=[red, black, blue],&lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;nbsp; &lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;
						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="[color = [red, black, blue], symbol = square, linestyle = dash]" height="23" src="/view.aspx?sf=243601_question/5d97110cfdadc4d134e1398ab4184633.gif" style="vertical-align:-6px" width="437"&gt;&lt;/p&gt;
						&lt;/td&gt;
						&lt;td align="right" style="color:#000000; font-family:Times, serif; font-weight:bold; font-style:normal;"&gt;(3)&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;if has(Inputs,{colour,color}) then&lt;/span&gt;&lt;br&gt;
						&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;Colourlist:=remove(has,remove(has,Flatten(eval([&amp;#39;:-color&amp;#39;,&amp;#39;:-colour&amp;#39;],Inputs)),&amp;#39;:-colour&amp;#39;),&amp;#39;:-color&amp;#39;)&lt;/span&gt;&lt;br&gt;
						&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;else&lt;/span&gt;&lt;br&gt;
						&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;Colourlist:=remove(has,remove(has,Flatten(eval([&amp;#39;:-color&amp;#39;,&amp;#39;:-colour&amp;#39;],PlotDefaults)),&amp;#39;:-colour&amp;#39;),&amp;#39;:-color&amp;#39;);&lt;/span&gt;&lt;br&gt;
						&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;end if&lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;
						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="[red, black, blue]" height="23" src="/view.aspx?sf=243601_question/c2f4b783f0b1af9b92a868354eadd3e4.gif" style="vertical-align:-6px" width="195"&gt;&lt;/p&gt;
						&lt;/td&gt;
						&lt;td align="right" style="color:#000000; font-family:Times, serif; font-weight:bold; font-style:normal;"&gt;(4)&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;br&gt;
			&lt;span style="color:#000000;font-size: 116%;font-family: DejaVu Sans;font-weight:normal;font-style:normal;"&gt;Make this list&lt;/span&gt;&lt;/p&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;plotdata:=[symbol=square,&amp;#39;:-linestyle&amp;#39;=dash,&lt;/span&gt;&lt;span style="color:#339966;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;#39;:-symbolsize&amp;#39; = 8,thickness=2&lt;/span&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;]&lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;
						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="[symbol = square, linestyle = dash, symbolsize = 8, thickness = 2]" height="23" src="/view.aspx?sf=243601_question/78129950aa35bee47053edfb324794f1.gif" style="vertical-align:-6px" width="471"&gt;&lt;/p&gt;
						&lt;/td&gt;
						&lt;td align="right" style="color:#000000; font-family:Times, serif; font-weight:bold; font-style:normal;"&gt;(5)&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;mx:=max(nops(PlotDefaults),nops(Inputs))&lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;
						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="4" height="23" src="/view.aspx?sf=243601_question/e689107de7df2d9c039ff23a94a181f7.gif" style="vertical-align:-6px" width="56"&gt;&lt;/p&gt;
						&lt;/td&gt;
						&lt;td align="right" style="color:#000000; font-family:Times, serif; font-weight:bold; font-style:normal;"&gt;(6)&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;Plotdata:=[];&lt;/span&gt;&lt;br&gt;
						&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;for i to mx do&lt;/span&gt;&lt;br&gt;
						&lt;br&gt;
						&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;end do&lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;nbsp; &lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;nbsp; &lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;
						&lt;p align="center" style="margin:0 0 0 0; padding-top:0px; padding-bottom:0px"&gt;&lt;img alt="[]" height="24" src="/view.aspx?sf=243601_question/2962dbf316d405e6a966db59461abe56.gif" style="vertical-align:-7px" width="98"&gt;&lt;/p&gt;
						&lt;/td&gt;
						&lt;td align="right" style="color:#000000; font-family:Times, serif; font-weight:bold; font-style:normal;"&gt;(7)&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;

			&lt;table style="margin-left:0px;margin-right:0px"&gt;
				&lt;tbody&gt;
					&lt;tr valign="baseline"&gt;
						&lt;td&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;
						&lt;td&gt;
						&lt;p align="left" style="margin:0 0 0 0; padding-top:3px; padding-bottom:3px"&gt;&lt;span style="color:#78000e;font-size: 100%;font-family: monospace,monospace;font-weight:bold;font-style:normal;"&gt;&amp;nbsp; &lt;/span&gt;&lt;/p&gt;
						&lt;/td&gt;
					&lt;/tr&gt;
				&lt;/tbody&gt;
			&lt;/table&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;input name="sequence" type="hidden" value="1"&gt; &lt;input name="cmd" type="hidden" value="none"&gt;&lt;/form&gt;

&lt;p&gt;&lt;a href="/view.aspx?sf=243601_question/2026-05-18_Q_Select_from_Two_Lists_to_get_New_List.mw"&gt;Download 2026-05-18_Q_Select_from_Two_Lists_to_get_New_List.mw&lt;/a&gt;&lt;/p&gt;
</description>
      <guid>243601</guid>
      <pubDate>Mon, 18 May 2026 22:55:06 Z</pubDate>
      <itunes:author>Ronan</itunes:author>
      <author>Ronan</author>
    </item>
    <item>
      <title>Has there been a change in toolbox location?</title>
      <link>http://www.mapleprimes.com/questions/243600-Has-There-Been-A-Change-In-Toolbox-Location?ref=Feed:MaplePrimes:New%20Questions</link>
      <itunes:summary>&lt;p&gt;Currently I have Maple versions 2023,2025, and 2026 installed on Windows 11. Today I installed a workbook package containing a module that I just completed using the PackageTools installer in Maple 2026.. To my surprise, I found that a package installed from Maple 2026 was also available in Maple 2023 and, conversely, a package installed in Maple 2023 was automatically available in Maple 2026. i noticed that, with the exception of the Maple Customer Support Updates, the toolbox directory is no longer broken down by versions. I also noticed that the directory containing the module installed by Maple 2026 was named by the workbook instead of the module name (ie. hopfwords.maple). As I recall, the toolboxes used to be version dependent.&amp;nbsp;&lt;/p&gt;

&lt;p&gt;The question is to what extent can one assume that a package created in Maple 2026 will be compatible with at least the more recent versions of Maple, I am also wondering why the directory name is now the workbook name instead of the module name.&amp;nbsp;&lt;/p&gt;
</itunes:summary>
      <description>&lt;p&gt;Currently I have Maple versions 2023,2025, and 2026 installed on Windows 11. Today I installed a workbook package containing a module that I just completed using the PackageTools installer in Maple 2026.. To my surprise, I found that a package installed from Maple 2026 was also available in Maple 2023 and, conversely, a package installed in Maple 2023 was automatically available in Maple 2026. i noticed that, with the exception of the Maple Customer Support Updates, the toolbox directory is no longer broken down by versions. I also noticed that the directory containing the module installed by Maple 2026 was named by the workbook instead of the module name (ie. hopfwords.maple). As I recall, the toolboxes used to be version dependent.&amp;nbsp;&lt;/p&gt;

&lt;p&gt;The question is to what extent can one assume that a package created in Maple 2026 will be compatible with at least the more recent versions of Maple, I am also wondering why the directory name is now the workbook name instead of the module name.&amp;nbsp;&lt;/p&gt;
</description>
      <guid>243600</guid>
      <pubDate>Mon, 18 May 2026 03:38:46 Z</pubDate>
      <itunes:author>ianmccr</itunes:author>
      <author>ianmccr</author>
    </item>
    <item>
      <title>How to make this code run?</title>
      <link>http://www.mapleprimes.com/questions/243599-How-To-Make-This-Code-Run?ref=Feed:MaplePrimes:New%20Questions</link>
      <itunes:summary>&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;restart;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;with(plots): with(LinearAlgebra):&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;# TFSB Coefficients (symbolic in u)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;beta0 := u -&amp;gt; (sin(u)*u^3 - 12*u^2 - 24*cos(u) + 24)/(12*(sin(u)*u + 2*cos(u) - 2)*u^2):&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;beta1 := u -&amp;gt; (5*sin(u)*u^3 + 12*cos(u)*u^2 + 24*cos(u) - 24)/(6*(sin(u)*u + 2*cos(u) - 2)*u^2):&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;beta2 := u -&amp;gt; beta0(u):&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;rho0 := u -&amp;gt; ((-u^2-12)*cos(u) - 5*u^2 + 12)/(12*(sin(u)*u + 2*cos(u) - 2)*u^2):&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;rho1 := u -&amp;gt; (-7*cos(u)*u^3 + 27*sin(u)*u^2 + 120*sin(u) - 120*u)/(60*u^2*(cos(u)*u + 2*u - 3*sin(u))):&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;rho2 := u -&amp;gt; -rho0(u):&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;# Secondary coefficients (simplified versions)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;beta00 := u -&amp;gt; 13/42 - 9*u^2/7840:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;beta10 := u -&amp;gt; 1/6 + u^2/720:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;beta20 := u -&amp;gt; 1/42 - 17*u^2/70560:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;beta01 := u -&amp;gt; 187/1680 + 611*u^2/705600:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;beta11 := u -&amp;gt; 11/30 - 29*u^2/25200:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;beta21 := u -&amp;gt; 37/1680 + 67*u^2/235200:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;beta02 := u -&amp;gt; 11/70 + 491*u^2/352800:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;beta12 := u -&amp;gt; 9/10 - 31*u^2/8400:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;beta22 := u -&amp;gt; 31/70 + 811*u^2/352800:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;rho01 := u -&amp;gt; 2/105 + 407*u^2/1058400:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;rho11 := u -&amp;gt; -19/210 + 41*u^2/105840:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;rho21 := u -&amp;gt; -1/168 - 101*u^2/529200:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;rho02 := u -&amp;gt; 53/1680 + 1633*u^2/2116800:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;rho12 := u -&amp;gt; 8/105 - 4*u^2/6615:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;rho22 := u -&amp;gt; -101/1680 - 2273*u^2/2116800:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;# Problem definition&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;omega := 1:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;epsilon := 3*Pi/2:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;phi := x -&amp;gt; 3*sin(x) - 5*cos(x):&amp;nbsp; # history function&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;f := (x, v, vp, vd) -&amp;gt; -v - vd + 3*cos(x) + 5*sin(x):&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;g := proc(x, v, vp, vd, vdp)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; local fx, fv, fvp, fvd;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; fx := -3*sin(x) + 5*cos(x);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; fv := -1;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; fvp := 0;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; fvd := -1;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return fx + fv*vp + fvp*0 + fvd*vdp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;end proc:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;# Initial conditions&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;a := 0: b := 10:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;v0 := -5: vp0 := 3:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;# Variable step-size parameters&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;tol := 1e-10:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;h_min := 0.01:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;h_max := 0.5:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;h_init := Pi/8:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;# Store results&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;X := [a]: V := [v0]: Vp := [vp0]:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;h_curr := h_init:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;x_curr := a:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;v_curr := v0:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;vp_curr := vp0:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;# For history: need v at x-epsilon&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;get_v_delayed := proc(xx)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if xx &amp;lt; a then return phi(xx);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Interpolate from stored solution&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; idx := 1;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while idx &amp;lt; nops(X) and X[idx] &amp;lt; xx do idx := idx+1; end do;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if idx = 1 then return phi(xx);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; elif X[idx] = xx then return V[idx];&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Linear interpolation&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return V[idx-1] + (V[idx]-V[idx-1])*(xx-X[idx-1])/(X[idx]-X[idx-1]);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end if;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; end if;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;end proc:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;# Newton solver for block&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;solve_block := proc(x0, v0, vp0, h, omega)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; local u, bet0, bet1, bet2, rho0, rho1, rho2, bet00, bet10, bet20, bet01, bet11, bet21, bet02, bet12, bet22,&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rho01, rho11, rho21, rho02, rho12, rho22, F, J, V0, V1, V2, Vp0, Vp1, Vp2, tolN, iter, dv, dV;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; u := omega*h;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; bet0 := beta0(u); bet1 := beta1(u); bet2 := beta2(u);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; rho0 := rho0(u); rho1 := rho1(u); rho2 := rho2(u);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; bet00 := beta00(u); bet10 := beta10(u); bet20 := beta20(u);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; bet01 := beta01(u); bet11 := beta11(u); bet21 := beta21(u);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; bet02 := beta02(u); bet12 := beta12(u); bet22 := beta22(u);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; rho01 := rho01(u); rho11 := rho11(u); rho21 := rho21(u);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; rho02 := rho02(u); rho12 := rho12(u); rho22 := rho22(u);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Initial guesses&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; V1 := v0 + h*vp0;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; V2 := v0 + 2*h*vp0;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Vp1 := vp0;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Vp2 := vp0;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; tolN := 1e-12;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for iter from 1 to 10 do&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Compute delayed values&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; vd0 := get_v_delayed(x0 - epsilon);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; vd1 := get_v_delayed(x0 + h - epsilon);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; vd2 := get_v_delayed(x0 + 2*h - epsilon);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; vdp0 := (get_v_delayed(x0 - epsilon + 1e-8) - vd0)/1e-8;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; vdp1 := (get_v_delayed(x0 + h - epsilon + 1e-8) - vd1)/1e-8;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; vdp2 := (get_v_delayed(x0 + 2*h - epsilon + 1e-8) - vd2)/1e-8;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Compute gamma and g&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gam0 := f(x0, v0, vp0, vd0);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gam1 := f(x0+h, V1, Vp1, vd1);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gam2 := f(x0+2*h, V2, Vp2, vd2);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; g0 := g(x0, v0, vp0, vd0, vdp0);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; g1 := g(x0+h, V1, Vp1, vd1, vdp1);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; g2 := g(x0+2*h, V2, Vp2, vd2, vdp2);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Residuals&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; F1 := h*vp0 - (V1 - v0 + h^2*(bet00*gam0 + bet10*gam1 + bet20*gam2) &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + h^3*(rho01*g0 + rho11*g1 + rho21*g2));&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; F2 := h*Vp1 - (V1 - v0 + h^2*(bet01*gam0 + bet11*gam1 + bet21*gam2)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + h^3*(rho01*g0 + rho11*g1 + rho21*g2));&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; F3 := h*Vp2 - (V1 - v0 + h^2*(bet02*gam0 + bet12*gam1 + bet22*gam2)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + h^3*(rho02*g0 + rho12*g1 + rho22*g2));&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; F4 := V2 - (2*V1 - v0 + h^2*(bet0*gam0 + bet1*gam1 + bet2*gam2)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + h^3*(rho0*g0 + rho1*g1 + rho2*g2));&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; F := Vector([F1, F2, F3, F4]);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if LinearAlgebra:-Norm(F) &amp;lt; tolN then break; end if;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Approximate Jacobian (finite differences)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; J := Matrix(4,4);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; delta := 1e-6;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for j from 1 to 4 do&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; V_pert := Vector([V1, V2, Vp1, Vp2]);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; V_pert[j] := V_pert[j] + delta;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; V1p := V_pert[1]; V2p := V_pert[2]; Vp1p := V_pert[3]; Vp2p := V_pert[4];&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gam1p := f(x0+h, V1p, Vp1p, get_v_delayed(x0+h-epsilon));&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gam2p := f(x0+2*h, V2p, Vp2p, get_v_delayed(x0+2*h-epsilon));&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; g1p := g(x0+h, V1p, Vp1p, get_v_delayed(x0+h-epsilon), &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (get_v_delayed(x0+h-epsilon+1e-8)-get_v_delayed(x0+h-epsilon))/1e-8);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; g2p := g(x0+2*h, V2p, Vp2p, get_v_delayed(x0+2*h-epsilon),&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (get_v_delayed(x0+2*h-epsilon+1e-8)-get_v_delayed(x0+2*h-epsilon))/1e-8);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; F1p := h*vp0 - (V1p - v0 + h^2*(bet00*gam0 + bet10*gam1p + bet20*gam2p)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + h^3*(rho01*g0 + rho11*g1p + rho21*g2p));&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; F2p := h*Vp1p - (V1p - v0 + h^2*(bet01*gam0 + bet11*gam1p + bet21*gam2p)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + h^3*(rho01*g0 + rho11*g1p + rho21*g2p));&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; F3p := h*Vp2p - (V1p - v0 + h^2*(bet02*gam0 + bet12*gam1p + bet22*gam2p)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + h^3*(rho02*g0 + rho12*g1p + rho22*g2p));&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; F4p := V2p - (2*V1p - v0 + h^2*(bet0*gam0 + bet1*gam1p + bet2*gam2p)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + h^3*(rho0*g0 + rho1*g1p + rho2*g2p));&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Fp := Vector([F1p, F2p, F3p, F4p]);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; J[1..4, j] := (Fp - F)/delta;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end do;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dV := LinearAlgebra:-LinearSolve(J, -F);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; V1 := V1 + dV[1]; V2 := V2 + dV[2]; Vp1 := Vp1 + dV[3]; Vp2 := Vp2 + dV[4];&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; end do;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return [V1, V2, Vp1, Vp2];&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;end proc:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;# Main variable step-size loop&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;printf(&amp;quot;Variable step-size integration for Example 1\n&amp;quot;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;printf(&amp;quot;tol = %e, h_init = %f\n&amp;quot;, tol, h_init);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;while x_curr &amp;lt; b - 1e-12 do&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Try current step&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; sol := solve_block(x_curr, v_curr, vp_curr, h_curr, omega);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; V1 := sol[1]; V2 := sol[2]; Vp1 := sol[3]; Vp2 := sol[4];&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Compute with two half-steps&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; sol_half1 := solve_block(x_curr, v_curr, vp_curr, h_curr/2, omega);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; V_mid := sol_half1[2]; Vp_mid := sol_half1[4];&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; sol_half2 := solve_block(x_curr + h_curr/2, V_mid, Vp_mid, h_curr/2, omega);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; V2_half := sol_half2[2];&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Error estimate&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; err := abs(V2 - V2_half) / (2^6 - 1);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if err &amp;lt; tol then&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Accept step&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; x_next := x_curr + 2*h_curr;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; X := [op(X), x_curr + h_curr, x_next];&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; V := [op(V), V1, V2];&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Vp := [op(Vp), Vp1, Vp2];&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; x_curr := x_next;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; v_curr := V2;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; vp_curr := Vp2;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf(&amp;quot;x = %7.4f, h = %8.5f, err = %12.5e\n&amp;quot;, x_curr, h_curr, err);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Adjust step size&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if err &amp;lt; tol/2 then&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; h_curr := min(2*h_curr, h_max);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end if;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Reject step, reduce h&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; h_curr := max(h_curr/2, h_min);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf(&amp;quot;&amp;nbsp; Rejecting, new h = %8.5f\n&amp;quot;, h_curr);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; end if;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;end do:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;# Exact solution for comparison&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;exact := x -&amp;gt; 3*sin(x) - 5*cos(x);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;errors := [seq(abs(V[i] - exact(X[i])), i=1..nops(X))];&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;# Visualization&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;p1 := pointplot([seq([X[i], errors[i]], i=1..nops(X))], color=red, symbol=circle, &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; title=&amp;quot;Example 1: Variable Step-Size TFSB - Absolute Errors&amp;quot;, &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; labels=[&amp;quot;x&amp;quot;, &amp;quot;Error&amp;quot;], labeldirections=[horizontal,vertical]);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;p2 := plot([[x_curr, h_curr]], x=a..b, style=point, color=blue, &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; title=&amp;quot;Step-size evolution&amp;quot;, labels=[&amp;quot;x&amp;quot;, &amp;quot;h&amp;quot;]);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;display(p1);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;display(p2);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;printf(&amp;quot;\nFinal results for Example 1:\n&amp;quot;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;printf(&amp;quot;Number of steps: %d\n&amp;quot;, nops(X)-1);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;printf(&amp;quot;Maximum error: %e\n&amp;quot;, max(errors));&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;printf(&amp;quot;Final step-size: %f\n&amp;quot;, h_curr);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
</itunes:summary>
      <description>&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;restart;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;with(plots): with(LinearAlgebra):&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;# TFSB Coefficients (symbolic in u)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;beta0 := u -&amp;gt; (sin(u)*u^3 - 12*u^2 - 24*cos(u) + 24)/(12*(sin(u)*u + 2*cos(u) - 2)*u^2):&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;beta1 := u -&amp;gt; (5*sin(u)*u^3 + 12*cos(u)*u^2 + 24*cos(u) - 24)/(6*(sin(u)*u + 2*cos(u) - 2)*u^2):&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;beta2 := u -&amp;gt; beta0(u):&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;rho0 := u -&amp;gt; ((-u^2-12)*cos(u) - 5*u^2 + 12)/(12*(sin(u)*u + 2*cos(u) - 2)*u^2):&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;rho1 := u -&amp;gt; (-7*cos(u)*u^3 + 27*sin(u)*u^2 + 120*sin(u) - 120*u)/(60*u^2*(cos(u)*u + 2*u - 3*sin(u))):&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;rho2 := u -&amp;gt; -rho0(u):&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;# Secondary coefficients (simplified versions)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;beta00 := u -&amp;gt; 13/42 - 9*u^2/7840:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;beta10 := u -&amp;gt; 1/6 + u^2/720:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;beta20 := u -&amp;gt; 1/42 - 17*u^2/70560:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;beta01 := u -&amp;gt; 187/1680 + 611*u^2/705600:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;beta11 := u -&amp;gt; 11/30 - 29*u^2/25200:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;beta21 := u -&amp;gt; 37/1680 + 67*u^2/235200:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;beta02 := u -&amp;gt; 11/70 + 491*u^2/352800:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;beta12 := u -&amp;gt; 9/10 - 31*u^2/8400:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;beta22 := u -&amp;gt; 31/70 + 811*u^2/352800:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;rho01 := u -&amp;gt; 2/105 + 407*u^2/1058400:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;rho11 := u -&amp;gt; -19/210 + 41*u^2/105840:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;rho21 := u -&amp;gt; -1/168 - 101*u^2/529200:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;rho02 := u -&amp;gt; 53/1680 + 1633*u^2/2116800:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;rho12 := u -&amp;gt; 8/105 - 4*u^2/6615:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;rho22 := u -&amp;gt; -101/1680 - 2273*u^2/2116800:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;# Problem definition&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;omega := 1:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;epsilon := 3*Pi/2:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;phi := x -&amp;gt; 3*sin(x) - 5*cos(x):&amp;nbsp; # history function&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;f := (x, v, vp, vd) -&amp;gt; -v - vd + 3*cos(x) + 5*sin(x):&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;g := proc(x, v, vp, vd, vdp)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; local fx, fv, fvp, fvd;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; fx := -3*sin(x) + 5*cos(x);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; fv := -1;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; fvp := 0;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; fvd := -1;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return fx + fv*vp + fvp*0 + fvd*vdp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;end proc:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;# Initial conditions&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;a := 0: b := 10:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;v0 := -5: vp0 := 3:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;# Variable step-size parameters&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;tol := 1e-10:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;h_min := 0.01:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;h_max := 0.5:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;h_init := Pi/8:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;# Store results&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;X := [a]: V := [v0]: Vp := [vp0]:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;h_curr := h_init:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;x_curr := a:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;v_curr := v0:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;vp_curr := vp0:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;# For history: need v at x-epsilon&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;get_v_delayed := proc(xx)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if xx &amp;lt; a then return phi(xx);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Interpolate from stored solution&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; idx := 1;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while idx &amp;lt; nops(X) and X[idx] &amp;lt; xx do idx := idx+1; end do;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if idx = 1 then return phi(xx);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; elif X[idx] = xx then return V[idx];&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Linear interpolation&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return V[idx-1] + (V[idx]-V[idx-1])*(xx-X[idx-1])/(X[idx]-X[idx-1]);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end if;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; end if;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;end proc:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;# Newton solver for block&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;solve_block := proc(x0, v0, vp0, h, omega)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; local u, bet0, bet1, bet2, rho0, rho1, rho2, bet00, bet10, bet20, bet01, bet11, bet21, bet02, bet12, bet22,&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rho01, rho11, rho21, rho02, rho12, rho22, F, J, V0, V1, V2, Vp0, Vp1, Vp2, tolN, iter, dv, dV;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; u := omega*h;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; bet0 := beta0(u); bet1 := beta1(u); bet2 := beta2(u);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; rho0 := rho0(u); rho1 := rho1(u); rho2 := rho2(u);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; bet00 := beta00(u); bet10 := beta10(u); bet20 := beta20(u);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; bet01 := beta01(u); bet11 := beta11(u); bet21 := beta21(u);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; bet02 := beta02(u); bet12 := beta12(u); bet22 := beta22(u);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; rho01 := rho01(u); rho11 := rho11(u); rho21 := rho21(u);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; rho02 := rho02(u); rho12 := rho12(u); rho22 := rho22(u);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Initial guesses&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; V1 := v0 + h*vp0;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; V2 := v0 + 2*h*vp0;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Vp1 := vp0;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Vp2 := vp0;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; tolN := 1e-12;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for iter from 1 to 10 do&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Compute delayed values&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; vd0 := get_v_delayed(x0 - epsilon);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; vd1 := get_v_delayed(x0 + h - epsilon);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; vd2 := get_v_delayed(x0 + 2*h - epsilon);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; vdp0 := (get_v_delayed(x0 - epsilon + 1e-8) - vd0)/1e-8;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; vdp1 := (get_v_delayed(x0 + h - epsilon + 1e-8) - vd1)/1e-8;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; vdp2 := (get_v_delayed(x0 + 2*h - epsilon + 1e-8) - vd2)/1e-8;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Compute gamma and g&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gam0 := f(x0, v0, vp0, vd0);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gam1 := f(x0+h, V1, Vp1, vd1);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gam2 := f(x0+2*h, V2, Vp2, vd2);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; g0 := g(x0, v0, vp0, vd0, vdp0);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; g1 := g(x0+h, V1, Vp1, vd1, vdp1);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; g2 := g(x0+2*h, V2, Vp2, vd2, vdp2);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Residuals&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; F1 := h*vp0 - (V1 - v0 + h^2*(bet00*gam0 + bet10*gam1 + bet20*gam2) &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + h^3*(rho01*g0 + rho11*g1 + rho21*g2));&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; F2 := h*Vp1 - (V1 - v0 + h^2*(bet01*gam0 + bet11*gam1 + bet21*gam2)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + h^3*(rho01*g0 + rho11*g1 + rho21*g2));&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; F3 := h*Vp2 - (V1 - v0 + h^2*(bet02*gam0 + bet12*gam1 + bet22*gam2)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + h^3*(rho02*g0 + rho12*g1 + rho22*g2));&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; F4 := V2 - (2*V1 - v0 + h^2*(bet0*gam0 + bet1*gam1 + bet2*gam2)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + h^3*(rho0*g0 + rho1*g1 + rho2*g2));&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; F := Vector([F1, F2, F3, F4]);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if LinearAlgebra:-Norm(F) &amp;lt; tolN then break; end if;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Approximate Jacobian (finite differences)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; J := Matrix(4,4);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; delta := 1e-6;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for j from 1 to 4 do&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; V_pert := Vector([V1, V2, Vp1, Vp2]);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; V_pert[j] := V_pert[j] + delta;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; V1p := V_pert[1]; V2p := V_pert[2]; Vp1p := V_pert[3]; Vp2p := V_pert[4];&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gam1p := f(x0+h, V1p, Vp1p, get_v_delayed(x0+h-epsilon));&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; gam2p := f(x0+2*h, V2p, Vp2p, get_v_delayed(x0+2*h-epsilon));&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; g1p := g(x0+h, V1p, Vp1p, get_v_delayed(x0+h-epsilon), &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (get_v_delayed(x0+h-epsilon+1e-8)-get_v_delayed(x0+h-epsilon))/1e-8);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; g2p := g(x0+2*h, V2p, Vp2p, get_v_delayed(x0+2*h-epsilon),&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (get_v_delayed(x0+2*h-epsilon+1e-8)-get_v_delayed(x0+2*h-epsilon))/1e-8);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; F1p := h*vp0 - (V1p - v0 + h^2*(bet00*gam0 + bet10*gam1p + bet20*gam2p)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + h^3*(rho01*g0 + rho11*g1p + rho21*g2p));&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; F2p := h*Vp1p - (V1p - v0 + h^2*(bet01*gam0 + bet11*gam1p + bet21*gam2p)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + h^3*(rho01*g0 + rho11*g1p + rho21*g2p));&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; F3p := h*Vp2p - (V1p - v0 + h^2*(bet02*gam0 + bet12*gam1p + bet22*gam2p)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + h^3*(rho02*g0 + rho12*g1p + rho22*g2p));&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; F4p := V2p - (2*V1p - v0 + h^2*(bet0*gam0 + bet1*gam1p + bet2*gam2p)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; + h^3*(rho0*g0 + rho1*g1p + rho2*g2p));&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Fp := Vector([F1p, F2p, F3p, F4p]);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; J[1..4, j] := (Fp - F)/delta;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end do;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dV := LinearAlgebra:-LinearSolve(J, -F);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; V1 := V1 + dV[1]; V2 := V2 + dV[2]; Vp1 := Vp1 + dV[3]; Vp2 := Vp2 + dV[4];&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; end do;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return [V1, V2, Vp1, Vp2];&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;end proc:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;# Main variable step-size loop&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;printf(&amp;quot;Variable step-size integration for Example 1\n&amp;quot;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;printf(&amp;quot;tol = %e, h_init = %f\n&amp;quot;, tol, h_init);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;while x_curr &amp;lt; b - 1e-12 do&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Try current step&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; sol := solve_block(x_curr, v_curr, vp_curr, h_curr, omega);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; V1 := sol[1]; V2 := sol[2]; Vp1 := sol[3]; Vp2 := sol[4];&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Compute with two half-steps&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; sol_half1 := solve_block(x_curr, v_curr, vp_curr, h_curr/2, omega);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; V_mid := sol_half1[2]; Vp_mid := sol_half1[4];&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; sol_half2 := solve_block(x_curr + h_curr/2, V_mid, Vp_mid, h_curr/2, omega);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; V2_half := sol_half2[2];&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Error estimate&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; err := abs(V2 - V2_half) / (2^6 - 1);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if err &amp;lt; tol then&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Accept step&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; x_next := x_curr + 2*h_curr;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; X := [op(X), x_curr + h_curr, x_next];&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; V := [op(V), V1, V2];&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Vp := [op(Vp), Vp1, Vp2];&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; x_curr := x_next;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; v_curr := V2;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; vp_curr := Vp2;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf(&amp;quot;x = %7.4f, h = %8.5f, err = %12.5e\n&amp;quot;, x_curr, h_curr, err);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Adjust step size&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if err &amp;lt; tol/2 then&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; h_curr := min(2*h_curr, h_max);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end if;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; # Reject step, reduce h&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; h_curr := max(h_curr/2, h_min);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf(&amp;quot;&amp;nbsp; Rejecting, new h = %8.5f\n&amp;quot;, h_curr);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; end if;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;end do:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;# Exact solution for comparison&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;exact := x -&amp;gt; 3*sin(x) - 5*cos(x);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;errors := [seq(abs(V[i] - exact(X[i])), i=1..nops(X))];&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;# Visualization&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;p1 := pointplot([seq([X[i], errors[i]], i=1..nops(X))], color=red, symbol=circle, &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; title=&amp;quot;Example 1: Variable Step-Size TFSB - Absolute Errors&amp;quot;, &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; labels=[&amp;quot;x&amp;quot;, &amp;quot;Error&amp;quot;], labeldirections=[horizontal,vertical]);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;p2 := plot([[x_curr, h_curr]], x=a..b, style=point, color=blue, &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; title=&amp;quot;Step-size evolution&amp;quot;, labels=[&amp;quot;x&amp;quot;, &amp;quot;h&amp;quot;]);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;display(p1);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;display(p2);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&amp;nbsp;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;printf(&amp;quot;\nFinal results for Example 1:\n&amp;quot;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;printf(&amp;quot;Number of steps: %d\n&amp;quot;, nops(X)-1);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;printf(&amp;quot;Maximum error: %e\n&amp;quot;, max(errors));&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;

&lt;p style="margin-bottom:11px"&gt;&lt;span style="font-size:12pt"&gt;&lt;span style="line-height:115%"&gt;&lt;span style="font-family:Aptos,sans-serif"&gt;printf(&amp;quot;Final step-size: %f\n&amp;quot;, h_curr);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
</description>
      <guid>243599</guid>
      <pubDate>Sun, 17 May 2026 16:26:57 Z</pubDate>
      <itunes:author>abdulganiy</itunes:author>
      <author>abdulganiy</author>
    </item>
  </channel>
</rss>