<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
    <channel>
        <title>Tau Leaping</title>
        <link>http://caulfield.info/emmet/</link>
        <description>Emmet&apos;s ramblings about scientific computing and other stuff</description>
        <language>en</language>
        <copyright>Copyright 2008</copyright>
        <lastBuildDate>Tue, 11 Nov 2008 03:37:02 +0100</lastBuildDate>
        <generator>http://www.sixapart.com/movabletype/</generator>
        <docs>http://www.rssboard.org/rss-specification</docs>
        
        <item>
            <title>Installing &apos;killfile&apos; in Firefox</title>
            <description><![CDATA[<p>Over at <a href="http://scienceblogs.com/pharyngula">Pharyngula</a> people often ask how to install <i>killfile</i>, which selectively hides comments in blogs.</p>
<p>Here's how.</p>
<p>First, it's assumed that you're running <a href="http://www.mozilla.com/firefox/">Firefox</a>. AFAIK, there is no analogous functionality for other browsers (please comment below if you know otherwise).</p>
<p>Now:</p>
<ol>
  <li>Install the <a href="https://addons.mozilla.org/firefox/addon/748">Greasemonkey</a> user script extension.</li>
  <li>Restart <i>Firefox</i></li>
  <li>Install the <a href="http://userscripts.org/scripts/show/4107">killfile</a> script by clicking on the large black <i>Install this script</i> button at the top of the page.</li>
</ol>
<p>Now, when you load a page on <a href="http://scienceblogs.com/">ScienceBlogs</a> (and any of several other blogs) each post will have two new bits of hot text in the <b>Posted by:</b> line: <tt>[kill]</tt>, which hides all comments by this poster in every thread; and <tt>[hide comment]</tt>, which hides only the single comment.</p>
<p>In place of a hidden comment, a one-line notice appears saying &#8220;<tt>Comment by User Foo blocked [unkill] [show comment]</tt>&#8221;. Clicking on <tt>[unkill]</tt> reveals all of the posts by that user; clicking on <tt>[show comment]</tt> reveals just the single comment.</p>

]]></description>
            <link>http://caulfield.info/emmet/2008/11/installing-killfile-in-firefox.html</link>
            <guid>http://caulfield.info/emmet/2008/11/installing-killfile-in-firefox.html</guid>
            
                <category domain="http://www.sixapart.com/ns/types#category">English</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">Technology</category>
            
            
                <category domain="http://www.sixapart.com/ns/types#tag">firefox</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">pharyngula</category>
            
            <pubDate>Tue, 11 Nov 2008 03:37:02 +0100</pubDate>
        </item>
        
        <item>
            <title>Formatting Comments in Movable Type</title>
            <description><![CDATA[ <p>Over at <a href="http://scienceblogs.com/pharyngula/">Pharyngula</a>, people regularly ask how to format posts in particular ways. Here's a rough guide to the half-dozen most common things people want to do.</p>

<p>In all cases, you use HTML (or HTML-like) tags, which (with a few exceptions) occur in opening/closing pairs with your text in between, like this (for an imaginary tag &#8220;foo&#8221;): &lt;foo&gt;some text&lt;/foo&gt;. You have to be very careful to get the syntax right or you will get unexpected results. <em>Preview</em> is your friend.</p>

<h3>Quoting</h3>
<p>In order to quote a previous text, use <tt>&lt;blockquote&gt;</tt>. If you write <p>&#8220;&lt;blockquote&gt;John McCain is a tool.&lt;/blockquote&gt;&#8221;</tt>, it comes out looking like this (indented and possibly with other decoration, such as a bar down the left):</p>

<blockquote>John McCain is a tool.</blockquote>

<h3>Italics</h3>

<p>You can get italics with <tt>&lt;em&gt;</tt> or <tt>&lt;i&gt;</tt>, like this: &#8220;<tt>John McCain is &lt;em&gt;definitely&lt;/em&gt a tool</tt>&#8221; produces &#8220;John McCain <em>definitely</em> a tool&#8221;.</p>

<h3>Bold</h3>

<p>You can get bold with <tt>&lt;strong&gt;</tt> or <tt>&lt;b&gt;</tt>, like this: &#8220;<tt>John McCain is &lt;strong&gt;definitely&lt;/strong&gt a tool</tt>&#8221; produces &#8220;John McCain <strong>definitely</strong> a tool&#8221;.</p>

<h3>Strikethrough</h3>

<p>You can strike text with <tt>&lt;s&gt;</tt>, like this: &#8220;<tt>John McCain is &lt;s&gt;not&lt;/s&gt a tool</tt>&#8221; produces &#8220;John McCain is <s>not</s> a tool&#8221;.</p>

<h3>Underline</h3>

<p>You can underline text with <tt>&lt;u&gt;</tt>, like this: &#8220;<tt>John McCain is &lt;u&gt;such&lt;/u&gt a tool</tt>&#8221; produces &#8220;John McCain is <u>such</u> a tool&#8221;.</p>

<h3>Links</h3>

<p>You can produce links with <tt>&lt;a&gt;</tt>. The text to be linked appears between the elements, and the URL appears in the <tt>href</tt> attribute. &#8220;&lt;a href="http://www.google.com/"&gt;Google&lt;/a&gt;&#8221; comes out as &#8220;<a href="http://www.google.com/">Google</a>&#8221;. Note that the quotes around the URL and the <tt>http://</tt> are <em>not</em> optional. Also, including more than a certain number (2 or 3) links may result in your comment being held for moderation as an anti-spam measure. <em>Preview</em> is your friend.</p>

<h3>Physical vs. Logical Markup</h3>

<p>Not that it makes much difference in the tag soup that is the blogosphere, but to satisfy the pedants, I should note that the <tt>&lt;em&gt;</tt> element is preferred for emphasis and <tt>&lt;i&gt;</tt> for non-emphatic italics. Similarly, <tt>&lt;strong&gt;</tt> is preferred for strong emphasis and <tt>&lt;b&gt;</tt> for non-emphatic emboldening.</p>
]]></description>
            <link>http://caulfield.info/emmet/2008/09/formatting-comments-in-movable.html</link>
            <guid>http://caulfield.info/emmet/2008/09/formatting-comments-in-movable.html</guid>
            
                <category domain="http://www.sixapart.com/ns/types#category">English</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">Technology</category>
            
            
            <pubDate>Thu, 25 Sep 2008 09:42:17 +0100</pubDate>
        </item>
        
        <item>
            <title>Manually Removing Diversions with dpkg-divert</title>
            <description><![CDATA[<p>In <a href="/emmet/2008/04/fix-ati-catalyst-84-driver-pac.html">an earlier post</a> I said that I'd post details on how to manually remove stale diversions with <tt>dpkg-divert</tt> if anyone wanted them. Uwe Koch asked, so here it is!

<h2>Solution</h2>

<p>The first problem is to find the stale diversions. If you type something like:</p>

<pre class="console">
$ dpkg-divert --list
</pre>

You'll get several lines like this:

<pre class="console">
diversion of /usr/lib/libGL.so.1.2 to /usr/lib/fglrx/libGL.so.1.2.xlibmesa by xorg-driver-fglrx
</pre>

<p>Since you want to filter out the ones that apply to the ATI drivers, and all of them contain <em>fglrx</em>, you can do this:</p>

<pre class="console">
$ dpkg-divert --list | grep fglrx
</pre>

<p>The bit you want is the first path. You can extract that with either:</p>

<pre class="console">
$ dpkg-divert --list | grep fglrx | cut -d' ' -f3
</pre>

<p>or</p>

<pre class="console">
$ dpkg-divert --list | awk '/fglrx/ {print $3}'
</pre>

<p>You should get a list like this:</p>

<pre class="console">
/usr/lib/libGL.so.1.2
/usr/X11R6/lib/libGL.so.1.2
/usr/X11R6/lib32/libGL.so.1.2
/usr/X11R6/lib32/libGL.so.1
/usr/lib32/libGL.so.1.2
/usr/lib32/libGL.so.1
</pre>

<p>You can then manually go through the list, removing the diversions one-by-one:</p>

<pre class="console">
$ sudo dpkg-divert --remove /usr/lib/libGL.so.1.2
</pre>

<p>Alternatively, if you're highly confident in your own bash-fu skills:</p>

<pre class="console">
$ dpkg-divert --list | awk '/fglrx/ {print $3}' | \
> while read; do \
>    sudo dpkg-divert --remove $REPLY; \
> done
</pre>

<p>The above is shown broken over four lines just so that it isn't too wide for the web-page: in practice, I would type it all on one line. This is what is &#8220;really looks like&#8221; completely: the backslashes (\) are typed in and escape the newline which must follow immediately. Bash supplies the &gt; character at the start of each line, which is the secondary shell prompt.</p>

<p>Job done!</p>

]]></description>
            <link>http://caulfield.info/emmet/2008/07/manually-removing-diversions-w.html</link>
            <guid>http://caulfield.info/emmet/2008/07/manually-removing-diversions-w.html</guid>
            
                <category domain="http://www.sixapart.com/ns/types#category">English</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">Ubuntu</category>
            
            
                <category domain="http://www.sixapart.com/ns/types#tag">ATI drivers ubuntu linux</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">bash</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">dpkg-divert</category>
            
            <pubDate>Fri, 25 Jul 2008 17:09:15 +0100</pubDate>
        </item>
        
        <item>
            <title>Crackergate Redux</title>
            <description><![CDATA[<p>The purpose of this post is to briefly explain the background to <a href="http://www.scienceblogs.com/pharyngula/">PZ Myers's</a> involvement in <i>Crackergate</i>. This is a quick post, and lacks both links and detail. As an atheist ex-Catholic who posts regularly on PZ's site and has followed the story, I'm reasonably informed, but I'm not unbiased.</p>

<p>The reason for this post is to inform the staggering number of Catholics who are indignantly posting on <a href="">PZ's <em>Pharyngula</em> blog</a> without understanding the background. It's as if they're assuming that PZ woke up one morning and decided to piss off Catholics for no reason.</p>

<h2>Crackergate</h2>

<p>A 19 year-old <em>Catholic</em> student at UCF went to a mass organised on campus. He brought a non-Catholic friend, who was interested in Catholicism, to the mass. During the mass, he explained various aspect of the proceedings to his friend. His friend was curious to see the Eucharist, so at communion, Webster tried to bring the Eucharist back to his seat before consuming it. In Webster's church, this wouldn't have been a big deal as, apparently, in some Catholic traditions, it is quite normal to pray back in the pew before consuming the Eucharist.</p>

<p>Another student, with whom Webster had had some previous disagreements, spotted him walking away from the altar without having immediately consumed the wafer, apparently the norm in most Catholic congregations, and grabbed hold of him, creating a scene. Webster shook off his assailant and went back to his seat. She pursued him, trying to take the Host from his hands. Webster tried to fend her off, putting the Host in his pocket, but ultimately fled the church.</p>

<p>Webster demanded an apology from the other student, holding on to the Host in his student dorm for almost a week before returning it.</p>

<p>Now, there's no doubt that Webster had a rush of blood to the head and behaved unwisely in his anger, but who can say they never made a mistake?</p>

<p>In the mean-time, the offended student made complaints to the university authorities, the student council, and the Catholic League. Bill Donohue weighed in with a fatwa condemning Webster Cook. As a result, Webster received 1000's of condemnatory emails including threats of violence and a couple of death-threats from the lunatic fringe of the Catholic church. Ultimately, Webster believed that he was in danger, which contributed to his decision to return the Eucharistic wafer.</p>

<p>A couple of media outlets picked up on the story.</p>

<p>PZ blogged about this crazy storm-in-a-teacup. Now, one may think that what Webster did was wrong, but it was a religious wrong and the penalty should be religious. If his priest had given him a dressing-down for his behaviour, no problem, but Webster did not deserve threats of violence and death, nor did he deserve to be subject to a witch-hunt in his secular life, with people demanding that he be dismissed from the student senate at UCF and expelled from the university. Separation of church and state: remember?</p>

<p>PZ was, I guess, pretty angry. In defence of this kid, he said &#8220;You think that's desecration? I'll show you desecration&#8221;. Not being a Catholic, he said &#8220;if anyone can score me some crackers, I'll desecrate them&#8221;, which was interpreted by some as inciting disruption of religious services, but the point is that ruining a kids life over a magic cracker is grossly excessive.</p>

<p>Now all hell breaks loose as Bill Donohue issues a second fatwa against PZ. PZ receives tens of thousands of condemnatory emails including a number of threats of violence and even a few death threats.</p>

<p>A fairly common feature in the tens of thousands of posts at <em>Pharyngula</em> was &#8220;you wouldn't dare desecrate the Qur'an, you pussy&#8221; from Catholic posters. PZ received several communion wafers and two Qur'ans in the mail.</p>

<p>Today, PZ posted a photograph of some communion wafers, some pages from the Qur'an, and some pages from Richard Dawkins's <i>The God Delusion</i> in the bin. He held off on posting the photograph until after the garbage collection, presumably so there would be no question of the religious artifacts being anywhere other than the city landfill.</p>

]]></description>
            <link>http://caulfield.info/emmet/2008/07/crackergate-redux.html</link>
            <guid>http://caulfield.info/emmet/2008/07/crackergate-redux.html</guid>
            
                <category domain="http://www.sixapart.com/ns/types#category">Crackpottery</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">English</category>
            
            
                <category domain="http://www.sixapart.com/ns/types#tag">blogging</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">Catholicism</category>
            
            <pubDate>Thu, 24 Jul 2008 23:26:31 +0100</pubDate>
        </item>
        
        <item>
            <title>What about the SCOTUS?</title>
            <description><![CDATA[<p>Over at <a href="http://scienceblogs.com/pharyngula/">Pharyngula</a>, there's an ongoing discussion about Barack Obama vs. John McCain (<a href="http://scienceblogs.com/pharyngula/2008/06/this_is_how_obama_could_make_m.php">This is how Obama could make me happy to vote for him</a>).</p>

<p>I see a huge, if not <em>the</em>, important issue in this election being the balance of the SCOTUS. The new President is going to appoint at least one liberal judge almost immediately (Stevens, I think, is hanging on until there's a Democrat in the Whitehouse), and maybe two (+Ginsburg?) in his first term. If McCain gets in, I see one or two more Nino Scalias being appointed, tipping the balance firmly to the right for a long time (Scalia won't be the same age as Stevens is now for almost 20 years). The consequences could be church/state separation being compromised, Roe vs. Wade overturned, gay marriage being torpedoed, and even successful appeals to recent judgements disallowing educational crapola in schools. It could be devastating.</p>

<p>As an international spectator, I selfishly want Obama because I think he'll be able to use his mixed-race, mixed-heritage, international background, foreign policy education, and civil rights record to help build peace and rehabilitate America's overseas reputation in a way that another old militarist Republican WASP, up to his oxters in political debt to the hawks and the religious right, simply couldn't do. From an international perspective, Obama is damn-near perfect: realistically, the international community couldn't ask for a better prospective President.</p>

<p>But it strikes me that, from an American and, ultimately, even an international perspective, the SCOTUS issue could be even bigger in the long term: I really don't want American core values (1st Amendment, particularly) and education compromised for a generation.</p>

<p>Thoughts?</p>

]]></description>
            <link>http://caulfield.info/emmet/2008/06/what-about-the-scotus.html</link>
            <guid>http://caulfield.info/emmet/2008/06/what-about-the-scotus.html</guid>
            
                <category domain="http://www.sixapart.com/ns/types#category">English</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">Politics</category>
            
            
                <category domain="http://www.sixapart.com/ns/types#tag">Election2008</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">McCain</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">Obama</category>
            
            <pubDate>Thu, 12 Jun 2008 19:55:35 +0100</pubDate>
        </item>
        
        <item>
            <title>Get the Subversion Revision Number into Autoconf&apos;s PACKAGE_VERSION</title>
            <description><![CDATA[<p>Here's the problem: you have a software package in a <a href="http://subversion.tigris.org/">Subversion</a> repository and you're using the <a href="http://www.gnu.org/software/autoconf/#family">GNU Autotools</a> build-chain. You'd really like to have the revision number from subversion as the subminor revision in the <tt>PACKAGE_VERSION</tt> preprocessor object macro <tt>#define</tt>-d in <tt>config.h</tt> so that it automatically appears in your software.</p>

<p>Sounds easy enough, but it's both surprisingly difficult and surprisingly easy to achieve.</p>

<p>The problem is that the ways of achieving this I've found online embed something in the distribution files that require that the person building the software for installation has to have <tt>subversion</tt> or the Autotools or both installed in order to get a meaningful version number. That's a pain.</p>

<p>This solution requires only that the <em>developer</em> is working on a Unix-like system with <tt>sh</tt>, <tt>tr</tt> and a recent version of <tt>subversion</tt> installed.</p>

<h2>The Solution</h2>

<p>The solution is really this easy. Put the following in <tt>configure.ac</tt>:</p>
<pre class="console">
define([svnversion], esyscmd([sh -c "svnversion|tr -d '\n'"]))dnl
AC_INIT([myprog], [0.1.svnversion], [myprog@example.com])
</pre>

<p>I also include a line like this so I can get the SVN version seperately:</p>
<pre class="console">
AC_DEFINE(SVN_REVISION, "svnversion", [SVN Revision])
</pre>

<p>This assumes that you have a recent version of subversion installed with the <tt>svnversion</tt> program and you're developing on a Unix-like platform with <tt>sh</tt> and <tt>tr</tt> (which includes pretty well every flavour of Unix/Linux).</p>

<p>What this does is use <a href="http://www.gnu.org/software/m4/">m4</a>, the macro language <tt>autoconf</tt> is built on, to define a macro, <tt>svnversion</tt> which uses the <tt>m4</tt> function <tt>esyscmd</tt> (which calls a program and captures its <tt>stdout</tt>) to call the <tt>svnversion</tt> program and trim the bothersome trailing newline from its output using <tt>tr</tt>.</p>

<p>Now, one apparent shortcoming turns out to be a feature, not a bug. If you run <tt>autoreconf</tt> in a directory that's been modified from the repository version, the subminor revision number obtained from <tt>svnversion</tt> is non-numeric &mdash; it embeds information about the revisions used, not just the topmost revision &mdash; so you get a subminor revision like &#8220;42:43M&#8221;. This causes some difficulty building because the <tt>SVN_VERSION</tt> macro (if you include it), which should be be a valid C literal, is not an integer literal. So why is this a feature and not a bug? Because you <em>shouldn't</em> be building the software for distribution from a stale repository and this ensures that you're not doing that. In practice, it turns out to be <em>very</em> useful, rather than a pain, since it helps makes sure that <tt>make distcheck</tt> will fail if you've modified files and not done a <tt>svn commit</tt> and/or <tt>svn update</tt>.</p>

]]></description>
            <link>http://caulfield.info/emmet/2008/05/get-the-subversion-revision-nu.html</link>
            <guid>http://caulfield.info/emmet/2008/05/get-the-subversion-revision-nu.html</guid>
            
                <category domain="http://www.sixapart.com/ns/types#category">English</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">Programming</category>
            
            
                <category domain="http://www.sixapart.com/ns/types#tag">autoconf</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">subversion</category>
            
            <pubDate>Fri, 16 May 2008 12:19:37 +0100</pubDate>
        </item>
        
        <item>
            <title>Fix ATI Catalyst 8.4 Driver Package on Ubuntu Hardy</title>
            <description><![CDATA[<p>
  On <a href="http://www.ubuntu.com/">Ubuntu 8.04 &#8220;Hardy&#8221;</a>, the <a href="http://ati.amd.com/support/drivers/linux64/previous/linux64-rf-cat84.html">ATI Catalyst 8.4 Driver</a> <tt>.deb</tt> packages for <i>amd64</i> will build from <a href="http://www2.ati.com/drivers/linux/ati-driver-installer-8-4-x86.x86_64.run">the ATI download</a>, but one of the four packages, <tt>xorg-driver-fglrx_8.476</tt>, will not install out of the box when you try to <a href="http://wiki.cchtml.com/index.php/Ubuntu_Hardy_Installation_Guide">install the packages in the usual way</a>.
</p>

<p>
  The problem is an error in the preinstall script for the package. In a <a href="http://www.debian.com/">Debian</a> package, one of the things that a package script sometimes does is &#8220;divert&#8221; files. The idea is that a package can specify that any attempt by a future package to install a file having a particular name is to be handled by renaming the file to something else, or diverting it. In this way, a package can protect files from being overwritten without causing another package to fail to install. If you have customised a package-supplied file,  which might be overwritten by a package upgrade, you can use <tt>dpkg-divert</tt> to protect your version.
</p>

<p>
The <i>ATI</i> <a href="http://www.x.org/">xorg</a> driver package uses this facility to stop <a href="http://www.mesa3d.org/">MesaGL</a>, a software <a href="http://www.opengl.org/">Open GL</a> renderer, from overwriting the <i>ATI</i> hardware drivers. That's a good thing, but the problem is that the preinstall script diverts two files to the same target. In other words, it says &#8220;instead of installing <tt>/foo/bar</tt>, rename it <tt>/foo/quux</tt>&#8221; then a second later, &#8220;instead of installing <tt>/foo/baz</tt>, rename it <tt>/foo/quux</tt> as well&#8221;. That's not allowed (because it's obviously stupid).</p>

<p>This accounts for the seemingly bizarre error-message that <tt>xorg-driver-fglrx_8.476</tt> is trying to divert to a file target that it, itself, has already diverted another file to!</p>

<p>
I suspect that the person who wrote the script copy'n'pasted the line, remembered to edit the filename to divert, but forgot to change where it was diverted <em>to</em>. An easy, if silly, mistake to make. <i>ATI</i> have made a lot of progress in providing decent <i>Linux</i> driver, maybe we shouldn't be too hard on them for lousy QA.
</p>

<p>The fix follows below the fold&hellip;</p>
]]></description>
            <link>http://caulfield.info/emmet/2008/04/fix-ati-catalyst-84-driver-pac.html</link>
            <guid>http://caulfield.info/emmet/2008/04/fix-ati-catalyst-84-driver-pac.html</guid>
            
                <category domain="http://www.sixapart.com/ns/types#category">English</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">Technology</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">Ubuntu</category>
            
            
                <category domain="http://www.sixapart.com/ns/types#tag">ATI drivers ubuntu linux</category>
            
            <pubDate>Sat, 26 Apr 2008 02:39:20 +0100</pubDate>
        </item>
        
        <item>
            <title>Group Velocity and Stability on Arbitrary Meshes</title>
            <description><![CDATA[<p>In reading Nick Trefethen's <a href="http://www.comlab.ox.ac.uk/people/nick.trefethen/publication/PDF/1983_7.pdf">Group velocity interpretation of the stability theory of Gustafsson, Kreiss, and Sundström</a> and <a href="http://www.comlab.ox.ac.uk/people/nick.trefethen/publication/PDF/1982_6.pdf">Group velocity in finite difference schemes</a>, the thought occurred to me that if instability is a result of reflections at boundaries, can the theory be extended to meshes? This is somewhat analogous to reading a wave-theoretical exposition of Snell's Law and asking if the theory can be extended to anisotropic inhomogeneous media. I suspect that it can, but I don't know if it's worthwhile.</p>

<p>Now, the velocity of propogation of light in a medium is determined by the permittivity and permeability of that medium. From these quantities, we can also calculate the characteristic impedance of the medium. We generally think of media as linear, isotropic, and homogeneous, but this is not the case in general. We often think of monochromatic light but, again, this is not the case in general. When light passes from one medium to another, a difference in the characteristic impedance of the media leads to reflections at the boundary.</p>

<p>What Trefethen started me thinking was, is there a kind of &#8220;permittivity&#8221; of a grid and a &#8220;permeability&#8221; for a method which would give a wavenumber-dependent &#8220;characteristic impedance&#8221; for the grid/method combination and a different characteristic impedance for boundaries, owing to either imposed or numerically necessary boundary conditions, and allowing instability to be determined easily?</p>

<p>Generalising to an irregular mesh, the mesh analogue of permittivity would be a wavenumber-dependent discrete tensor. However intimidating it might sound, and however intractable it might be for a human to calculate, it would surely allow a computer to predict, given a mesh and a method, what Fourier modes would cause instability and, perhaps more importantly, where in the mesh this might arise. A potential end-product might be a software tool which takes a mesh from, say, <i>COMSOL Multiphysics</i>, and identifies &#8220;hot spots&#8221; (analogous to &#8220;shiny lumps&#8221; in an optical medium) where particular Fourier modes would reflect, giving rise to instability. Given the Fourier transform of a particular initial condition or forcing function, instability might be predicted and avoided by mesh refinement.</p>

<p>Now, it may be that this analysis would end up being equivalent to solving the problem on the mesh in full generality, or be obscenely computationally costly for some other reason, in which case, I admit, the entire idea is utterly worthless, but there's no harm in asking, right?</p>
]]></description>
            <link>http://caulfield.info/emmet/2008/04/stability-of-ibvps.html</link>
            <guid>http://caulfield.info/emmet/2008/04/stability-of-ibvps.html</guid>
            
                <category domain="http://www.sixapart.com/ns/types#category">English</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">Scientific Computing</category>
            
            
            <pubDate>Wed, 16 Apr 2008 00:31:36 +0100</pubDate>
        </item>
        
        <item>
            <title>Intelligent Design Is Only Theology, IDIOT</title>
            <description><![CDATA[<p>Someone mentioned the idea of handing out flyers outside screenings of <a href="http://www.expelledexposed.com/">Expelled: No Intelligence Allowed</a>, so I drew up a list of bullet-points that I'd like to include. Of course, it's too long for a flyer, but maybe it might give someone ideas or they might pick out a few of them.</p>

<p>I intend to annotate this with hyperlinks to relevant online documents and other media. If you can suggest links, please do. I'm particularly interesting in a video of one of Stephen Meyer's lectures: in the Q&amp;A at the end, an evolutionary biologist makes a fool of Meyer by describing a half-dozen precursor structures to the rotary bacterial flagellum beloved by cdesign proponentsists.</p>

<p>This post is dedicated to the public domain. Do with it as you wish.</p>
]]></description>
            <link>http://caulfield.info/emmet/2008/04/intelligent-design-is-only-the.html</link>
            <guid>http://caulfield.info/emmet/2008/04/intelligent-design-is-only-the.html</guid>
            
                <category domain="http://www.sixapart.com/ns/types#category">Crackpottery</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">English</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">Politics</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">Science</category>
            
            
                <category domain="http://www.sixapart.com/ns/types#tag">cdesign proponentsists</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">Exposed</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">IDIOT</category>
            
            <pubDate>Sun, 13 Apr 2008 20:31:42 +0100</pubDate>
        </item>
        
        <item>
            <title>A Trans-Atlantic Political Lexicon</title>
            <description><![CDATA[<p>For Europeans engaging in online political discussion with Americans, it is crucial to understand American political terminology. Provided that you know the political disposition of your correspondent, this is quite easy. Using the following table, look up the term in column 1 (Republican) or column 2 (Democrat), depending on the political disposition of your correspondent. You can then conveniently find the equivalent European term in column 3.</p>]]></description>
            <link>http://caulfield.info/emmet/2008/04/a-transatlantic-political-lexi.html</link>
            <guid>http://caulfield.info/emmet/2008/04/a-transatlantic-political-lexi.html</guid>
            
                <category domain="http://www.sixapart.com/ns/types#category">English</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">Humour</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">Politics</category>
            
            
            <pubDate>Sun, 13 Apr 2008 16:27:35 +0100</pubDate>
        </item>
        
        <item>
            <title>Finally, I succumb</title>
            <description><![CDATA[<p>OK, I've finally succumbed. <a href="http://movabletype.org/">Movable Type</a> is just so damn easy to install and use that I can't really justify maintaining my personal website with hand-crafted XML, XSL-T, and Perl any more.</p>

<p>Eventually I will tart it up, customise it, and move stuff over from <a href="http://emmetcaulfield.net/">emmetcaulfield.net</a>, but until I find my way around <i>Movable Type</i>, this default skin will have to do.</p>

<p xml:lang="sv">Jag bor i Uppsala, men efter halvannan år, min svenska är ännu jätte dalig. Ibland ska jag skriva nagonting på svenska också och jag hoppas att det skulle hjälpa mig lite när jag försöka att förbättra min svenska. Just nu kan jag läsa ganska bra, men min riktig problemerna med språket är att förstår talat svenska och att skriva. Om du ar svensk, inte vara buskablyg, och snälla hjälp mig: korrigera felen i texten!</p>

<p xml:lang="fr">De temps en temps, c'est possible que je vais écrire quelquechose en Français. J'espére que ça m'assisterai pendant que j'améliore mon Français, mais maintenant, j'habite en Suede et je veux apprendre la Suedois surtout. Si vous êtes un francophone, s'il vous plaît corrigez mon Français.</p>

<p xml:lang="ga">Anois is arís, b'fhéidir go scríofaidh mé cúpla focail as Gaeilge. Chaith mé trí mhí sa ghaeltacht Chonamara nuair a bhí mé óg, ach rinne mé dearmad ar an cuid is mó den ghaeilge a bhí agam san am sin. Tá fhios agam nach bhfuil mo gramadach lán ceart. Tá spéis agam mo chuid Ghaeilge a chur ar fheabhas, ach mar tá cónaí orm i tSualainn anois, táim chun an Sualainís a fhoglaim mar  tosaíocht. Anseo, do chuala siad faoi teanga "Éireannach", ach ceapann an tromlach dóibh gur saghas Béarla é: bíonn iontas oraibh nach bhfuil.<br /></p>
]]></description>
            <link>http://caulfield.info/emmet/2008/04/this-is-a-test-post.html</link>
            <guid>http://caulfield.info/emmet/2008/04/this-is-a-test-post.html</guid>
            
                <category domain="http://www.sixapart.com/ns/types#category">English</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">Français</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">Gaeilge</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">Ramblings</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">Svenska</category>
            
            
            <pubDate>Sat, 12 Apr 2008 01:26:11 +0100</pubDate>
        </item>
        
        <item>
            <title>Add a text-only runlevel to Ubuntu Gutsy</title>
            <description><![CDATA[<p><a href="http://releases.ubuntu.com/7.10/">Ubuntu/gutsy</a> and
      (apparently) even the venerable <a href="http://www.debian.org/">Debian</a> have <em>badly
      broken</em> ideas about runlevels: runlevels 2-5 are the same,
      all of them start the GUI (via <tt>gdm</tt>, <tt>kdm</tt>, or
      whatever), 2 is the default, and it's ridiculously difficult to
      get a sane runlevel configuration working. Sorry,
      <em>Ubuntu</em>, but this is one that <a href="http://www.redhat.com/">RedHat</a> got right at least 11
      years ago.
</p>

<p><em>Ubuntu</em> has abandoned <tt>inittab</tt> in favour of
      their homegrown <a href="http://upstart.ubuntu.com/">upstart</a>, not in itself a
      bad thing. <tt>inittab</tt> was cryptic, nobody understood it,
      and everyone who ever edited their <tt>inittab</tt> did so with
      fear and trepidation, but kernel boot options should override
      defaults, not the other way around.
</p>

<p>
      The &#8220;sane runlevels&#8221; solution presented herein actually
      works and has been tested, unlike a lot of what I read, and
      tried, in &#8220;help&#8221; forums.
</p>
]]></description>
            <link>http://caulfield.info/emmet/2008/03/add-a-textonly-runlevel-to-ubu.html</link>
            <guid>http://caulfield.info/emmet/2008/03/add-a-textonly-runlevel-to-ubu.html</guid>
            
            
                <category domain="http://www.sixapart.com/ns/types#tag">boot process</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">inittab</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">runlevel</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">ubuntu</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">upstart</category>
            
            <pubDate>Sun, 16 Mar 2008 16:43:03 +0100</pubDate>
        </item>
        
        <item>
            <title>SC420 and Cedar Mill</title>
            <description><![CDATA[        <p>
      Can a <a href="http://www.dell.com/content/products/productdetails.aspx/pedge_sc420?c=us&amp;l=en&amp;s=corp">Dell®
      PowerEdge® SC420</a> be upgraded with <a href="http://en.wikipedia.org/wiki/Pentium_IV#Cedar_Mill">Cedar
      Mill Pentium® 4</a> processors?
    </p>
        <p>

      Until Steve Ketchem sent me <a href="/img/SC420w631.jpg">a
      screenshot showing a '631 running in a SC420</a> (I blurred
      details that named the machine, etc., or that I thought might
      otherwise leak information), it seemed very, very unlikely
      indeed: there is only one report online of a SC420 being
      upgraded with a '631 and the preponderance of evidence suggested
      otherwise. It appeared that the <a href="http://www.intel.com/products/chipsets/e7221/index.htm">Intel®
      E7221</a> northbridge used in the SC420 simply doesn't support
      the <em>Cedar Mill</em> processors, making BIOS support a moot
      point, but Steve's email complicates the picture.
    </p>
 ]]></description>
            <link>http://caulfield.info/emmet/2008/03/sc420-and-cedar-mill.html</link>
            <guid>http://caulfield.info/emmet/2008/03/sc420-and-cedar-mill.html</guid>
            
                <category domain="http://www.sixapart.com/ns/types#category">English</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">Hardware</category>
            
            
            <pubDate>Thu, 13 Mar 2008 15:21:30 +0100</pubDate>
        </item>
        
        <item>
            <title>Fix the build problem with ATI drivers on Ubuntu/Gutsy</title>
            <description><![CDATA[        <p>
      The later &#8220;Catalyst&#8221; version of the <a href="http://ati.amd.com/support/driver.html">ATI proprietary
      drivers</a>,  8.2 (8.45.5), 8.1
      (8.45.2), and 7.11 (8.43.3) do not have this problem, so
      <strong>this page is now obsolete</strong>.
    </p>
        <p>
      The <em>previous</em> non-<em>Catalyst</em> version, 8.42.3,
      solved a long-standing problem with the ATI proprietary drivers
      for the first time: not being able to run <em>Compiz</em> or
      <em>Beryl</em> easily because of lack of support for
      compositing.
    </p>

        <p>
      The driver packages, for all versions, allow you to build
      <tt>.deb</tt> packages for a variety of distributions, including
      <em>Ubuntu/gutsy</em>, like this:
    </p>
        <pre class="console">
$ sh ./ati-driver-installer-8.42.3-x86.x86_64.run --buildpkg Ubuntu/gutsy
</pre>
        <p>
      Unfortunately, on x86_64 (aka amd64), building the 8.42.3
      package failed with an error message about missing files in
      <tt>X11R6/lib</tt>:
    </p>

        <pre class="console">
# amd64 needs some library redirection
</pre>
        <p>[snip]</p>
        <pre class="console">
dh_install -pxorg-driver-fglrx "usr/X11R6/lib/modules/dri"     "usr/lib32"
cp: cannot stat `./usr/X11R6/lib/modules/dri': No such file or directory
dh_install: command returned error code 256
make: *** [binary] Error 1
Removing temporary directory: fglrx-install.E10832
</pre>
        <p>
      The problem was that ATI's build script looked for some 32-bit
      libraries, common to both the 64bit and 32bit drivers, in the
      wrong place.
    </p>
 
        <h2>Solution</h2>

        <p>
      The solution is very easy, you just do the following:
    </p>
        <ul>
          <li>Extract the package</li>
          <li>Copy missing files to their correct location</li>
          <li>Build the package</li>
        </ul>

        <p>
      Assuming that you've downloaded the package into the
      &#8220;current&#8221; directory, all you do is:
    </p>
        <pre class="console">
$ bash ati-driver-installer-8.42.3-x86.x86_64.run --extract ati-driver
$ cd ati-driver
$ cp -r arch/x86/usr/X11R6/lib arch/x86_64/usr/X11R6/
$ ./packages/Ubuntu/ati-packager.sh --buildpkg gutsy
</pre>
        <p>
      The packages should build correctly.
    </p>
        <p>
      After doing this, I was able to install the packages and follow <a href="http://wiki.cchtml.com/index.php/Ubuntu_Gutsy_Installation_Guide">this
      guide</a> to get Compiz working on Ubuntu/gutsy on an Athlon64
      with an ATI X1550.
    </p>
]]></description>
            <link>http://caulfield.info/emmet/2008/03/fix-the-build-problem-with-ati-1.html</link>
            <guid>http://caulfield.info/emmet/2008/03/fix-the-build-problem-with-ati-1.html</guid>
            
                <category domain="http://www.sixapart.com/ns/types#category">English</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">Ubuntu</category>
            
            
                <category domain="http://www.sixapart.com/ns/types#tag">ATI</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">graphics</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">Linux</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">Ubuntu</category>
            
            <pubDate>Mon, 10 Mar 2008 14:03:11 +0100</pubDate>
        </item>
        
        <item>
            <title>Problems with Upstart in Ubuntu Gutsy</title>
            <description><![CDATA[         <h2>Boot Process</h2>
        <p><a href="http://www.ubuntu.com/">Ubuntu</a> has abandoned
      <tt>inittab</tt> in favour of their homegrown <a href="http://upstart.ubuntu.com/">upstart</a>, not in itself a
      bad thing, but as shipped it is not configured in such a
      way that some very useful behaviour of <tt>inittab</tt> is
      replicated.
    </p>
]]></description>
            <link>http://caulfield.info/emmet/2008/02/problems-with-upstart-in-ubunt.html</link>
            <guid>http://caulfield.info/emmet/2008/02/problems-with-upstart-in-ubunt.html</guid>
            
                <category domain="http://www.sixapart.com/ns/types#category">English</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">Linux</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">Technology</category>
            
                <category domain="http://www.sixapart.com/ns/types#category">Ubuntu</category>
            
            
                <category domain="http://www.sixapart.com/ns/types#tag">boot process</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">inittab</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">problems</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">telinit</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">ubuntu</category>
            
                <category domain="http://www.sixapart.com/ns/types#tag">upstart</category>
            
            <pubDate>Fri, 22 Feb 2008 13:35:20 +0100</pubDate>
        </item>
        
    </channel>
</rss>
