<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:georss="http://www.georss.org/georss" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0"><id>tag:blogger.com,1999:blog-6426345363781422461</id><updated>2009-11-06T13:28:06.958Z</updated><title type="text">The Return of Agent Zlerich</title><subtitle type="html">As far as the Internet can tell me, no one uses "Zlerich". I call dibs.</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://agentzlerich.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://agentzlerich.blogspot.com/" /><link rel="hub" href="http://pubsubhubbub.appspot.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default?start-index=26&amp;max-results=25" /><author><name>R Zlerich</name><email>noreply@blogger.com</email></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>92</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><link rel="self" href="http://feeds.feedburner.com/TheReturnOfAgentZlerich" type="application/atom+xml" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><entry><id>tag:blogger.com,1999:blog-6426345363781422461.post-8796253147241699921</id><published>2009-11-01T05:14:00.005Z</published><updated>2009-11-06T13:28:06.966Z</updated><title type="text">Getting 32-bit libstdc++.so.5 in Karmic Koala on a 64-bit system</title><content type="html">The Intel compilers require a 32-bit version of libstdc++.so.5 to function. Getting a copy of that build of that library requires a couple of steps in the latest 64-bit Ubuntu 9.10. These have been alluded to in other places. &amp;nbsp;Just in case someone needs the details, here they are:&lt;br /&gt;
&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;Download the i386 libstdc++ package for Jaunty:&amp;nbsp;&lt;a href="http://packages.ubuntu.com/jaunty/i386/libstdc++5/download"&gt;http://packages.ubuntu.com/jaunty/i386/libstdc++5/download&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Unpack the .deb archive using &lt;tt&gt;ar vx ~/Desktop/libstdc++5_3.3.6-17ubuntu1_i386.deb&lt;/tt&gt;&lt;/li&gt;
&lt;li&gt;Unpack the resulting data.tar.gz using &lt;tt&gt;tar xzvf data.tar.gz&lt;/tt&gt;&lt;/li&gt;
&lt;li&gt;Confirm that you got the 32-bit version using &lt;tt&gt;file usr/lib/libstdc++.so.5.0.7&lt;/tt&gt;&lt;/li&gt;
&lt;li&gt;Install the library into /usr/lib32 using &lt;tt&gt;sudo install usr/lib/libstdc++.so.5.0.7 /usr/lib32&lt;/tt&gt;&lt;/li&gt;
&lt;li&gt;Change to /usr/lib32 using &lt;tt&gt;cd /usr/lib32&lt;/tt&gt;&lt;/li&gt;
&lt;li&gt;Create a symlink to finish the task via &lt;tt&gt;sudo ln -s libstdc++.so.5.0.7 libstdc++.so.5&lt;/tt&gt;&lt;/li&gt;
&lt;/tt&gt;&lt;/ol&gt;
Many thanks to everyone who provided the source material:&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://software.intel.com/en-us/forums/intel-fortran-compiler-for-linux-and-mac-os-x/topic/69247/"&gt;http://software.intel.com/en-us/forums/intel-fortran-compiler-for-linux-and-mac-os-x/topic/69247/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://packages.ubuntu.com/jaunty/libstdc++5"&gt;http://packages.ubuntu.com/jaunty/libstdc++5&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.g-loaded.eu/2008/01/28/how-to-extract-rpm-or-deb-packages/"&gt;http://www.g-loaded.eu/2008/01/28/how-to-extract-rpm-or-deb-packages/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6426345363781422461-8796253147241699921?l=agentzlerich.blogspot.com'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://agentzlerich.blogspot.com/feeds/8796253147241699921/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=6426345363781422461&amp;postID=8796253147241699921" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/8796253147241699921" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/8796253147241699921" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheReturnOfAgentZlerich/~3/f3JnpPphtcg/getting-32-bit-libstdcso5-in-karmic.html" title="Getting 32-bit libstdc++.so.5 in Karmic Koala on a 64-bit system" /><author><name>Rhys Ulerich</name><uri>http://www.blogger.com/profile/02843453263307584747</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08988584636979642429" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://agentzlerich.blogspot.com/2009/11/getting-32-bit-libstdcso5-in-karmic.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-6426345363781422461.post-1583908499247546615</id><published>2009-10-28T19:19:00.000Z</published><updated>2009-10-28T19:19:43.061Z</updated><title type="text">Sugar Plum Plug</title><content type="html">&lt;p&gt;
&lt;a href="http://www.balletaustin.org/about/dancers.php#thompson"&gt;Milady&lt;/a&gt; got the &lt;a href="http://www.balletaustin.org/atb/nutcracker.php#cast"&gt;Nutcracker casting&lt;/a&gt; she's talked about wanting for several years.  Go hit up &lt;a href="http://www.balletaustin.org/atb/nutcracker.php"&gt;the show&lt;/a&gt; on one of December 6, 12, 18, 19 @ 7:30pm, 21, or 23 to see her grinning from ear to ear.
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6426345363781422461-1583908499247546615?l=agentzlerich.blogspot.com'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://agentzlerich.blogspot.com/feeds/1583908499247546615/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=6426345363781422461&amp;postID=1583908499247546615" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/1583908499247546615" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/1583908499247546615" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheReturnOfAgentZlerich/~3/Kw-mb7YB4K4/sugar-plum-plug.html" title="Sugar Plum Plug" /><author><name>Rhys Ulerich</name><uri>http://www.blogger.com/profile/02843453263307584747</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08988584636979642429" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://agentzlerich.blogspot.com/2009/10/sugar-plum-plug.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-6426345363781422461.post-1694565828932641324</id><published>2009-10-26T22:57:00.000Z</published><updated>2009-10-26T22:57:12.473Z</updated><title type="text">BOOST_UBLAS_SHALLOW_ARRAY_ADAPTOR</title><content type="html">&lt;p&gt;
&lt;a href="http://www.boost.org/doc/libs/release/libs/numeric"&gt;uBLAS&lt;/a&gt; has a &lt;tt&gt;shallow_array_adaptor&lt;/tt&gt; that allows you to wrap an existing block of data with
a uBLAS vector.  This is useful if you want to wrap raw data provided by someone else.
Exposing this functionality is questionable in terms of encapsulation and ownership, and
so it isn't available by default.  Consequently the documentation is pretty scarce.  Here's an example of it's use in the context of a &lt;a href="http://www.boost.org/doc/libs/release/libs/test/index.html"&gt;Boost.Test&lt;/a&gt; test case.
&lt;/p&gt;

&lt;div style="background-color:#000000;color:#a9a9a9;"&gt;
&lt;font face="monospace"&gt;
&lt;font color="#00ff00"&gt;#define BOOST_TEST_MODULE $Id: test_complex.cc &lt;/font&gt;&lt;font color="#ffffff"&gt;1817&lt;/font&gt;&lt;font color="#00ff00"&gt;&amp;nbsp;&lt;/font&gt;&lt;font color="#ffffff"&gt;2009&lt;/font&gt;&lt;font color="#00ff00"&gt;-&lt;/font&gt;&lt;font color="#00ff00"&gt;0&lt;/font&gt;&lt;font color="#ffffff"&gt;3&lt;/font&gt;&lt;font color="#00ff00"&gt;-&lt;/font&gt;&lt;font color="#ffffff"&gt;18&lt;/font&gt;&lt;font color="#00ff00"&gt;&amp;nbsp;&lt;/font&gt;&lt;font color="#ffffff"&gt;19&lt;/font&gt;&lt;font color="#00ff00"&gt;:&lt;/font&gt;&lt;font color="#00ff00"&gt;0&lt;/font&gt;&lt;font color="#ffffff"&gt;1&lt;/font&gt;&lt;font color="#00ff00"&gt;:25Z rhys $&lt;/font&gt;&lt;br&gt;
&lt;br&gt;
&lt;font color="#b46918"&gt;// Before ublas #include, enable boost::numeric::ublas::shallow_array_adaptor&amp;lt;T&amp;gt;&lt;/font&gt;&lt;br&gt;
&lt;font color="#00ff00"&gt;#define BOOST_UBLAS_SHALLOW_ARRAY_ADAPTOR &lt;/font&gt;&lt;font color="#ffffff"&gt;1&lt;/font&gt;&lt;br&gt;
&lt;br&gt;
&lt;font color="#00ff00"&gt;#include &lt;/font&gt;&lt;font color="#ffff00"&gt;&amp;lt;algorithm&amp;gt;&lt;/font&gt;&lt;br&gt;
&lt;font color="#00ff00"&gt;#include &lt;/font&gt;&lt;font color="#ffff00"&gt;&amp;lt;boost/numeric/ublas/vector.hpp&amp;gt;&lt;/font&gt;&lt;br&gt;
&lt;font color="#00ff00"&gt;#include &lt;/font&gt;&lt;font color="#ffff00"&gt;&amp;lt;boost/test/included/unit_test.hpp&amp;gt;&lt;/font&gt;&lt;br&gt;
&lt;font color="#00ff00"&gt;#include &lt;/font&gt;&lt;font color="#ffff00"&gt;&amp;lt;boost/foreach.hpp&amp;gt;&lt;/font&gt;&lt;br&gt;
&lt;font color="#00ff00"&gt;#include &lt;/font&gt;&lt;font color="#ffff00"&gt;&amp;lt;complex&amp;gt;&lt;/font&gt;&lt;br&gt;
&lt;br&gt;
&lt;font color="#00ff00"&gt;namespace&lt;/font&gt;&amp;nbsp;ublas = boost::numeric::ublas;&lt;br&gt;
&lt;br&gt;
&lt;font color="#00ff00"&gt;typedef&lt;/font&gt;&amp;nbsp;std::&lt;font color="#00ff00"&gt;complex&lt;/font&gt;&amp;lt;&lt;font color="#00ff00"&gt;double&lt;/font&gt;&amp;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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#00ff00"&gt;complex&lt;/font&gt;;&lt;br&gt;
&lt;font color="#00ff00"&gt;typedef&lt;/font&gt;&amp;nbsp;ublas::shallow_array_adaptor&amp;lt;&lt;font color="#00ff00"&gt;double&lt;/font&gt;&amp;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;shallow_adaptor_double;&lt;br&gt;
&lt;font color="#00ff00"&gt;typedef&lt;/font&gt;&amp;nbsp;ublas::vector&amp;lt;&lt;font color="#00ff00"&gt;double&lt;/font&gt;, shallow_adaptor_double&amp;gt;&amp;nbsp;&amp;nbsp; shallow_vector_double;&lt;br&gt;
&lt;font color="#00ff00"&gt;typedef&lt;/font&gt;&amp;nbsp;ublas::shallow_array_adaptor&amp;lt;&lt;font color="#00ff00"&gt;complex&lt;/font&gt;&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; shallow_adaptor_complex;&lt;br&gt;
&lt;font color="#00ff00"&gt;typedef&lt;/font&gt;&amp;nbsp;ublas::vector&amp;lt;&lt;font color="#00ff00"&gt;complex&lt;/font&gt;, shallow_adaptor_complex&amp;gt; shallow_vector_complex;&lt;br&gt;
&lt;br&gt;
&lt;font color="#b46918"&gt;// Ensure we can use std::complex&amp;lt;double&amp;gt; as two consecutive doubles&lt;/font&gt;&lt;br&gt;
BOOST_AUTO_TEST_CASE( shared_c_array )&lt;br&gt;
{&lt;br&gt;
&amp;nbsp;&amp;nbsp;&lt;font color="#b46918"&gt;// Assumption must hold true for any of this scheme to work&lt;/font&gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;BOOST_REQUIRE_EQUAL( &lt;font color="#ffffff"&gt;sizeof&lt;/font&gt;(&lt;font color="#00ff00"&gt;complex&lt;/font&gt;), &lt;font color="#ffffff"&gt;2&lt;/font&gt;*&lt;font color="#ffffff"&gt;sizeof&lt;/font&gt;(&lt;font color="#00ff00"&gt;double&lt;/font&gt;) );&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&lt;font color="#00ff00"&gt;const&lt;/font&gt;&amp;nbsp;std::&lt;font color="#00ff00"&gt;size_t&lt;/font&gt;&amp;nbsp;N = &lt;font color="#ffffff"&gt;6&lt;/font&gt;;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&lt;font color="#00ff00"&gt;double&lt;/font&gt;&amp;nbsp;carray_double[N] = { &lt;font color="#ffffff"&gt;0.0&lt;/font&gt;, &lt;font color="#ffffff"&gt;1.0&lt;/font&gt;, &lt;font color="#ffffff"&gt;2.0&lt;/font&gt;, &lt;font color="#ffffff"&gt;3.0&lt;/font&gt;, &lt;font color="#ffffff"&gt;4.0&lt;/font&gt;, &lt;font color="#ffffff"&gt;5.0&lt;/font&gt;&amp;nbsp;};&lt;br&gt;
&amp;nbsp;&amp;nbsp;&lt;font color="#00ff00"&gt;complex&lt;/font&gt;&amp;nbsp;*carray_complex = &lt;font color="#ffffff"&gt;reinterpret_cast&lt;/font&gt;&amp;lt;&lt;font color="#00ff00"&gt;complex&lt;/font&gt;&amp;nbsp;*&amp;gt;(carray_double);&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&lt;font color="#ffffff"&gt;for&lt;/font&gt;&amp;nbsp;(std::&lt;font color="#00ff00"&gt;size_t&lt;/font&gt;&amp;nbsp;i = &lt;font color="#ffffff"&gt;0&lt;/font&gt;; i &amp;lt; N/&lt;font color="#ffffff"&gt;2&lt;/font&gt;; ++i)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;BOOST_CHECK_EQUAL(carray_double[&lt;font color="#ffffff"&gt;2&lt;/font&gt;*i],&amp;nbsp;&amp;nbsp; carray_complex[i].real());&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;BOOST_CHECK_EQUAL(carray_double[&lt;font color="#ffffff"&gt;2&lt;/font&gt;*i+&lt;font color="#ffffff"&gt;1&lt;/font&gt;], carray_complex[i].imag());&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&lt;font color="#ffffff"&gt;for&lt;/font&gt;&amp;nbsp;(std::&lt;font color="#00ff00"&gt;size_t&lt;/font&gt;&amp;nbsp;i = &lt;font color="#ffffff"&gt;0&lt;/font&gt;; i &amp;lt; N/&lt;font color="#ffffff"&gt;2&lt;/font&gt;; ++i)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;carray_complex[i] += carray_complex[&lt;font color="#ffffff"&gt;0&lt;/font&gt;];&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&lt;font color="#ffffff"&gt;for&lt;/font&gt;&amp;nbsp;(std::&lt;font color="#00ff00"&gt;size_t&lt;/font&gt;&amp;nbsp;i = &lt;font color="#ffffff"&gt;0&lt;/font&gt;; i &amp;lt; N/&lt;font color="#ffffff"&gt;2&lt;/font&gt;; ++i)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;BOOST_CHECK_EQUAL(carray_double[&lt;font color="#ffffff"&gt;2&lt;/font&gt;*i],&amp;nbsp;&amp;nbsp; carray_complex[i].real());&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;BOOST_CHECK_EQUAL(carray_double[&lt;font color="#ffffff"&gt;2&lt;/font&gt;*i+&lt;font color="#ffffff"&gt;1&lt;/font&gt;], carray_complex[i].imag());&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br&gt;
}&lt;br&gt;
&lt;br&gt;
&lt;font color="#b46918"&gt;// Ensure we can use a C-array of doubles as a ublas::vector.&lt;/font&gt;&lt;br&gt;
BOOST_AUTO_TEST_CASE( shallow_array_adaptor_double )&lt;br&gt;
{&lt;br&gt;
&amp;nbsp;&amp;nbsp;&lt;font color="#00ff00"&gt;const&lt;/font&gt;&amp;nbsp;std::&lt;font color="#00ff00"&gt;size_t&lt;/font&gt;&amp;nbsp;N = &lt;font color="#ffffff"&gt;3&lt;/font&gt;;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&lt;font color="#00ff00"&gt;double&lt;/font&gt;&amp;nbsp;raw[N];&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;shallow_adaptor_double adaptor(N, raw);&lt;br&gt;
&amp;nbsp;&amp;nbsp;shallow_vector_double&amp;nbsp;&amp;nbsp;vec(N, adaptor);&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;BOOST_CHECK_EQUAL( vec.size(), N );&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;std::fill(&amp;amp;raw[&lt;font color="#ffffff"&gt;0&lt;/font&gt;], &amp;amp;raw[N], &lt;font color="#ffffff"&gt;1.0&lt;/font&gt;);&lt;br&gt;
&amp;nbsp;&amp;nbsp;BOOST_CHECK_EQUAL_COLLECTIONS(&amp;amp;raw[&lt;font color="#ffffff"&gt;0&lt;/font&gt;], &amp;amp;raw[N], vec.begin(), vec.end());&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;std::fill(vec.begin(), vec.end(), &lt;font color="#ffffff"&gt;2.0&lt;/font&gt;);&lt;br&gt;
&amp;nbsp;&amp;nbsp;BOOST_CHECK_EQUAL_COLLECTIONS(&amp;amp;raw[&lt;font color="#ffffff"&gt;0&lt;/font&gt;], &amp;amp;raw[N], vec.begin(), vec.end());&lt;br&gt;
}&lt;br&gt;
&lt;br&gt;
&lt;font color="#b46918"&gt;// Ensure we can use a C-array of std::complex&amp;lt;double&amp;gt; as a ublas::vector.&lt;/font&gt;&lt;br&gt;
BOOST_AUTO_TEST_CASE( shallow_array_adaptor_complex )&lt;br&gt;
{&lt;br&gt;
&amp;nbsp;&amp;nbsp;&lt;font color="#00ff00"&gt;const&lt;/font&gt;&amp;nbsp;std::&lt;font color="#00ff00"&gt;size_t&lt;/font&gt;&amp;nbsp;N = &lt;font color="#ffffff"&gt;3&lt;/font&gt;;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&lt;font color="#00ff00"&gt;complex&lt;/font&gt;&amp;nbsp;raw[N];&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;shallow_adaptor_complex adaptor(N, raw);&lt;br&gt;
&amp;nbsp;&amp;nbsp;shallow_vector_complex&amp;nbsp;&amp;nbsp;vec(N, adaptor);&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;BOOST_CHECK_EQUAL( vec.size(), N );&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;std::fill(&amp;amp;raw[&lt;font color="#ffffff"&gt;0&lt;/font&gt;], &amp;amp;raw[N], &lt;font color="#00ff00"&gt;complex&lt;/font&gt;(&lt;font color="#ffffff"&gt;1.0&lt;/font&gt;, -&lt;font color="#ffffff"&gt;1.0&lt;/font&gt;));&lt;br&gt;
&amp;nbsp;&amp;nbsp;BOOST_CHECK_EQUAL_COLLECTIONS(&amp;amp;raw[&lt;font color="#ffffff"&gt;0&lt;/font&gt;], &amp;amp;raw[N], vec.begin(), vec.end());&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;std::fill(vec.begin(), vec.end(), &lt;font color="#00ff00"&gt;complex&lt;/font&gt;(&lt;font color="#ffffff"&gt;2.0&lt;/font&gt;, -&lt;font color="#ffffff"&gt;2.0&lt;/font&gt;));&lt;br&gt;
&amp;nbsp;&amp;nbsp;BOOST_CHECK_EQUAL_COLLECTIONS(&amp;amp;raw[&lt;font color="#ffffff"&gt;0&lt;/font&gt;], &amp;amp;raw[N], vec.begin(), vec.end());&lt;br&gt;
}&lt;br&gt;
&lt;br&gt;
&lt;font color="#b46918"&gt;// Ensure we can use the same data as either double or complex ublas::vector&lt;/font&gt;&lt;br&gt;
BOOST_AUTO_TEST_CASE( shallow_array_adaptor_shared )&lt;br&gt;
{&lt;br&gt;
&amp;nbsp;&amp;nbsp;&lt;font color="#00ff00"&gt;const&lt;/font&gt;&amp;nbsp;std::&lt;font color="#00ff00"&gt;size_t&lt;/font&gt;&amp;nbsp;N = &lt;font color="#ffffff"&gt;6&lt;/font&gt;;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&lt;font color="#00ff00"&gt;double&lt;/font&gt;&amp;nbsp;carray_double[N] = { &lt;font color="#ffffff"&gt;0.0&lt;/font&gt;, &lt;font color="#ffffff"&gt;1.0&lt;/font&gt;, &lt;font color="#ffffff"&gt;2.0&lt;/font&gt;, &lt;font color="#ffffff"&gt;3.0&lt;/font&gt;, &lt;font color="#ffffff"&gt;4.0&lt;/font&gt;, &lt;font color="#ffffff"&gt;5.0&lt;/font&gt;&amp;nbsp;};&lt;br&gt;
&amp;nbsp;&amp;nbsp;&lt;font color="#00ff00"&gt;complex&lt;/font&gt;&amp;nbsp;*carray_complex = &lt;font color="#ffffff"&gt;reinterpret_cast&lt;/font&gt;&amp;lt;&lt;font color="#00ff00"&gt;complex&lt;/font&gt;&amp;nbsp;*&amp;gt;(carray_double);&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;shallow_adaptor_double adaptor_double(N, carray_double);&lt;br&gt;
&amp;nbsp;&amp;nbsp;shallow_vector_double&amp;nbsp;&amp;nbsp;vec_double(N, adaptor_double);&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;shallow_adaptor_complex adaptor_complex(N, carray_complex);&lt;br&gt;
&amp;nbsp;&amp;nbsp;shallow_vector_complex&amp;nbsp;&amp;nbsp;vec_complex(N, adaptor_complex);&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&lt;font color="#ffffff"&gt;for&lt;/font&gt;&amp;nbsp;(std::&lt;font color="#00ff00"&gt;size_t&lt;/font&gt;&amp;nbsp;i = &lt;font color="#ffffff"&gt;0&lt;/font&gt;; i &amp;lt; N/&lt;font color="#ffffff"&gt;2&lt;/font&gt;; ++i)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;BOOST_CHECK_EQUAL(vec_double[&lt;font color="#ffffff"&gt;2&lt;/font&gt;*i],&amp;nbsp;&amp;nbsp; vec_complex[i].real());&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;BOOST_CHECK_EQUAL(vec_double[&lt;font color="#ffffff"&gt;2&lt;/font&gt;*i+&lt;font color="#ffffff"&gt;1&lt;/font&gt;], vec_complex[i].imag());&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&lt;font color="#ffffff"&gt;for&lt;/font&gt;&amp;nbsp;(std::&lt;font color="#00ff00"&gt;size_t&lt;/font&gt;&amp;nbsp;i = &lt;font color="#ffffff"&gt;0&lt;/font&gt;; i &amp;lt; N/&lt;font color="#ffffff"&gt;2&lt;/font&gt;; ++i)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;vec_complex[i] += vec_complex[&lt;font color="#ffffff"&gt;0&lt;/font&gt;];&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&lt;font color="#ffffff"&gt;for&lt;/font&gt;&amp;nbsp;(std::&lt;font color="#00ff00"&gt;size_t&lt;/font&gt;&amp;nbsp;i = &lt;font color="#ffffff"&gt;0&lt;/font&gt;; i &amp;lt; N/&lt;font color="#ffffff"&gt;2&lt;/font&gt;; ++i)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;BOOST_CHECK_EQUAL(vec_double[&lt;font color="#ffffff"&gt;2&lt;/font&gt;*i],&amp;nbsp;&amp;nbsp; vec_complex[i].real());&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;BOOST_CHECK_EQUAL(vec_double[&lt;font color="#ffffff"&gt;2&lt;/font&gt;*i+&lt;font color="#ffffff"&gt;1&lt;/font&gt;], vec_complex[i].imag());&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&lt;font color="#ffffff"&gt;for&lt;/font&gt;&amp;nbsp;(std::&lt;font color="#00ff00"&gt;size_t&lt;/font&gt;&amp;nbsp;i = &lt;font color="#ffffff"&gt;0&lt;/font&gt;; i &amp;lt; N; ++i)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;vec_double[i] += vec_double[N-&lt;font color="#ffffff"&gt;1&lt;/font&gt;];&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&lt;font color="#ffffff"&gt;for&lt;/font&gt;&amp;nbsp;(std::&lt;font color="#00ff00"&gt;size_t&lt;/font&gt;&amp;nbsp;i = &lt;font color="#ffffff"&gt;0&lt;/font&gt;; i &amp;lt; N/&lt;font color="#ffffff"&gt;2&lt;/font&gt;; ++i)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;BOOST_CHECK_EQUAL(vec_double[&lt;font color="#ffffff"&gt;2&lt;/font&gt;*i],&amp;nbsp;&amp;nbsp; vec_complex[i].real());&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;BOOST_CHECK_EQUAL(vec_double[&lt;font color="#ffffff"&gt;2&lt;/font&gt;*i+&lt;font color="#ffffff"&gt;1&lt;/font&gt;], vec_complex[i].imag());&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br&gt;
}&lt;br&gt;
&lt;/font&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6426345363781422461-1694565828932641324?l=agentzlerich.blogspot.com'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://agentzlerich.blogspot.com/feeds/1694565828932641324/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=6426345363781422461&amp;postID=1694565828932641324" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/1694565828932641324" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/1694565828932641324" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheReturnOfAgentZlerich/~3/-oe3QyuJ2p8/boostublasshallowarrayadaptor.html" title="BOOST_UBLAS_SHALLOW_ARRAY_ADAPTOR" /><author><name>Rhys Ulerich</name><uri>http://www.blogger.com/profile/02843453263307584747</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08988584636979642429" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://agentzlerich.blogspot.com/2009/10/boostublasshallowarrayadaptor.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-6426345363781422461.post-1981856941933312543</id><published>2009-09-30T19:00:00.009Z</published><updated>2009-09-30T19:00:00.236Z</updated><title type="text">Suzerain poster from 2009 PECOS center review</title><content type="html">&lt;p&gt;
I spend some time assembling a &lt;a href="http://www.scribd.com/doc/20164240/Suzerain-Poster"&gt;state-of-my-research poster&lt;/a&gt; for &lt;a href="http://pecos.ices.utexas.edu/"&gt;my research center's&lt;/a&gt; annual review:
&lt;/p&gt;

&lt;object codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" id="doc_63586229681828" name="doc_63586229681828" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" align="middle" height="500" width="100%" &gt;  &lt;param name="movie" value="http://d1.scribdassets.com/ScribdViewer.swf?document_id=20164240&amp;access_key=key-v88x9itv9swomkgyne7&amp;page=1&amp;version=1&amp;viewMode="&gt;   &lt;param name="quality" value="high"&gt;   &lt;param name="play" value="true"&gt;  &lt;param name="loop" value="true"&gt;   &lt;param name="scale" value="showall"&gt;  &lt;param name="wmode" value="opaque"&gt;   &lt;param name="devicefont" value="false"&gt;  &lt;param name="bgcolor" value="#ffffff"&gt;   &lt;param name="menu" value="true"&gt;  &lt;param name="allowFullScreen" value="true"&gt;   &lt;param name="allowScriptAccess" value="always"&gt;   &lt;param name="salign" value=""&gt;        &lt;embed src="http://d1.scribdassets.com/ScribdViewer.swf?document_id=20164240&amp;access_key=key-v88x9itv9swomkgyne7&amp;page=1&amp;version=1&amp;viewMode=" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" play="true" loop="true" scale="showall" wmode="opaque" devicefont="false" bgcolor="#ffffff" name="doc_63586229681828_object" menu="true" allowfullscreen="true" allowscriptaccess="always" salign="" type="application/x-shockwave-flash" align="middle"  height="500" width="100%"&gt;&lt;/embed&gt; &lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6426345363781422461-1981856941933312543?l=agentzlerich.blogspot.com'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://agentzlerich.blogspot.com/feeds/1981856941933312543/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=6426345363781422461&amp;postID=1981856941933312543" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/1981856941933312543" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/1981856941933312543" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheReturnOfAgentZlerich/~3/ZTqa20gbhFU/suzerain-poster-from-2009-pecos-center.html" title="Suzerain poster from 2009 PECOS center review" /><author><name>Rhys Ulerich</name><uri>http://www.blogger.com/profile/02843453263307584747</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08988584636979642429" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://agentzlerich.blogspot.com/2009/09/suzerain-poster-from-2009-pecos-center.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-6426345363781422461.post-2733048903596043233</id><published>2009-09-23T04:33:00.002Z</published><updated>2009-09-23T04:34:46.852Z</updated><title type="text">DFW IJ/And But So celebration this Saturday in Austin</title><content type="html">&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://3.bp.blogspot.com/_Q-Q3vIxb_KE/Srmh9uMh3sI/AAAAAAAAALw/ATR-MLV3hNE/s1600-h/Infinite_jest_cover.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_Q-Q3vIxb_KE/Srmh9uMh3sI/AAAAAAAAALw/ATR-MLV3hNE/s200/Infinite_jest_cover.jpg" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;
Partly because I stumbled across &lt;a href="http://infinitesummer.org/"&gt;Infinite Summer&lt;/a&gt; shortly after &lt;a href="http://www.rollingstone.com/news/story/23638511/the_lost_years__last_days_of_david_foster_wallace"&gt;David Foster Wallace died&lt;/a&gt;, and partly because I recommended the book to my older sister who bought it and dropped it and passed it on to my father who dropped it but still had the previous copy from several years back when I recommended it and he bought it, dropped it, and now gave his now double-dropped extra to me when I was visiting over the summer, I re-read &lt;a href="http://en.wikipedia.org/wiki/Infinite_Jest"&gt;Infinite Jest&lt;/a&gt; this July, August, and September.  I finished this morning. Like last time, I'm worried that most anything I pick up will be again unsatisfying to read for a long while.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://1.bp.blogspot.com/_Q-Q3vIxb_KE/SrmjsWtInZI/AAAAAAAAAMA/k8p-8o8VyLs/s1600-h/dfw_9.2.20092.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_Q-Q3vIxb_KE/SrmjsWtInZI/AAAAAAAAAMA/k8p-8o8VyLs/s200/dfw_9.2.20092.png" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
In commemoration of today's end of Infinite Summer, celebrations abound.  In Austin, there's &lt;a href="http://www.andbutso-austin.com/"&gt;And But So&lt;/a&gt; this Saturday the 26th.  Attendees bring their favorite Foster Wallace passages to read aloud.  I will sadly miss it.
If I could attend And But So, I would read this passage from "Lyndon" in David Foster Wallace's short story collection&amp;nbsp; &lt;a href="http://en.wikipedia.org/wiki/Girl_with_Curious_Hair"&gt;Girl With Curious Hair&lt;/a&gt;:&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt;
"The truth made the truth's usual quick circuit around the offices, the Building, the Hill.  I was a homosexual.  I had been a homosexual at Yale.  In my last year before matriculating to the Business College, I met and became intimate with a Yale undergraduate, Jeffrey, a wealthy boy from Houston, Texas, who was beautiful, often considerate, wistful, but passionate, possessive, and a sufferer from periodic bouts of clinical depression so severe he had to be medicated.  It was the medication, I discovered, that made him wistful.&lt;br /&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;a href="http://4.bp.blogspot.com/_Q-Q3vIxb_KE/SrmiM2jhqNI/AAAAAAAAAL4/aziwtreq1i4/s1600-h/2c5ad250fca0fd3bc8da9010.L.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_Q-Q3vIxb_KE/SrmiM2jhqNI/AAAAAAAAAL4/aziwtreq1i4/s320/2c5ad250fca0fd3bc8da9010.L.jpg" /&gt;&lt;/a&gt;"My lover Jeffrey ran with a group of synthetic but pleasant Texas socialites, one of whom was Margaret Childs, a tall, squarely built girl who eventually claimed, from unknown motive, to be in love with me.  Margaret pursued me.  I declined her in every sensitive way I knew.  But Jeffrey grew inflamed.  He revealed that his friends did not and must not know he was a homosexual.  He pushed me to avoid Margaret altogether, which was hard:  Margaret, gritty, bright enough to be chronically bored, had become puzzled, suspicious, of Jeffrey's (quite unsubtle) attempts to shield me from her.  She smelled potential drama, and kept up the pursuit.  Jeffrey become jealous as only the manic can.  In my first year in Business, while I was shopping for my father's annual Christmas golf balls, Jeffrey and Margaret had it out, publicly, dramatically, in a Beat New Haven coffeehouse.  Jeffrey put his foot through a doughnut counter.  Certain information became public.  Bits of this public information got back to my parents, who were close to the parents of two of my housemates.  My parents came to me, personally, at Yale, on campus.  It was snowing.  At dinner with my parents and housemates, at Morty's, Jeffrey became so upset that he had to be taken to the men's room and calmed.  My father swabbed Jeffrey's forehead with moist paper towels in a cold stall.  Jeffrey kept telling my father what a kind man he was.&lt;br /&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
"Before my parents left—their hands literally on the handles of the station wagon's doors—my father, in the snow, asked me whether my sexual preferences were outside my own control.  He asked me whether, were I to meet the right woman, I might be capable of heterosexual love, of marriage and a family and a pillar-type position in the community of my choice.  These, my father explained, were his and my mother's great and only wishes for me, their one child, whom they loved without judgment.  My mother did not speak.  I remember a distanced interest in the steam of my own breath as I explained why I thought I could not and so would not do as my father wished, invoking Fifties' wisdom about deviancy, invoking a sort of god of glands as a shaman might blame vegetable spirits for a lost harvest.  My father nodded continually throughout this whole very serious and civil conversation while my mother checked maps in the glove compartment.  When I failed to present for next week's holiday, my father send me a card, my mother a check and leftovers in foil.&lt;br /&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
"I saw them only once more before my father dropped dead of something unexpected.  I had left Jeffrey's company, and had been befriended in my upset by a still grimly determined Margaret Childs.  Jeffrey unfortunately saw, in all this, cause to take his own life, which he did in an especially nasty way; and he left, on the table beneath the heating pipes from which he was found suspended, a note—a document—neatly typed, full enough of absolute truth concatenated with utter fiction that I was asked by the administration of the Business College to leave Yale University.  Weeks after my father's wake I married Margaret Childs, under a mesquite tree, the blue stares of my mother and a Houston sky, and a system of vows, promises of strength, denial, trial, and compassion far beyond the Childs' Baptist minister's ritual prescriptions.&lt;br /&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
"The truth, to which there was really no more than that, and which made its way through the Senator's staff, the Dirksen, and Owen Buildings, and the Little Congress of the Hill's three-piece-suited infantry remarkably focused and unexaggerated, concluded with the fact that Margaret's father, Mr. Childs, less wealthy than outright powerful by the standards of 1958's Texas, had lines of political influence that projected all the way into the U.S. Senate, and that he, Mr. Childs, in a gesture that was both carrot and stick, slung his son-in-law on one line of that influence and had me hand-over-hand it into the offices of a risen and rising, uncouth and ingenious senior Senator, a possible Democratic candidate in the next Presidential election.  Lyndon."&lt;br /&gt;
&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6426345363781422461-2733048903596043233?l=agentzlerich.blogspot.com'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://agentzlerich.blogspot.com/feeds/2733048903596043233/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=6426345363781422461&amp;postID=2733048903596043233" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/2733048903596043233" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/2733048903596043233" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheReturnOfAgentZlerich/~3/3qSednmuCRY/dfw-ijand-but-so-celebration-this.html" title="DFW IJ/And But So celebration this Saturday in Austin" /><author><name>Rhys Ulerich</name><uri>http://www.blogger.com/profile/02843453263307584747</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08988584636979642429" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_Q-Q3vIxb_KE/Srmh9uMh3sI/AAAAAAAAALw/ATR-MLV3hNE/s72-c/Infinite_jest_cover.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://agentzlerich.blogspot.com/2009/09/dfw-ijand-but-so-celebration-this.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-6426345363781422461.post-4484404829012651219</id><published>2009-09-14T22:59:00.001Z</published><updated>2009-09-14T23:00:12.399Z</updated><title type="text">The skew-adjoint convective derivative operator</title><content type="html">&lt;p&gt;
Many CFD papers talk about using the skew-symmetric form of the convector operator in the Navier-Stokes equations.  The math behind this terminology has confused me for some time (e.g. the operator's nonlinear in the Navier-Stokes equations), so finally I dug through the algebra to show why and when the linear operator is &lt;a href="http://en.wikipedia.org/wiki/Skew-Hermitian_matrix"&gt;skew-Hermitian&lt;/a&gt; and/or skew-adjoint.
&lt;/p&gt;

&lt;a title="View The skew-adjoint (skew-symmetric) form of the convective derivative on Scribd" 
href="http://www.scribd.com/doc/19750033/The-skewadjoint-skewsymmetric-form-of-the-convective-derivative" style="margin: 12px auto 6px auto; font-family: Helvetica,Arial,Sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 14px; line-height: normal; font-size-adjust: none; font-stretch: normal; -x-system-font: none; display: block; text-decoration: underline;"&gt;The skew-adjoint (skew-symmetric) form of the convective derivative&lt;/a&gt; &lt;object codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" id="doc_812891748563075" name="doc_812891748563075" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" align="middle" height="500" width="100%" &gt;  &lt;param name="movie" value="http://d1.scribdassets.com/ScribdViewer.swf?document_id=19750033&amp;access_key=key-zsl3k93psl4tqw1ejmu&amp;page=1&amp;version=1&amp;viewMode="&gt;   &lt;param name="quality" value="high"&gt;   &lt;param name="play" value="true"&gt;  &lt;param name="loop" value="true"&gt;   &lt;param name="scale" value="showall"&gt;  &lt;param name="wmode" value="opaque"&gt;   &lt;param name="devicefont" value="false"&gt;  &lt;param name="bgcolor" value="#ffffff"&gt;   &lt;param name="menu" value="true"&gt;  &lt;param name="allowFullScreen" value="true"&gt;   &lt;param name="allowScriptAccess" value="always"&gt;   &lt;param name="salign" value=""&gt;        &lt;embed src="http://d1.scribdassets.com/ScribdViewer.swf?document_id=19750033&amp;access_key=key-zsl3k93psl4tqw1ejmu&amp;page=1&amp;version=1&amp;viewMode=" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" play="true" loop="true" scale="showall" wmode="opaque" devicefont="false" bgcolor="#ffffff" name="doc_812891748563075_object" menu="true" allowfullscreen="true" allowscriptaccess="always" salign="" type="application/x-shockwave-flash" align="middle"  height="500" width="100%"&gt;&lt;/embed&gt; &lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6426345363781422461-4484404829012651219?l=agentzlerich.blogspot.com'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://agentzlerich.blogspot.com/feeds/4484404829012651219/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=6426345363781422461&amp;postID=4484404829012651219" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/4484404829012651219" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/4484404829012651219" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheReturnOfAgentZlerich/~3/FDGeoWU5RfA/skew-adjoint-convective-derivative.html" title="The skew-adjoint convective derivative operator" /><author><name>Rhys Ulerich</name><uri>http://www.blogger.com/profile/02843453263307584747</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08988584636979642429" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://agentzlerich.blogspot.com/2009/09/skew-adjoint-convective-derivative.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-6426345363781422461.post-5225435258900410815</id><published>2009-07-16T23:32:00.000Z</published><updated>2009-07-16T23:32:48.730Z</updated><title type="text">Printing arrays and gsl_matrix data in 2D form within gdb</title><content type="html">&lt;p&gt;
Because I'm lousy with indexing, I often have to watch loops unfurl live in &lt;a href="http://www.gnu.org/software/gdb/"&gt;gdb&lt;/a&gt;.  Here are several quick user-defined
gdb commands that make inspecting 2-dimensional data stored in a 1-dimensional array
much easier.
&lt;/p&gt;

&lt;p&gt;
Place the following commands in your &lt;code&gt;~/.gdbinit&lt;/code&gt;:
&lt;code&gt;&lt;pre&gt;
# Modified from http://sourceware.org/ml/gdb/2007-07/msg00140.html
define p_array2d_generic
    set $array=$arg0
    set $ibound=$arg1
    set $jbound=$arg2
    set $ilda=$arg3
    set $jlda=$arg4

    set $i = 0
    set $j = 0
    while $i&lt;$ibound
        while $j&lt;$jbound
            printf " "
            printf "%9.4g", $array[$i*$ilda+$j*$jlda]
            set $j = $j + 1
        end
        printf "\n"
        set $j = 0
        set $i = $i + 1
    end
end

document p_array2d_generic
Print an array in 2D form: p_array2d array ibound jbound ilda jlda
end

define p_array2d_cm
    p_array2d_generic $arg0 $arg1 $arg2 1 $arg1
end

document p_array2d_cm
Print an array in column-major 2D form: p_array2d array ibound jbound
end

define p_array2d_rm
    p_array2d_generic $arg0 $arg1 $arg2 $arg2 1
end

document p_array2d_rm
Print an array in row-major 2D form: p_array2d array ibound jbound
end
&lt;/pre&gt;&lt;/code&gt;
Now you can use &lt;code&gt;p_array2d_cm&lt;/code&gt; and &lt;code&gt;p_array2d_rm&lt;/code&gt; to print out column- and row-major double arrays, respectively.
&lt;/p&gt;

&lt;p&gt;
Using the above and &lt;a href="http://www.gnu.org/software/gsl/manual/html_node/Accessing-matrix-elements.html"&gt;some information about the memory layout of &lt;code&gt;gsl_matrix&lt;/code&gt; instances&lt;/a&gt;, it's now easy to write one line function to dump a &lt;code&gt;gsl_matrix&lt;/code&gt;:
&lt;code&gt;&lt;pre&gt;
define p_gsl_matrix
    p_array2d_generic $arg0-&gt;data $arg0-&gt;size1 $arg0-&gt;size2 $arg0-&gt;tda 1
end

document p_gsl_matrix
Print a gsl_matrix in 2D form: p_gsl_matrix (gsl_matrix *)
end
&lt;/pre&gt;&lt;/code&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;b&gt;Question for you:&lt;/b&gt; I would like to have the p_array2d_generic take an additional argument which is a format specifier.  A check using &lt;code&gt;$argc&lt;/code&gt; would allow a reasonable, &lt;code&gt;double&lt;/code&gt;-based default but would allow the user to specify anything he or she desires.  However, I cannot get code like
&lt;code&gt;&lt;pre&gt;
set $format="%3.2g"
printf $format, 123
&lt;/pre&gt;&lt;/code&gt;
to work the way I think it should.  I always run into a gdb error like &amp;lt;&amp;lt;Bad format string, missing '"'.&amp;gt;&amp;gt;.  Anyone have any ideas how to provide a printf template parameter from a set variable in gdb?
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6426345363781422461-5225435258900410815?l=agentzlerich.blogspot.com'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://agentzlerich.blogspot.com/feeds/5225435258900410815/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=6426345363781422461&amp;postID=5225435258900410815" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/5225435258900410815" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/5225435258900410815" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheReturnOfAgentZlerich/~3/CicMgj9GUYU/printing-arrays-and-gslmatrix-data-in.html" title="Printing arrays and gsl_matrix data in 2D form within gdb" /><author><name>Rhys Ulerich</name><uri>http://www.blogger.com/profile/02843453263307584747</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08988584636979642429" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://agentzlerich.blogspot.com/2009/07/printing-arrays-and-gslmatrix-data-in.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-6426345363781422461.post-8777307194559095628</id><published>2009-07-07T03:38:00.001Z</published><updated>2009-07-07T03:38:32.173Z</updated><title type="text">My favorite South Austin photo</title><content type="html">&lt;div style="float:right;"&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/_Q-Q3vIxb_KE/SlLA4tDpbaI/AAAAAAAAALo/dEYWwnLZerE/s1600-h/WithChihuahua04July2009.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_Q-Q3vIxb_KE/SlLA4tDpbaI/AAAAAAAAALo/dEYWwnLZerE/s320/WithChihuahua04July2009.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;b&gt;Quick!&lt;/b&gt; Find the following items in the South Austin picture to the right:
&lt;ol&gt;
&lt;li&gt;tiki torch&lt;/li&gt;
&lt;li&gt;pina colada&lt;/li&gt;
&lt;li&gt;high volume bangs&lt;/li&gt;
&lt;li&gt;proto-dreads&lt;/li&gt;
&lt;li&gt;man purse&lt;/li&gt;
&lt;li&gt;brick in the middle of the grass&lt;/li&gt;
&lt;li&gt;patriotic broach&lt;/li&gt;
&lt;li&gt;aviator sunglasses&lt;/li&gt;
&lt;li&gt;cheap Mexican beer&lt;/li&gt;
&lt;li&gt;a chihuahua wearing a lei&lt;/li&gt;
&lt;li&gt;a massive inflatable pool complete with pump&lt;/li&gt;
&lt;/ol&gt;
I need to cross the river (&lt;a href="http://en.wikipedia.org/wiki/Lady_Bird_Lake"&gt;lake?&lt;/a&gt;) more often.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6426345363781422461-8777307194559095628?l=agentzlerich.blogspot.com'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://agentzlerich.blogspot.com/feeds/8777307194559095628/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=6426345363781422461&amp;postID=8777307194559095628" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/8777307194559095628" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/8777307194559095628" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheReturnOfAgentZlerich/~3/7ySkqV31Qqs/my-favorite-south-austin-photo.html" title="My favorite South Austin photo" /><author><name>Rhys Ulerich</name><uri>http://www.blogger.com/profile/02843453263307584747</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08988584636979642429" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_Q-Q3vIxb_KE/SlLA4tDpbaI/AAAAAAAAALo/dEYWwnLZerE/s72-c/WithChihuahua04July2009.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://agentzlerich.blogspot.com/2009/07/my-favorite-south-austin-photo.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-6426345363781422461.post-6568110050347122750</id><published>2009-07-01T04:45:00.003Z</published><updated>2009-07-01T04:48:05.422Z</updated><title type="text">Skateboarding (Injury)</title><content type="html">&lt;p&gt;
Eight days ago I purchased a skateboard at the age of 27.  Three days ago I fell at &lt;a href="http://www.ci.austin.tx.us/parks/mabeldavis.htm"&gt;Mabel Davis&lt;/a&gt; park at the age of 27.  I messed up an elbow badly enough that I've been in a sling for several days now.  I see an orthopedic surgeon tomorrow morning to figure out why I cannot straighten my right arm completely.  No harm though, I can still type and use a mouse.
&lt;/p&gt;

&lt;p&gt;
I'm primarily annoyed that I can't roll around again until this injury is healed.  I'm awful at the sport, but damn it is fun stuff.  Behold shameless YouTubage of the guy who's name is on the bottom of my deck:
&lt;center&gt;&lt;object width="340" height="280"&gt;&lt;param name="movie" value="http://www.youtube.com/v/ldK3HaVPd4o&amp;hl=en&amp;fs=1&amp;rel=0&amp;color1=0xe1600f&amp;color2=0xfebd01&amp;border=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/ldK3HaVPd4o&amp;hl=en&amp;fs=1&amp;rel=0&amp;color1=0xe1600f&amp;color2=0xfebd01&amp;border=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="340" height="280"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/center&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6426345363781422461-6568110050347122750?l=agentzlerich.blogspot.com'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://agentzlerich.blogspot.com/feeds/6568110050347122750/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=6426345363781422461&amp;postID=6568110050347122750" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/6568110050347122750" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/6568110050347122750" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheReturnOfAgentZlerich/~3/4tcit3eRZCE/skateboarding-injury.html" title="Skateboarding (Injury)" /><author><name>Rhys Ulerich</name><uri>http://www.blogger.com/profile/02843453263307584747</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08988584636979642429" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://agentzlerich.blogspot.com/2009/07/skateboarding-injury.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-6426345363781422461.post-4284481881897954413</id><published>2009-06-26T16:00:00.006Z</published><updated>2009-06-27T04:27:13.439Z</updated><title type="text">Frank Gabron</title><content type="html">&lt;p&gt;
The Penn State Mechanical and Nuclear Engineering department's last alumni newsletter had a small feature on Frank Gabron (article follows).  I received one of his scholarships while I was an undergraduate, and it (along with my parents being very cool) was what allowed me to spend long enough on campus to pick up a double major with a double minor.  Every year I wrote Gabron a thank you note, and every year he wrote back.  
&lt;/p&gt;

&lt;p&gt;
One fall his response said he was coming into State College and would like to have dinner.  We ate at the Nittany Lion Inn and made small talk.  He told some fantastic stories.  After dinner we walked outside and shared that awkward I'm-going-to-smoke-dont-judge-me-oh-no-way-you-smoke-too moment.  As we stood and talked he asked if I'd like to come to the Penn State game the following day.
&lt;/p&gt;

&lt;p&gt;
I went back to the Inn for a pre-game pep rally with Graham Spanier firing up everyone.  We rode over to the stadium and watched the game from the nicest seats I will ever have in Beaver Stadium&amp;mdash;the president's box.  At halftime we snuck out for a smoke at a place inside the stadium where he knew he could usually get away with one.  He was telling me about his Helix Technology Corporation when a campus cop wandered into the outside area.  Without missing a beat, the man said "Oh shit, here comes the gendarme!" and cupped his cigarette in his hand behind his back like a kid in a high school parking lot when the coach drives past.
&lt;/p&gt;

&lt;p&gt;
After the game we rode back to the Inn.  I fell asleep on the bus on the way back, woke up hurriedly, did a lousy job of saying thank you, and then ran off to flip burgers at Baby's for a closing shift.  I don't remember who Penn State played that day, or even if we won.  But I do and always will remember that as one of the two or three best weekends I spent on campus.
&lt;/p&gt;

&lt;a title="View PSU MNE Spring 2009 Newsletter: Frank Gabron Article on Scribd" href="http://www.scribd.com/doc/16427126/PSU-MNE-Spring-2009-Newsletter-Frank-Gabron-Article" style="margin: 12px auto 6px auto; font-family: Helvetica,Arial,Sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 14px; line-height: normal; font-size-adjust: none; font-stretch: normal; -x-system-font: none; display: block; text-decoration: underline;"&gt;PSU MNE Spring 2009 Newsletter: Frank Gabron Article&lt;/a&gt; &lt;object codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" id="doc_629554455421426" name="doc_629554455421426" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" align="middle" height="500" width="100%" rel="media:document" resource="http://d.scribd.com/ScribdViewer.swf?document_id=16427126&amp;access_key=key-1pgjsrylu80clw3pfuqy&amp;page=1&amp;version=1&amp;viewMode=" xmlns:media="http://search.yahoo.com/searchmonkey/media/" xmlns:dc="http://purl.org/dc/terms/" &gt;  &lt;param name="movie" value="http://d.scribd.com/ScribdViewer.swf?document_id=16427126&amp;access_key=key-1pgjsrylu80clw3pfuqy&amp;page=1&amp;version=1&amp;viewMode="&gt;   &lt;param name="quality" value="high"&gt;   &lt;param name="play" value="true"&gt;  &lt;param name="loop" value="true"&gt;   &lt;param name="scale" value="showall"&gt;  &lt;param name="wmode" value="opaque"&gt;   &lt;param name="devicefont" value="false"&gt;  &lt;param name="bgcolor" value="#ffffff"&gt;   &lt;param name="menu" value="true"&gt;  &lt;param name="allowFullScreen" value="true"&gt;   &lt;param name="allowScriptAccess" value="always"&gt;   &lt;param name="salign" value=""&gt;        &lt;embed src="http://d.scribd.com/ScribdViewer.swf?document_id=16427126&amp;access_key=key-1pgjsrylu80clw3pfuqy&amp;page=1&amp;version=1&amp;viewMode=" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" play="true" loop="true" scale="showall" wmode="opaque" devicefont="false" bgcolor="#ffffff" name="doc_629554455421426_object" menu="true" allowfullscreen="true" allowscriptaccess="always" salign="" type="application/x-shockwave-flash" align="middle"  height="500" width="100%"&gt;&lt;/embed&gt; &lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6426345363781422461-4284481881897954413?l=agentzlerich.blogspot.com'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://agentzlerich.blogspot.com/feeds/4284481881897954413/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=6426345363781422461&amp;postID=4284481881897954413" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/4284481881897954413" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/4284481881897954413" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheReturnOfAgentZlerich/~3/0u3PBtPPb3w/frank-gabron.html" title="Frank Gabron" /><author><name>Rhys Ulerich</name><uri>http://www.blogger.com/profile/02843453263307584747</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08988584636979642429" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://agentzlerich.blogspot.com/2009/06/frank-gabron.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-6426345363781422461.post-7272246592383811195</id><published>2009-06-18T14:43:00.006Z</published><updated>2009-06-28T20:49:04.151Z</updated><title type="text">Trefethen's Gauss Quadrature vs Clenshaw-Curtis Paper</title><content type="html">&lt;p&gt;
From a quick look into B-spline Galerkin methods, I need to integrate B-spline basis functions against each other.  Though I could extract piecewise polynomial representations and integrate them symbolically, it was more fun to see what fixed order Gauss quadrature FOSS existed.  I stumbled across &lt;a href="http://www.holoborodko.com/pavel/?page_id=679"&gt;Pavel Holoborodko's excellent routines&lt;/a&gt;.  I'm in the process of preparing a patch for the &lt;a href="http://www.gnu.org/software/gsl/"&gt;GNU Scientific Library&lt;/a&gt; that ports Pavel's code to GSL conventions (&lt;b&gt;update&lt;/b&gt;: &lt;a href="http://sourceware.org/ml/gsl-discuss/2009-q2/msg00027.html"&gt;patch submitted&lt;/a&gt;).  Hopefully they'll accept it (&lt;b&gt;update&lt;/b&gt;: &lt;a href="http://sourceware.org/ml/gsl-discuss/2009-q2/msg00035.html"&gt;patch accepted&lt;/a&gt;).
&lt;/p&gt;

&lt;p&gt;
While digging around, I ran across a beautiful paper by Trefethen which I just finished on the morning bus ride into campus.  Absolutely fantastic.
&lt;div style="margin:10px 10px 10px 10px; padding-left:10px;text-align:left; border-left:10px solid #acacac;"&gt;
 &lt;span style="font-size:14px; padding-bottom:5px; font-weight:bold;"&gt;Is Gauss Quadrature Better than Clenshaw–Curtis?&lt;/span&gt;&lt;br/&gt;
 &lt;span&gt;SIAM Rev. &lt;strong&gt;50&lt;/strong&gt;, 67 (2008)&lt;br/&gt;
 &lt;a href="http://link.aip.org/link/?SIREAD/50/67/1"&gt;http://link.aip.org/link/?SIREAD/50/67/1&lt;/a&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;/p&gt;

&lt;p&gt;
The paper is so good that it makes me also want to try implementing Clenshaw-Curtis rules for GSL.
Before coding, I need to read this follow up work which it seems may have some numerical details buried within it.
&lt;div style="margin:10px 10px 10px 10px; padding-left:10px;text-align:left; border-left:10px solid #acacac;"&gt;
 &lt;span style="font-size:14px; padding-bottom:5px; font-weight:bold;"&gt;New Quadrature Formulas from Conformal Maps&lt;/span&gt;&lt;br/&gt;
 &lt;span&gt;SIAM J. Numer. Anal. &lt;strong&gt;46&lt;/strong&gt;, 930 (2008)&lt;br/&gt;
 &lt;a href="http://link.aip.org/link/?SJNAAM/46/930/1"&gt;http://link.aip.org/link/?SJNAAM/46/930/1&lt;/a&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6426345363781422461-7272246592383811195?l=agentzlerich.blogspot.com'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://agentzlerich.blogspot.com/feeds/7272246592383811195/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=6426345363781422461&amp;postID=7272246592383811195" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/7272246592383811195" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/7272246592383811195" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheReturnOfAgentZlerich/~3/g4--VNvYhVg/trefethens-gauss-quadrature-vs-clenshaw.html" title="Trefethen's Gauss Quadrature vs Clenshaw-Curtis Paper" /><author><name>Rhys Ulerich</name><uri>http://www.blogger.com/profile/02843453263307584747</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08988584636979642429" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://agentzlerich.blogspot.com/2009/06/trefethens-gauss-quadrature-vs-clenshaw.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-6426345363781422461.post-5307959554805797650</id><published>2009-06-13T21:50:00.002Z</published><updated>2009-06-13T21:54:39.026Z</updated><title type="text">Stack Overflow Dev Day in Austin</title><content type="html">&lt;p&gt;
&lt;a href="http://www.joelonsoftware.com/"&gt;Joel Spolsky&lt;/a&gt; and &lt;a href="http://www.codinghorror.com/"&gt;Jeff Atwood&lt;/a&gt; will be speaking at &lt;a href="http://www.amiando.com/stackoverflowdevdays-austin.html?uid=QbwEoWErPvQLvv9z"&gt;Stack Overflow Dev Day in Austin&lt;/a&gt; on October 14th.  Student tickets to the event are a mere $10 and they provide lunch.  Total no brainer.
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6426345363781422461-5307959554805797650?l=agentzlerich.blogspot.com'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://agentzlerich.blogspot.com/feeds/5307959554805797650/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=6426345363781422461&amp;postID=5307959554805797650" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/5307959554805797650" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/5307959554805797650" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheReturnOfAgentZlerich/~3/yMkZztCEb-I/stack-overflow-dev-day-in-austin.html" title="Stack Overflow Dev Day in Austin" /><author><name>Rhys Ulerich</name><uri>http://www.blogger.com/profile/02843453263307584747</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08988584636979642429" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://agentzlerich.blogspot.com/2009/06/stack-overflow-dev-day-in-austin.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-6426345363781422461.post-2646183960484137678</id><published>2009-06-09T20:27:00.003Z</published><updated>2009-06-09T20:33:24.431Z</updated><title type="text">Grrr... (Richardson Extrapolation)</title><content type="html">&lt;p&gt;
Many times, when banging my ahead against on what has to be a really simple problem, I waste a &lt;i&gt;lot&lt;/i&gt; of time over-engineering my debugging tools.  Behold: &lt;a href="http://www.mathworks.com/matlabcentral/fileexchange/24388"&gt;richardson.m&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
(But then, years later, some of this crap comes up in conversation and the tool is already polished enough to hand it to someone else.  At least this is what I tell myself...)
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6426345363781422461-2646183960484137678?l=agentzlerich.blogspot.com'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://agentzlerich.blogspot.com/feeds/2646183960484137678/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=6426345363781422461&amp;postID=2646183960484137678" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/2646183960484137678" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/2646183960484137678" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheReturnOfAgentZlerich/~3/oOAjM_jQdUo/grrr-richardson-extrapolation.html" title="Grrr... (Richardson Extrapolation)" /><author><name>Rhys Ulerich</name><uri>http://www.blogger.com/profile/02843453263307584747</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08988584636979642429" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://agentzlerich.blogspot.com/2009/06/grrr-richardson-extrapolation.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-6426345363781422461.post-4347457258114575682</id><published>2009-05-24T04:39:00.000Z</published><updated>2009-05-24T04:39:03.415Z</updated><title type="text">le semaine prochaine avec mes parents</title><content type="html">&lt;h3&gt;There...&lt;/h3&gt;
&lt;iframe width="650" height="350" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="http://maps.google.com/maps?f=d&amp;amp;source=s_d&amp;amp;saddr=1111+w+12th+st+austin,+tx&amp;amp;daddr=N+FM-620%2FRanch+Rd+620+N%2FRM-620+N+to:TX-27+to:Ranch+Rd+187+to:Ranch+Rd+187+to:Market+St%2FUS-83+to:Ranch+Rd+337+to:E+Musquiz+Dr%2FTX-118+to:TX-118+to:Ranch+Rd+505+to:US-67+to:266+Tecolote+Dr,+Big+Bend+Natl+Pk,+TX+79834+(Big+Bend+National+Park)&amp;amp;hl=en&amp;amp;geocode=%3BFQ6tzwEdBhIq-g%3BFVLjyAEdIlcZ-g%3BFeh3xgEdkrgQ-g%3BFdASxgEdMMoQ-g%3BFcidxQEdlsEN-g%3BFb7BxAEd2AoK-g%3BFQCp0gEd4M_O-Q%3BFSxh1QEdVtHK-Q%3BFbK20QEdaOvG-Q%3BFV5QwwEdTlXH-Q%3BFefsvgEd0YbZ-SHwf-Mc1NMvIg&amp;amp;mra=ls&amp;amp;via=1,2,3,4,5,6,7,8,9,10&amp;amp;dirflg=h&amp;amp;sll=30.944636,-103.07373&amp;amp;sspn=3.363553,4.943848&amp;amp;ie=UTF8&amp;amp;ll=30.078601,-101.052246&amp;amp;spn=3.327102,7.141113&amp;amp;z=7&amp;amp;output=embed"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;small&gt;&lt;a href="http://maps.google.com/maps?f=d&amp;amp;source=embed&amp;amp;saddr=1111+w+12th+st+austin,+tx&amp;amp;daddr=N+FM-620%2FRanch+Rd+620+N%2FRM-620+N+to:TX-27+to:Ranch+Rd+187+to:Ranch+Rd+187+to:Market+St%2FUS-83+to:Ranch+Rd+337+to:E+Musquiz+Dr%2FTX-118+to:TX-118+to:Ranch+Rd+505+to:US-67+to:266+Tecolote+Dr,+Big+Bend+Natl+Pk,+TX+79834+(Big+Bend+National+Park)&amp;amp;hl=en&amp;amp;geocode=%3BFQ6tzwEdBhIq-g%3BFVLjyAEdIlcZ-g%3BFeh3xgEdkrgQ-g%3BFdASxgEdMMoQ-g%3BFcidxQEdlsEN-g%3BFb7BxAEd2AoK-g%3BFQCp0gEd4M_O-Q%3BFSxh1QEdVtHK-Q%3BFbK20QEdaOvG-Q%3BFV5QwwEdTlXH-Q%3BFefsvgEd0YbZ-SHwf-Mc1NMvIg&amp;amp;mra=ls&amp;amp;via=1,2,3,4,5,6,7,8,9,10&amp;amp;dirflg=h&amp;amp;sll=30.944636,-103.07373&amp;amp;sspn=3.363553,4.943848&amp;amp;ie=UTF8&amp;amp;ll=30.078601,-101.052246&amp;amp;spn=3.327102,7.141113&amp;amp;z=7" style="color:#0000FF;text-align:left"&gt;View Larger Map&lt;/a&gt;&lt;/small&gt;

&lt;h3&gt;...and back again&lt;/h3&gt;
&lt;iframe width="650" height="350" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="http://maps.google.com/maps?f=d&amp;amp;source=s_d&amp;amp;saddr=266+Tecolote+Dr,+Big+Bend+Natl+Pk,+TX+79834+(Big+Bend+National+Park)&amp;amp;daddr=TX-163+to:Ranch+Rd+336+to:TX-39+to:TX-39+to:S+Ranch+Rd+783+to:N+Ranch+Rd+783+to:Ranch+Rd+1323+to:30.524413,-98.058472+to:1111+w+12th+st+austin,+tx&amp;amp;hl=en&amp;amp;geocode=FefsvgEd0YbZ-SHwf-Mc1NMvIg%3BFbpyzAEdqnH5-Q%3BFZZGxwEdhHQN-g%3BFXoLyQEdHCYQ-g%3BFSbRygEdGq8U-g%3BFfyyzAEd-C4W-g%3BFRT8zwEdgnIW-g%3BFQi9zwEdjqMf-g%3B%3B&amp;amp;mra=dme&amp;amp;mrcr=0&amp;amp;mrsp=8&amp;amp;sz=9&amp;amp;via=1,2,3,4,5,6,7,8&amp;amp;dirflg=h&amp;amp;sll=30.059586,-98.926392&amp;amp;sspn=1.697265,2.471924&amp;amp;ie=UTF8&amp;amp;ll=29.826348,-100.409546&amp;amp;spn=3.335708,7.141113&amp;amp;z=7&amp;amp;output=embed"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;small&gt;&lt;a href="http://maps.google.com/maps?f=d&amp;amp;source=embed&amp;amp;saddr=266+Tecolote+Dr,+Big+Bend+Natl+Pk,+TX+79834+(Big+Bend+National+Park)&amp;amp;daddr=TX-163+to:Ranch+Rd+336+to:TX-39+to:TX-39+to:S+Ranch+Rd+783+to:N+Ranch+Rd+783+to:Ranch+Rd+1323+to:30.524413,-98.058472+to:1111+w+12th+st+austin,+tx&amp;amp;hl=en&amp;amp;geocode=FefsvgEd0YbZ-SHwf-Mc1NMvIg%3BFbpyzAEdqnH5-Q%3BFZZGxwEdhHQN-g%3BFXoLyQEdHCYQ-g%3BFSbRygEdGq8U-g%3BFfyyzAEd-C4W-g%3BFRT8zwEdgnIW-g%3BFQi9zwEdjqMf-g%3B%3B&amp;amp;mra=dme&amp;amp;mrcr=0&amp;amp;mrsp=8&amp;amp;sz=9&amp;amp;via=1,2,3,4,5,6,7,8&amp;amp;dirflg=h&amp;amp;sll=30.059586,-98.926392&amp;amp;sspn=1.697265,2.471924&amp;amp;ie=UTF8&amp;amp;ll=29.826348,-100.409546&amp;amp;spn=3.335708,7.141113&amp;amp;z=7" style="color:#0000FF;text-align:left"&gt;View Larger Map&lt;/a&gt;&lt;/small&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6426345363781422461-4347457258114575682?l=agentzlerich.blogspot.com'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://agentzlerich.blogspot.com/feeds/4347457258114575682/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=6426345363781422461&amp;postID=4347457258114575682" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/4347457258114575682" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/4347457258114575682" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheReturnOfAgentZlerich/~3/fwhdN5wCG_s/le-semaine-prochaine-avec-mes-parents.html" title="le semaine prochaine avec mes parents" /><author><name>Rhys Ulerich</name><uri>http://www.blogger.com/profile/02843453263307584747</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08988584636979642429" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://agentzlerich.blogspot.com/2009/05/le-semaine-prochaine-avec-mes-parents.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-6426345363781422461.post-1702241404858684786</id><published>2009-05-18T00:55:00.001Z</published><updated>2009-05-18T00:57:07.705Z</updated><title type="text">Master's degree and a third patent grant</title><content type="html">&lt;p&gt;
Nice week all in all.  I finished an &lt;a href="http://www.ices.utexas.edu/cam/courses/ms_requirements.php"&gt;M.S. in Computational and Applied Mathematics&lt;/a&gt; which has been four semesters in the making.
&lt;/p&gt;

&lt;p&gt;
Longer than that in process, though markedly less work, was getting my third patent grant &lt;a href="http://patft.uspto.gov/netacgi/nph-Parser?Sect1=PTO1&amp;Sect2=HITOFF&amp;d=PALL&amp;p=1&amp;u=%2Fnetahtml%2FPTO%2Fsrchnum.htm&amp;r=1&amp;f=G&amp;l=50&amp;s1=7532617.PN.&amp;OS=PN/7532617&amp;RS=PN/7532617"&gt;US 7,532,617&lt;/a&gt;:
&lt;/p&gt;
&lt;blockquote&gt;
A method, apparatus, and computer instructions are provided for a session initiation protocol application design, development, execution, and integration. A framework with a framework controller, an application data object, transition handlers, precondition handlers and post condition handlers is provided. When a message is received in a SIP application, the framework controller determines a state of application and parses the message to update application data by using corresponding handlers. The handlers for each state are specified in an input markup language model defined by a user externally via a Web service accessible component.
&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6426345363781422461-1702241404858684786?l=agentzlerich.blogspot.com'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://agentzlerich.blogspot.com/feeds/1702241404858684786/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=6426345363781422461&amp;postID=1702241404858684786" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/1702241404858684786" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/1702241404858684786" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheReturnOfAgentZlerich/~3/OdKW-DR_-BQ/masters-degree-and-third-patent-grant.html" title="Master's degree and a third patent grant" /><author><name>Rhys Ulerich</name><uri>http://www.blogger.com/profile/02843453263307584747</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08988584636979642429" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://agentzlerich.blogspot.com/2009/05/masters-degree-and-third-patent-grant.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-6426345363781422461.post-1127917416612612492</id><published>2009-04-26T02:37:00.002Z</published><updated>2009-04-26T02:47:52.727Z</updated><title type="text">Relatively recently...</title><content type="html">&lt;ul&gt;
&lt;li&gt;
...Michelle had some &lt;a href="http://thewinger.com/2009/ballet-austin-michelles-surgery-diary-1/"&gt;ankle surgery&lt;/a&gt;.  She's doing well.
&lt;/li&gt;
&lt;li&gt;
...I saw &lt;a href="http://www.stallman.org/"&gt;rms&lt;/a&gt; speak on U.T.'s campus about copyright law, where, among other things, he made the case that &lt;a href="http://www.gnu.org/philosophy/not-ipr.html"&gt;IP is an overgeneralization&lt;/a&gt;.  Still digesting that.
&lt;/li&gt;
&lt;li&gt;
...Michelle and I watched &lt;a href="http://www.imdb.com/title/tt0460740/"&gt;Cashback&lt;/a&gt; (excellent, too much skin though) and &lt;a href="http://www.imdb.com/title/tt0479162/"&gt;Special&lt;/a&gt; (excellent).
&lt;/li&gt;
&lt;li&gt;
...I failed miserably at getting a simple, 1-D version of Durbin's &lt;a href="http://www.springerlink.com/content/g233232365803u22/"&gt;V2F model&lt;/a&gt; working on a turbulent channel flow.
&lt;/li&gt;
&lt;li&gt;
...despite it always being an obvious first choice, I keep forgetting to try to use &lt;a href="http://en.wikipedia.org/wiki/Geometric_Brownian_motion"&gt;geometric Brownian motion&lt;/a&gt; in my probability theory homework.
&lt;/li&gt;
&lt;li&gt;
...I quit letting scope creep into the &lt;a href="http://www.citeulike.org/user/RhysU/tag/381paper"&gt;reading list&lt;/a&gt; for my turbulence term paper.
&lt;/li&gt;
&lt;li&gt;
...I realized just how hard it is to achieve meaningful functional and system verification testing work, even when you as a tester understand the application and the underlying technology fairly well.
&lt;/li&gt;
&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6426345363781422461-1127917416612612492?l=agentzlerich.blogspot.com'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://agentzlerich.blogspot.com/feeds/1127917416612612492/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=6426345363781422461&amp;postID=1127917416612612492" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/1127917416612612492" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/1127917416612612492" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheReturnOfAgentZlerich/~3/6ZV-uL2JoZk/relatively-recently.html" title="Relatively recently..." /><author><name>Rhys Ulerich</name><uri>http://www.blogger.com/profile/02843453263307584747</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08988584636979642429" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://agentzlerich.blogspot.com/2009/04/relatively-recently.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-6426345363781422461.post-193228133809022685</id><published>2009-03-27T02:42:00.000Z</published><updated>2009-03-27T02:42:47.402Z</updated><title type="text">Turbulence/Martingale Theory Confusion</title><content type="html">&lt;p&gt;
Despite what I may think every Tuesday and Thursday when I walk from my probability theory class into my turbulence course, &amp;nu;&lt;sub&gt;T&lt;/sub&gt; is an eddy viscosity and not the stopped viscosity process.
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6426345363781422461-193228133809022685?l=agentzlerich.blogspot.com'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://agentzlerich.blogspot.com/feeds/193228133809022685/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=6426345363781422461&amp;postID=193228133809022685" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/193228133809022685" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/193228133809022685" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheReturnOfAgentZlerich/~3/yhMdthsqZQk/turbulencemartingale-theory-confusion.html" title="Turbulence/Martingale Theory Confusion" /><author><name>Rhys Ulerich</name><uri>http://www.blogger.com/profile/02843453263307584747</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08988584636979642429" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://agentzlerich.blogspot.com/2009/03/turbulencemartingale-theory-confusion.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-6426345363781422461.post-262528379529476032</id><published>2009-03-24T04:16:00.003Z</published><updated>2009-03-24T04:22:27.562Z</updated><title type="text">Nearly sufficently advanced technology</title><content type="html">&lt;p&gt;
&lt;img src="http://lh5.ggpht.com/_Q-Q3vIxb_KE/SchaTwWhXtI/AAAAAAAAAKs/FpxWxCj407Q/%5BUNSET%5D.jpg?imgmax=800" style="float: right; padding-left: 1em;" /&gt;
&lt;a href="http://eccentric.mae.cornell.edu/%7Epope/"&gt;Stephen Pope&lt;/a&gt;'s &lt;a href="http://books.google.com/books?id=HZsTw9SMx-0C"&gt;Turbulent Flows&lt;/a&gt; is one of the go-to books for graduate courses in turbulence.  It flows well, re-reading sections rewards the reader with new material, and the book attempts to develop results instead of just arriving with them from on high.  All goodness.  Still, every so often, Pope casually drops a bomb to check if you're paying attention.  Most of the time I'm not, but tonight I saw one:
&lt;/p&gt;
&lt;center&gt;
&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Q-Q3vIxb_KE/SchffQ00y3I/AAAAAAAAALA/jO5ZFi0Arbc/s1600-h/PopeStochasticTaylor1.gif"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_Q-Q3vIxb_KE/SchffQ00y3I/AAAAAAAAALA/jO5ZFi0Arbc/s400/PopeStochasticTaylor1.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5316604350807985010" /&gt;&lt;/a&gt;
&lt;/center&gt;
&lt;p&gt;
Oh, I thought, he's just using a Taylor expansion.  No big deal.  I kept on reading.
&lt;/p&gt;
&lt;center&gt;
&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_Q-Q3vIxb_KE/SchfmED5WbI/AAAAAAAAALI/W0rr94qhFQk/s1600-h/PopeStochasticTaylor2.gif"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://4.bp.blogspot.com/_Q-Q3vIxb_KE/SchfmED5WbI/AAAAAAAAALI/W0rr94qhFQk/s400/PopeStochasticTaylor2.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5316604467640621490" /&gt;&lt;/a&gt;
&lt;/center&gt;
&lt;p&gt;
Pope then quietly announces that it was a stochastic Taylor expansion.
At least that's my guess at what that object would be called.
&lt;/p&gt;
&lt;p&gt;
I've never seen a “stochastic Taylor expansion” developed, nor do I know the technical constraints that say whether an expansion does or does not exist for random fields like &lt;i&gt;u&lt;/i&gt;, &lt;i&gt;v&lt;/i&gt;, and &lt;i&gt;w&lt;/i&gt;.  Any mathematical concept &lt;a href="http://en.wikipedia.org/wiki/Stochastic_Taylor_Expansion"&gt;lacking a Wikipedia entry&lt;/a&gt; (as of today, anyhow) probably requires a bit more fanfare.  A footnote?  A reference?  A statement declaring überformality?  Not Pope's style it seems...
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6426345363781422461-262528379529476032?l=agentzlerich.blogspot.com'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://agentzlerich.blogspot.com/feeds/262528379529476032/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=6426345363781422461&amp;postID=262528379529476032" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/262528379529476032" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/262528379529476032" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheReturnOfAgentZlerich/~3/htPmeAq79L8/nearly-sufficently-advanced-technology.html" title="Nearly sufficently advanced technology" /><author><name>Rhys Ulerich</name><uri>http://www.blogger.com/profile/02843453263307584747</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08988584636979642429" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_Q-Q3vIxb_KE/SchffQ00y3I/AAAAAAAAALA/jO5ZFi0Arbc/s72-c/PopeStochasticTaylor1.gif" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://agentzlerich.blogspot.com/2009/03/nearly-sufficently-advanced-technology.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-6426345363781422461.post-4665079368368750340</id><published>2009-03-19T17:07:00.001Z</published><updated>2009-03-19T17:10:22.686Z</updated><title type="text">TAMMS 2009 Speakers</title><content type="html">&lt;p&gt;I just accepted the final student speaker for the &lt;a href="http://users.ices.utexas.edu/%7Erhys/siam/#tammsoverview"&gt;2009 Texas Applied Mathematics Meeting for Students&lt;/a&gt;.  I'm very happy with the breadth of schools and topics we'll have at the conference.  Here are the talk titles firmly on the schedule:
&lt;/p&gt;
&lt;center&gt;
&lt;table id="tblMain" border="0" cellpadding="3" cellspacing="3"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;table class="tblGenFixed" id="tblMain_0" border="0" cellpadding="0" cellspacing="0" height="500" width="640"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="s0" align="center"&gt;&lt;small&gt;&lt;b&gt;Name&lt;/b&gt;&lt;/small&gt;&lt;/td&gt;&lt;td class="s1" align="center"&gt;&lt;small&gt;&lt;b&gt;University&lt;/b&gt;&lt;/small&gt;&lt;/td&gt;&lt;td class="s2" align="center"&gt;&lt;small&gt;&lt;b&gt;Talk Title&lt;/b&gt;&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="s3"&gt;&lt;small&gt;Yulia Hristova&lt;/small&gt;&lt;/td&gt;&lt;td class="s4"&gt;&lt;small&gt;Texas A&amp;amp;M University&lt;/small&gt;&lt;/td&gt;&lt;td class="s4"&gt;&lt;small&gt;Time reversal in thermoacoustic tomography  - an error estimate&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="s3"&gt;&lt;small&gt;Anthony R. Kellems&lt;/small&gt;&lt;/td&gt;&lt;td class="s4"&gt;&lt;small&gt;Rice University&lt;/small&gt;&lt;/td&gt;&lt;td class="s4"&gt;&lt;small&gt;Dimension Reduction Techniques that Capture Nonlinear Behavior of Morphologically Accurate Neuronal Models&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="s3"&gt;&lt;small&gt;Linh Nguyen&lt;/small&gt;&lt;/td&gt;&lt;td class="s4"&gt;&lt;small&gt;Texas A&amp;amp;M University&lt;/small&gt;&lt;/td&gt;&lt;td class="s4"&gt;&lt;small&gt;On singularities and instability of reconstruction in thermoacoustic tomography&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="s3"&gt;&lt;small&gt;Yan LI&lt;/small&gt;&lt;/td&gt;&lt;td class="s4"&gt;&lt;small&gt;Texas A&amp;amp;M University&lt;/small&gt;&lt;/td&gt;&lt;td class="s4"&gt;&lt;small&gt;Local-Global Upscaling of Flow and Transport in heterogeneous porous media&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="s3"&gt;&lt;small&gt;Ryan Nong&lt;/small&gt;&lt;/td&gt;&lt;td class="s4"&gt;&lt;small&gt;Rice University &lt;/small&gt;&lt;/td&gt;&lt;td class="s4"&gt;&lt;small&gt;Numerical Solutions of Matrix Equations Arising in Dimension Reduction for Linear-Time-Invariant Systems in the Large-Scale Setting&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="s3"&gt;&lt;small&gt;Jay Raol&lt;/small&gt;&lt;/td&gt;&lt;td class="s4"&gt;&lt;small&gt;Rice University&lt;/small&gt;&lt;/td&gt;&lt;td class="s4"&gt;&lt;small&gt;Using Fast Activating Voltage Sensitive Calcium Channels as Voltage Sensors&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="s3"&gt;&lt;small&gt;Moritz Allmaras&lt;/small&gt;&lt;/td&gt;&lt;td class="s4"&gt;&lt;small&gt;Texas A&amp;amp;M University&lt;/small&gt;&lt;/td&gt;&lt;td class="s4"&gt;&lt;small&gt;Ultrasound Modulated Optical Tomography: Reconstructions for a Differential Model&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="s3"&gt;&lt;small&gt;Sean Hardesty&lt;/small&gt;&lt;/td&gt;&lt;td class="s4"&gt;&lt;small&gt;Rice University&lt;/small&gt;&lt;/td&gt;&lt;td class="s4"&gt;&lt;small&gt;Optimization of Shell Structure Acoustics&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="s3"&gt;&lt;small&gt;Dimitar Trenev&lt;/small&gt;&lt;/td&gt;&lt;td class="s4"&gt;&lt;small&gt;Texas A&amp;amp;M University&lt;/small&gt;&lt;/td&gt;&lt;td class="s4"&gt;&lt;small&gt;Approximating solutions of infinite domain Laplace and Helmholtz problems&lt;/small&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="s3"&gt;&lt;small&gt;Robert Rosenbaum&lt;/small&gt;&lt;/td&gt;&lt;td class="s4"&gt;&lt;small&gt;University of Houston&lt;/small&gt;&lt;/td&gt;&lt;td class="s4"&gt;&lt;small&gt;Correlation Propagation in Networks of Integrate-and-Fire Neurons&lt;/small&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;/center&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6426345363781422461-4665079368368750340?l=agentzlerich.blogspot.com'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://agentzlerich.blogspot.com/feeds/4665079368368750340/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=6426345363781422461&amp;postID=4665079368368750340" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/4665079368368750340" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/4665079368368750340" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheReturnOfAgentZlerich/~3/CI56CnVWKo8/tamms-2009-speakers.html" title="TAMMS 2009 Speakers" /><author><name>Rhys Ulerich</name><uri>http://www.blogger.com/profile/02843453263307584747</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08988584636979642429" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://agentzlerich.blogspot.com/2009/03/tamms-2009-speakers.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-6426345363781422461.post-2515306213115656987</id><published>2009-02-13T04:40:00.001Z</published><updated>2009-02-13T04:40:17.772Z</updated><title type="text">Using ACX_BLAS before AX_PATH_GSL with gfortran 4.3.2</title><content type="html">&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;While &lt;a href='http://en.wikipedia.org/wiki/GNU_build_system'&gt;autotooling&lt;/a&gt; a project that uses &lt;a href='http://www.gnu.org/software/gsl/'&gt;GSL&lt;/a&gt;, I wanted GSL to first attempt to detect and use a system BLAS.  If none can be found, then I wanted GSL to fall back to its own gslcblas implementation.  The rational being that a savvy user could eke out some performance, but that for everyone else the code just builds and runs without being too fussy.&lt;br/&gt;&lt;br/&gt;First I tried this in configure.ac:&lt;br/&gt;&lt;blockquote&gt;&lt;font face='monospace'&gt;&lt;a href='http://autoconf-archive.cryp.to/acx_blas.html'&gt;&lt;span class='nfakPe'&gt;ACX_BLAS&lt;/span&gt;&lt;/a&gt;([&lt;br/&gt;    export GSL_CBLAS_LIB="${BLAS_LIBS}"&lt;br/&gt;    AC_SUBST(GSL_CBLAS_LIB)&lt;br/&gt;],AC_MSG_WARN([Will use gslcblas if it is present.  Try --with-blas=&amp;lt;lib&amp;gt;.]))&lt;br/&gt;&lt;a href='http://www.gnu.org/software/gsl/manual/html_node/Autoconf-Macros.html'&gt;AX_PATH_GSL&lt;/a&gt;(1.12,,AC_MSG_&lt;/font&gt; &lt;wbr/&gt;&lt;font face='monospace'&gt;ERROR([Could not find required GSL version.]))&lt;/font&gt;&lt;br/&gt;&lt;/blockquote&gt;&lt;div class='ArwC7c ckChnd' id=':6'&gt; This works beautifully with Intel's compilers, but it dies for gcc/&lt;a href='http://gcc.gnu.org/fortran/'&gt;gfortran&lt;/a&gt; 4.3.2 during configure:&lt;br/&gt;&lt;blockquote&gt; &lt;font face='monospace'&gt;checking for GSL - version &amp;gt;= 1.12... no&lt;br/&gt;*** Could not run GSL test program, checking why...&lt;br/&gt;*** The test program failed to compile or link.&lt;/font&gt;&lt;br/&gt;&lt;/blockquote&gt; with the linking problems in config.log looking like&lt;br/&gt;&lt;blockquote&gt;&lt;font face='monospace'&gt; configure:7272: gcc -o conftest -I/org/centers/pecos/&lt;/font&gt;&lt;wbr/&gt;&lt;font face='monospace'&gt;LIBRARIES/GSL/gsl-1.12-gcc-4.&lt;/font&gt;&lt;wbr/&gt;&lt;font face='monospace'&gt;3.1-ubuntu-amd64/include -I/h2/rhys/include -L/h2/rhys/lib conftest.c -L/org/centers/pecos/&lt;/font&gt;&lt;wbr/&gt;&lt;font face='monospace'&gt;LIBRARIES/GSL/gsl-1.12-gcc-4.&lt;/font&gt;&lt;wbr/&gt;&lt;font face='monospace'&gt;3.1-ubuntu-amd64/lib -lgsl -lcblas -lf77blas -latlas -lm &amp;gt;&amp;amp;5&lt;br/&gt;/usr/lib/../lib64/libf77blas.&lt;/font&gt;&lt;wbr/&gt;&lt;font face='monospace'&gt;so: undefined reference to `_gfortran_st_write_done'&lt;/font&gt;&lt;br/&gt;&lt;/blockquote&gt; which a quick Google tells me is because -lgfortran isn't present in the linking line.  I tried to obtain the required gfortran libraries in ${FLIBS} by using &lt;a href='http://www.gnu.org/software/autoconf/manual/html_node/Fortran-Compiler.html#index-AC_005fPROG_005fFC_005fC_005fO-849'&gt;AC_FC_LIBRARY_LDFLAGS&lt;/a&gt; and then use them via&lt;br/&gt;&lt;blockquote&gt;&lt;font face='monospace'&gt;export GSL_CBLAS_LIB="${BLAS_LIBS} ${FLIBS}"&lt;/font&gt;&lt;br/&gt;&lt;/blockquote&gt;but later in the build I started hitting up against duplicate main issues because -lgfortranbegin winds up in ${FLIBS}.&lt;br/&gt;&lt;br/&gt;More random Googling found &lt;a href='http://www.gnu-darwin.org/www001/ports-1.5a-CURRENT/math/lapack++/work/lapackpp-2.5.2/configure.ac'&gt;the answer&lt;/a&gt; buried in &lt;a href='http://sourceforge.net/projects/lapackpp'&gt;lapack++&lt;/a&gt;'s configure script.  The total solution looks like:&lt;br/&gt;&lt;blockquote&gt;&lt;font face='monospace'&gt;&lt;a href='http://www.gnu.org/software/autoconf/manual/html_node/Particular-Programs.html#index-AC_005fPROG_005fRANLIB-260'&gt;AC_PROG_SED&lt;/a&gt;&lt;br/&gt;&lt;span class='nfakPe'&gt;ACX_BLAS&lt;/span&gt;([&lt;br/&gt;    dnl Workaround for bogus FLIBS&lt;br/&gt;    FLIBS=`echo ${FLIBS} | ${SED} 's/-lgfortranbegin//'`&lt;br/&gt;    export GSL_CBLAS_LIB="${BLAS_LIBS} ${FLIBS}"&lt;br/&gt;    AC_SUBST(GSL_CBLAS_LIB)&lt;br/&gt;],AC_MSG_WARN([Will use gslcblas if it is present.  Try --with-blas=&amp;lt;lib&amp;gt;.]))&lt;br/&gt;AX_PATH_GSL(1.12,,AC_MSG_&lt;/font&gt;&lt;wbr/&gt;&lt;font face='monospace'&gt;ERROR([Could not find required GSL version.]))&lt;/font&gt;&lt;br/&gt;&lt;/blockquote&gt;  where there's an explicit hack to remove -lgfortranbegin from FLIBS. Not pretty, but it seems to work.&lt;/div&gt;&lt;br/&gt;&lt;br/&gt;&lt;div class='zemanta-pixie'&gt;&lt;img src='http://img.zemanta.com/pixy.gif?x-id=92dfb81a-3588-4bbd-8c1b-73116cfe4556' class='zemanta-pixie-img'/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6426345363781422461-2515306213115656987?l=agentzlerich.blogspot.com'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://agentzlerich.blogspot.com/feeds/2515306213115656987/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=6426345363781422461&amp;postID=2515306213115656987" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/2515306213115656987" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/2515306213115656987" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheReturnOfAgentZlerich/~3/Wet4_Ne3PdQ/using-acxblas-before-axpathgsl-with.html" title="Using ACX_BLAS before AX_PATH_GSL with gfortran 4.3.2" /><author><name>Rhys Ulerich</name><uri>http://www.blogger.com/profile/02843453263307584747</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08988584636979642429" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://agentzlerich.blogspot.com/2009/02/using-acxblas-before-axpathgsl-with.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-6426345363781422461.post-1400193815222191924</id><published>2009-02-09T13:12:00.025Z</published><updated>2009-02-09T13:22:37.689Z</updated><title type="text">Texas Applied Mathematics Meeting for Students: March 27-28th</title><content type="html">I've (finally) gotten to the point where I can announce:
&lt;blockquote&gt;
&lt;div class="separator" style="float: right; clear: both; text-align: center;"&gt;
&lt;a href="http://users.ices.utexas.edu/%7Erhys/siam/graphics/TAMMSLogo_320.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://users.ices.utexas.edu/%7Erhys/siam/graphics/TAMMSLogo_160.png" /&gt;&lt;/a&gt;&lt;/div&gt;
The Austin Chapter of SIAM is proud to host the 3rd annual Texas Applied
Mathematics Meeting for Students (TAMMS) on March 27–28th.  Attendees
will have an opportunity both to present their own research and to meet
fellow students from other Texas institutions.  Though targeted at SIAM
members, this meeting is open to anyone with a mathematical leaning.
Please see &lt;a href="http://www.ices.utexas.edu/siam"&gt;http://www.ices.utexas.edu/siam&lt;/a&gt;
for more details.
&lt;/blockquote&gt;
Compared to the &lt;a href="http://agentzlerich.blogspot.com/2009/01/austin-chapter-of-siam-website-redesign.html"&gt;last time I wrote about the site&lt;/a&gt;, I've gotten the back button and search engine problems fixed.  Or, I've got the back button working fine on Firefox.  I'm unsure if &lt;a href="http://www.dojotoolkit.org/book/dojo-book-0-9/part-3-programmatic-dijit-and-dojo/back-button-undo"&gt;dojo.back&lt;/a&gt; can be made to work on IE.  Though not perfect, the site is usable sans JavaScript.  I spent some time looking at a &lt;a href="http://css-tricks.com/examples/NiceSimpleContactForm2/"&gt;reCaptcha/PHP-based contact form&lt;/a&gt; but opted to forgo the contact form in the end.
&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6426345363781422461-1400193815222191924?l=agentzlerich.blogspot.com'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://agentzlerich.blogspot.com/feeds/1400193815222191924/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=6426345363781422461&amp;postID=1400193815222191924" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/1400193815222191924" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/1400193815222191924" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheReturnOfAgentZlerich/~3/Z5HRoa6jPlw/texas-applied-mathematics-meeting-for.html" title="Texas Applied Mathematics Meeting for Students: March 27-28th" /><author><name>Rhys Ulerich</name><uri>http://www.blogger.com/profile/02843453263307584747</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08988584636979642429" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://agentzlerich.blogspot.com/2009/02/texas-applied-mathematics-meeting-for.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-6426345363781422461.post-5852380546616118587</id><published>2009-02-09T03:48:00.016Z</published><updated>2009-02-09T03:57:22.846Z</updated><title type="text">Compressible Navier-Stokes formulation for a perfect gas</title><content type="html">&lt;p&gt;
It took me longer than I care to admit to track down and work through all the details/assumptions underneath the derivation of the conservative, compressible Navier-Stokes model for a perfect gas. This is on page two of every thesis I read, but is apparently such common knowledge that no one bothers to stick it in an appendix or give a good reference.
&lt;/p&gt;

&lt;a title="View Compressible Navier-Stokes formulation for a perfect gas on Scribd" href="http://www.scribd.com/doc/11947918/Compressible-NavierStokes-formulation-for-a-perfect-gas" style="margin: 12px auto 6px auto; font-family: Helvetica,Arial,Sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 14px; line-height: normal; font-size-adjust: none; font-stretch: normal; -x-system-font: none; display: block; text-decoration: underline;"&gt;Compressible Navier-Stokes formulation for a perfect gas&lt;/a&gt; &lt;object codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" id="doc_438239680564547" name="doc_438239680564547" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" align="middle" height="500" width="100%"&gt;  &lt;param name="movie" value="http://d.scribd.com/ScribdViewer.swf?document_id=11947918&amp;access_key=key-2neq8oywgcj0wfmmb91h&amp;page=1&amp;version=1&amp;viewMode=list"&gt;   &lt;param name="quality" value="high"&gt;   &lt;param name="play" value="true"&gt;  &lt;param name="loop" value="true"&gt;   &lt;param name="scale" value="showall"&gt;  &lt;param name="wmode" value="opaque"&gt;   &lt;param name="devicefont" value="false"&gt;  &lt;param name="bgcolor" value="#ffffff"&gt;   &lt;param name="menu" value="true"&gt;  &lt;param name="allowFullScreen" value="true"&gt;   &lt;param name="allowScriptAccess" value="always"&gt;   &lt;param name="salign" value=""&gt;            &lt;param name="mode" value="list"&gt;       &lt;embed src="http://d.scribd.com/ScribdViewer.swf?document_id=11947918&amp;access_key=key-2neq8oywgcj0wfmmb91h&amp;page=1&amp;version=1&amp;viewMode=list" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" play="true" loop="true" scale="showall" wmode="opaque" devicefont="false" bgcolor="#ffffff" name="doc_438239680564547_object" menu="true" allowfullscreen="true" allowscriptaccess="always" salign="" type="application/x-shockwave-flash" align="middle" mode="list" height="500" width="100%"&gt;&lt;/embed&gt; &lt;/object&gt; &lt;div style="margin: 6px auto 3px auto; font-family: Helvetica,Arial,Sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 12px; line-height: normal; font-size-adjust: none; font-stretch: normal; -x-system-font: none; display: block;"&gt;    &lt;a href="http://www.scribd.com/upload" style="text-decoration: underline;"&gt;Publish at Scribd&lt;/a&gt; or &lt;a href="http://www.scribd.com/browse" style="text-decoration: underline;"&gt;explore&lt;/a&gt; others:            &lt;a href="http://www.scribd.com/browse/Research/?style=text-decoration%3A+underline%3B"&gt;Research&lt;/a&gt;                  &lt;a href="http://www.scribd.com/tag/compressible" style="text-decoration: underline;"&gt;compressible&lt;/a&gt;              &lt;a href="http://www.scribd.com/tag/NavierStokes" style="text-decoration: underline;"&gt;NavierStokes&lt;/a&gt;       &lt;/div&gt;

&lt;p&gt;
Particularly interesting was tracking down &lt;a href="http://ntrs.nasa.gov/details.jsp?R=1020958"&gt;data&lt;/a&gt; to confirm that air viscosity goes like temperature to a goofy power like 0.666, at least over a reasonable temperature range (e.g. 200K - 5000K).
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6426345363781422461-5852380546616118587?l=agentzlerich.blogspot.com'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://agentzlerich.blogspot.com/feeds/5852380546616118587/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=6426345363781422461&amp;postID=5852380546616118587" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/5852380546616118587" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/5852380546616118587" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheReturnOfAgentZlerich/~3/Ej9nRUjz-84/compressible-navier-stokes-formulation.html" title="Compressible Navier-Stokes formulation for a perfect gas" /><author><name>Rhys Ulerich</name><uri>http://www.blogger.com/profile/02843453263307584747</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08988584636979642429" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://agentzlerich.blogspot.com/2009/02/compressible-navier-stokes-formulation.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-6426345363781422461.post-4247814100805482250</id><published>2009-02-04T05:57:00.042Z</published><updated>2009-02-04T06:22:54.990Z</updated><title type="text">Avoiding tedious numerics using Boost Accumulators</title><content type="html">&lt;p&gt;
For a turbulence warm up assignment, we needed to compute some &lt;a href="http://en.wikipedia.org/wiki/Correlation"&gt;correlation coefficients&lt;/a&gt; for trajectory behavior on the &lt;a href="http://en.wikipedia.org/wiki/Lorenz_attractor"&gt;Lorenz attractor&lt;/a&gt;.  
Specifically, compute the mean, variance, and cross-correlations of the three solution components.  I'd skimmed through the &lt;a href="http://boost-sandbox.sourceforge.net/libs/accumulators/doc/html/index.html"&gt;Boost Accumulator Framework&lt;/a&gt; a couple of months back and thought it looked interesting:
&lt;/p&gt;

&lt;div style="background-color:#EEEEEE;"&gt;
&lt;font color="#ff40ff"&gt;#include &lt;/font&gt;&lt;font color="#ff6060"&gt;&amp;lt;boost/accumulators/accumulators.hpp&amp;gt;&lt;/font&gt;&lt;br&gt;
&lt;font color="#ff40ff"&gt;#include &lt;/font&gt;&lt;font color="#ff6060"&gt;&amp;lt;boost/accumulators/statistics/covariance.hpp&amp;gt;&lt;/font&gt;&lt;br&gt;
&lt;font color="#ff40ff"&gt;#include &lt;/font&gt;&lt;font color="#ff6060"&gt;&amp;lt;boost/accumulators/statistics/mean.hpp&amp;gt;&lt;/font&gt;&lt;br&gt;
&lt;font color="#ff40ff"&gt;#include &lt;/font&gt;&lt;font color="#ff6060"&gt;&amp;lt;boost/accumulators/statistics/stats.hpp&amp;gt;&lt;/font&gt;&lt;br&gt;
&lt;font color="#ff40ff"&gt;#include &lt;/font&gt;&lt;font color="#ff6060"&gt;&amp;lt;boost/accumulators/statistics/variance.hpp&amp;gt;&lt;/font&gt;&lt;br&gt;
&lt;font color="#ff40ff"&gt;#include &lt;/font&gt;&lt;font color="#ff6060"&gt;&amp;lt;boost/accumulators/statistics/variates/covariate.hpp&amp;gt;&lt;/font&gt;&lt;br&gt;
&lt;font color="#ff40ff"&gt;#include &lt;/font&gt;&lt;font color="#ff6060"&gt;&amp;lt;boost/format.hpp&amp;gt;&lt;/font&gt;&lt;br&gt;
&lt;font color="#ff40ff"&gt;#include &lt;/font&gt;&lt;font color="#ff6060"&gt;&amp;lt;fstream&amp;gt;&lt;/font&gt;&lt;br&gt;
&lt;font color="#ff40ff"&gt;#include &lt;/font&gt;&lt;font color="#ff6060"&gt;&amp;lt;iostream&amp;gt;&lt;/font&gt;&lt;br&gt;
&lt;font color="#ff40ff"&gt;#include &lt;/font&gt;&lt;font color="#ff6060"&gt;&amp;lt;sstream&amp;gt;&lt;/font&gt;&lt;br&gt;
&lt;font color="#ff40ff"&gt;#include &lt;/font&gt;&lt;font color="#ff6060"&gt;&amp;lt;string&amp;gt;&lt;/font&gt;&lt;br&gt;
&lt;br/&gt;
&lt;font color="#8080ff"&gt;// Read an input streams and compute the relevant statistics&lt;/font&gt;&lt;br&gt;
&lt;font color="#00ff00"&gt;template&lt;/font&gt;&amp;lt;&lt;font color="#00ff00"&gt;typename&lt;/font&gt;&amp;nbsp;charT, &lt;font color="#00ff00"&gt;typename&lt;/font&gt;&amp;nbsp;traits&amp;gt;&lt;br&gt;
&lt;font color="#00ff00"&gt;int&lt;/font&gt;&amp;nbsp;process(std::basic_ostream&amp;lt;charT, traits&amp;gt;&amp;amp; out,&lt;br&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;std::basic_istream&amp;lt;charT, traits&amp;gt;&amp;amp; in) {&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#ffff00"&gt;using&lt;/font&gt;&amp;nbsp;&lt;font color="#00ff00"&gt;namespace&lt;/font&gt;&amp;nbsp;boost::accumulators;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;accumulator_set&amp;lt;&lt;font color="#00ff00"&gt;double&lt;/font&gt;, stats&amp;lt;tag::mean, &lt;br&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;&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;tag::variance, &lt;br&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;&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;tag::covariance&amp;lt;&lt;font color="#00ff00"&gt;double&lt;/font&gt;, tag::covariate1&amp;gt; &amp;gt; &amp;gt; x_acc;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;accumulator_set&amp;lt;&lt;font color="#00ff00"&gt;double&lt;/font&gt;, stats&amp;lt;tag::mean, &lt;br&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;&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;tag::variance, &lt;br&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;&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;tag::covariance&amp;lt;&lt;font color="#00ff00"&gt;double&lt;/font&gt;, tag::covariate1&amp;gt; &amp;gt; &amp;gt; y_acc;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;accumulator_set&amp;lt;&lt;font color="#00ff00"&gt;double&lt;/font&gt;, stats&amp;lt;tag::mean, &lt;br&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;&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;tag::variance, &lt;br&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;&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;tag::covariance&amp;lt;&lt;font color="#00ff00"&gt;double&lt;/font&gt;, tag::covariate1&amp;gt; &amp;gt; &amp;gt; z_acc;&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#00ff00"&gt;double&lt;/font&gt;&amp;nbsp;t, x, y, z;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;std::basic_string&amp;lt;charT, traits&amp;gt; line;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;boost::format fmt(&lt;font color="#ff6060"&gt;&amp;quot; &lt;/font&gt;&lt;font color="#ff40ff"&gt;%016e&lt;/font&gt;&lt;font color="#ff6060"&gt;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;font color="#ff40ff"&gt;%016e&lt;/font&gt;&lt;font color="#ff6060"&gt;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;font color="#ff40ff"&gt;%016e&lt;/font&gt;&lt;font color="#ff6060"&gt;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;font color="#ff40ff"&gt;%016e&lt;/font&gt;&lt;font color="#ff6060"&gt;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;font color="#ff40ff"&gt;%016e&lt;/font&gt;&lt;font color="#ff6060"&gt;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;font color="#ff40ff"&gt;%016e&lt;/font&gt;&lt;font color="#ff6060"&gt;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;font color="#ff40ff"&gt;%016e&lt;/font&gt;&lt;font color="#ff6060"&gt;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;font color="#ff40ff"&gt;%016e&lt;/font&gt;&lt;font color="#ff6060"&gt;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;font color="#ff40ff"&gt;%016e&lt;/font&gt;&lt;font color="#ff6060"&gt;&amp;nbsp;&amp;nbsp; &lt;/font&gt;&lt;font color="#ff40ff"&gt;%016e&lt;/font&gt;&lt;font color="#ff6060"&gt;&amp;quot;&lt;/font&gt;);&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#ffff00"&gt;while&lt;/font&gt;&amp;nbsp;(in) {&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#ffff00"&gt;if&lt;/font&gt;&amp;nbsp;(!std::getline(in, line)) &lt;font color="#ffff00"&gt;break&lt;/font&gt;; &lt;font color="#8080ff"&gt;// Read columns per line to&lt;/font&gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;std::istringstream in(line);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;font color="#8080ff"&gt;//&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;be a little defensive&lt;/font&gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;in &amp;gt;&amp;gt; t &amp;gt;&amp;gt; x &amp;gt;&amp;gt; y &amp;gt;&amp;gt; z;&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#8080ff"&gt;// Compute running statistics&lt;/font&gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;x_acc(x, covariate1 = y);&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;y_acc(y, covariate1 = z);&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;z_acc(z, covariate1 = x);&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#8080ff"&gt;// Output running statistics&lt;/font&gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;out &amp;lt;&amp;lt; fmt % t&lt;br&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; % mean(x_acc)&lt;br&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; % mean(y_acc)&lt;br&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; % mean(z_acc)&lt;br&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; % variance(x_acc)&lt;br&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; % variance(y_acc)&lt;br&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; % variance(z_acc)&lt;br&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; % covariance(x_acc)&lt;br&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; % covariance(z_acc)&lt;br&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; % covariance(y_acc)&lt;br&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;lt;&amp;lt; std::endl;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#ffff00"&gt;return&lt;/font&gt;&amp;nbsp;&lt;font color="#ff6060"&gt;0&lt;/font&gt;;&lt;br&gt;
}&lt;br&gt;
&lt;/div&gt;

&lt;p&gt;
Compared with the alternative loops/bookkeeping/etc., this is a pretty slick alternative.  The only downside was that the accumulator declarations took me awhile to decipher from the documentation.
&lt;/p&gt;

&lt;p&gt;
As you probably noticed, I am reading/writing plain text data files and computing the statistics at every time step.  This is overkill and slow.  I'd probably have fixed that by now if it weren't for the fact that I ran across &lt;a href="http://www.catonmat.net/blog/unix-utilities-pipe-viewer/"&gt;Pipe Viewer&lt;/a&gt; in the last two days.  Quite a neat shell tool that.
&lt;p&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6426345363781422461-4247814100805482250?l=agentzlerich.blogspot.com'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://agentzlerich.blogspot.com/feeds/4247814100805482250/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=6426345363781422461&amp;postID=4247814100805482250" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/4247814100805482250" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/4247814100805482250" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheReturnOfAgentZlerich/~3/rXsZTPDulB8/avoiding-tedious-numerics-using-boost.html" title="Avoiding tedious numerics using Boost Accumulators" /><author><name>Rhys Ulerich</name><uri>http://www.blogger.com/profile/02843453263307584747</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08988584636979642429" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://agentzlerich.blogspot.com/2009/02/avoiding-tedious-numerics-using-boost.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-6426345363781422461.post-1311403835612830949</id><published>2009-01-26T00:09:00.000Z</published><updated>2009-01-26T00:22:10.031Z</updated><title type="text">Jet Plane Off To Jamaica</title><content type="html">Two weeks back Flip and I converged on Trapani's apartment in Jamaica, Queens.&amp;nbsp; The three of us were together in Simmons Hall at Penn State, near Plateia Varnava in Athens, near Beaver and Atherton back at Penn State, and finally in Austin, Texas.&amp;nbsp; Eight years.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://1.bp.blogspot.com/_Q-Q3vIxb_KE/SX0BP2YifuI/AAAAAAAAAJs/vD_xS7Ymqr8/s1600-h/NewYorkJanuary2009.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_Q-Q3vIxb_KE/SX0BP2YifuI/AAAAAAAAAJs/vD_xS7Ymqr8/s320/NewYorkJanuary2009.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
Over the past year and a half both Flip and T left town for new opportunities.&amp;nbsp; It's been hard to not see them nearly every Wednesday night like I had for the three years we were all in Austin.&amp;nbsp; This trip we sat, talked, laughed, and did nothing of merit for three days.&amp;nbsp; It was wonderful.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6426345363781422461-1311403835612830949?l=agentzlerich.blogspot.com'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://agentzlerich.blogspot.com/feeds/1311403835612830949/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=6426345363781422461&amp;postID=1311403835612830949" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/1311403835612830949" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/1311403835612830949" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheReturnOfAgentZlerich/~3/6CRVJ22WhQ0/jet-plane-off-to-jamaica.html" title="Jet Plane Off To Jamaica" /><author><name>Rhys Ulerich</name><uri>http://www.blogger.com/profile/02843453263307584747</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08988584636979642429" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_Q-Q3vIxb_KE/SX0BP2YifuI/AAAAAAAAAJs/vD_xS7Ymqr8/s72-c/NewYorkJanuary2009.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://agentzlerich.blogspot.com/2009/01/jet-plane-off-to-jamaica.html</feedburner:origLink></entry><entry><id>tag:blogger.com,1999:blog-6426345363781422461.post-6105572346824606415</id><published>2009-01-20T23:55:00.001Z</published><updated>2009-01-21T04:13:56.770Z</updated><title type="text">Austin Chapter of SIAM website redesign</title><content type="html">I finally got around to redesigning &lt;a href="http://www.ices.utexas.edu/siam/"&gt;U.T.'s SIAM chapter website&lt;/a&gt;.  I've been meaning to do it for months.  The suitable effective kick in the pants was needing a site to house information for our upcoming student conference. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
All in all I'm happy with it.  I used
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;
some simple &lt;a href="http://dojotoolkit.org/"&gt;Dojo&lt;/a&gt; loaded via &lt;a href="http://code.google.com/apis/ajaxlibs/"&gt;Google's AJAX hosting&lt;/a&gt;,
&lt;/li&gt;
&lt;li&gt;
a little &lt;a href="http://www.blueprintcss.org/"&gt;Blueprint&lt;/a&gt;, 
&lt;/li&gt;
&lt;li&gt;
lifting/revising content from both &lt;a href="http://users.ices.utexas.edu/%7Epflath/siam/index.html.bak"&gt;Pearl Flath's older chapter site&lt;/a&gt; and the official &lt;a href="http://www.siam.org/"&gt;SIAM&lt;/a&gt; pages, and finally
&lt;/li&gt;
&lt;li&gt;
my feeble &lt;a href="http://www.inkscape.org/"&gt;Inkscape&lt;/a&gt; logo design.
&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
My three major complaints with my own work are:
&lt;br /&gt;
&lt;dl&gt;
&lt;dt&gt;&lt;b&gt;
The back button is broken.
&lt;/b&gt;&lt;/dt&gt;
&lt;dd&gt;I spent two hours futzing with &lt;a href="http://dojotoolkit.org/book/dojo-book-0-9/part-3-programmatic-dijit-and-dojo/back-button-undo"&gt;dojo.back&lt;/a&gt; to get the back button to work.  After I had it working, hitting back and then forward caused an infinite loop on page refresh.
I gave up for now.
&lt;/dd&gt;
&lt;dt&gt;&lt;b&gt;
None of the content can be indexed by a search engine (I think).
&lt;/b&gt;&lt;/dt&gt;
&lt;dd&gt;Since all of the major content is loaded via dijit.layout.ContentPane.setHref fired with onClick events, I doubt a search engine can effectively index much of it.  Something to check when I roll &lt;a href="http://www.google.com/analytics/"&gt;Google Analytics&lt;/a&gt; into the next update.
&lt;/dd&gt;
&lt;dt&gt;&lt;b&gt;
I have raw email addresses in mailto links.
&lt;/b&gt;&lt;/dt&gt;
&lt;dd&gt;I'm not sure how much server-side processing is permitted on this particular host.  I need to move contact functionality into forms guarded by CAPTCHAs.  Hopefully GMail's filter will save me in the meantime.
&lt;/dd&gt;
&lt;/dl&gt;
None of these are terrible to fix.  They just take time.  And classes began today...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6426345363781422461-6105572346824606415?l=agentzlerich.blogspot.com'/&gt;&lt;/div&gt;</content><link rel="replies" type="application/atom+xml" href="http://agentzlerich.blogspot.com/feeds/6105572346824606415/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="https://www.blogger.com/comment.g?blogID=6426345363781422461&amp;postID=6105572346824606415" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/6105572346824606415" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/6426345363781422461/posts/default/6105572346824606415" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/TheReturnOfAgentZlerich/~3/3-cP8_pu7R4/austin-chapter-of-siam-website-redesign.html" title="Austin Chapter of SIAM website redesign" /><author><name>Rhys Ulerich</name><uri>http://www.blogger.com/profile/02843453263307584747</uri><email>noreply@blogger.com</email><gd:extendedProperty xmlns:gd="http://schemas.google.com/g/2005" name="OpenSocialUserId" value="08988584636979642429" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://agentzlerich.blogspot.com/2009/01/austin-chapter-of-siam-website-redesign.html</feedburner:origLink></entry></feed>
