<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
		>
<channel>
	<title>Comments on: GISS Gridded and Zonal Data</title>
	<atom:link href="http://climateaudit.org/2009/06/05/giss-gridded-and-zonal-data/feed/" rel="self" type="application/rss+xml" />
	<link>http://climateaudit.org/2009/06/05/giss-gridded-and-zonal-data/</link>
	<description>by Steve McIntyre</description>
	<lastBuildDate>Sat, 25 May 2013 17:35:05 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
	<item>
		<title>By: Roderic Fabian</title>
		<link>http://climateaudit.org/2009/06/05/giss-gridded-and-zonal-data/#comment-214584</link>
		<dc:creator><![CDATA[Roderic Fabian]]></dc:creator>
		<pubDate>Thu, 07 Jan 2010 03:49:16 +0000</pubDate>
		<guid isPermaLink="false">http://www.climateaudit.org/?p=6214#comment-214584</guid>
		<description><![CDATA[Getting back to the original topic: the problem with translating station to gridded and zonal data is &lt;a href=&quot;http://sextant.blogspot.com/2010/01/heres-problem.html&quot; rel=&quot;nofollow&quot;&gt;obvious&lt;/a&gt;.]]></description>
		<content:encoded><![CDATA[<p>Getting back to the original topic: the problem with translating station to gridded and zonal data is <a href="http://sextant.blogspot.com/2010/01/heres-problem.html" rel="nofollow">obvious</a>.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: E.M.Smith</title>
		<link>http://climateaudit.org/2009/06/05/giss-gridded-and-zonal-data/#comment-184842</link>
		<dc:creator><![CDATA[E.M.Smith]]></dc:creator>
		<pubDate>Sat, 15 Aug 2009 21:17:24 +0000</pubDate>
		<guid isPermaLink="false">http://www.climateaudit.org/?p=6214#comment-184842</guid>
		<description><![CDATA[Humf...  Yet Another Language Food Fight... YALFF.

I could say something snarky like &quot; Yer all pansies, I used to toggle binary programs into an Altair MITS on the front panel and read the output from the blinky lights&quot;... or mention the time I learned &quot;APL&quot; out of curiosity (and wrote a program about 40 characters long that did about 5 pages worth of work - but they don&#039;t call it a &quot;write only&quot; language for nothing, the next day I couldn&#039;t read it... 8-)  Yeah, that APL, the one that needs a custom keyboard with hieroglyphics on it ...  Ah, the days...  I&#039;m SO glad they are gone ;-)

After that stuff, FORTRAN is positively God&#039;s Gift.

OK, with that out of the way, I took the approach of minimal change and just made GIStemp go.  I also wanted to be able to throw rocks at it without having to defend too much against the &quot;You must have changed it!&quot; accusation.

It&#039;s up.  It&#039;s running.  You need a LINUX or UNIX box (I&#039;m on Red Hat 7.2 with a 400 Mhz AMD chip and about 128 MB of memory IIRC) and the changes needed are minimal.  (Mostly just not using one non-standard data declaration - i.e. move the data initialization out of the variable declarations and into a DATA statement).  I&#039;m happy with that choice.  And matching each chunk to the compiler for it&#039;s era.  f77 for some, g95 for others.

Now I can, at my leisure, rewrite any part of it into C (or whatever), do an A/B compare, and proceed with confidence that I have not changed anything enough to matter or to need defending.

If anyone wants a working copy, let me know at my site.  I&#039;ve only translated one small test program to C to check how hard it is (not too bad).  The biggest issue I&#039;ve run into is that the Hadley SST files are &quot;Bigendian&quot; and a PC is &quot;littleendian&quot; and FORTRAN &quot;unformatted&quot; files are actually quite formatted and in an odd way that endian swaps make hard to handle in C.  (It writes a byte count, the sometimes variable length bytes, then the byte count AGAIN.  You can&#039;t just blanket unswap the bytes... you must know the FORTRAN layout of the data.  i.e. an INT takes a different byte count that a LONG INT to be reversed.)  See:

http://local.wasp.uwa.edu.au/~pbourke/dataformats/fortran/

then weep...  &quot;what were they thinking&quot; indeed...  and do you really want to try to unscramble that in C ?

A decent starting point is at:

http://chiefio.wordpress.com/2009/07/29/gistemp-a-cleaner-approach/

Where I talk about the changes I made to the directory structure, the change to a Makefile design, and that it works with less confusion this way.

Oh, and I&#039;d suggest NOT dredging your brain through their code if possible.  The damage it has done to my coding style will take a couple of years to purge.  You can&#039;t steep yourself in someone else&#039;s stuff for months on end without starting to code in their &quot;accent&quot;...   A major part of my goal has just been to get most of it so that folks can look at a chunk, re-write it sanely, do an A/B, and then move on.  The whole STEP0 ought to just be a few data load scripts into a decent relational database.

E. M. Smith]]></description>
		<content:encoded><![CDATA[<p>Humf&#8230;  Yet Another Language Food Fight&#8230; YALFF.</p>
<p>I could say something snarky like &#8221; Yer all pansies, I used to toggle binary programs into an Altair MITS on the front panel and read the output from the blinky lights&#8221;&#8230; or mention the time I learned &#8220;APL&#8221; out of curiosity (and wrote a program about 40 characters long that did about 5 pages worth of work &#8211; but they don&#8217;t call it a &#8220;write only&#8221; language for nothing, the next day I couldn&#8217;t read it&#8230; <img src='http://s0.wp.com/wp-includes/images/smilies/icon_cool.gif' alt='8-)' class='wp-smiley' />  Yeah, that APL, the one that needs a custom keyboard with hieroglyphics on it &#8230;  Ah, the days&#8230;  I&#8217;m SO glad they are gone <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>After that stuff, FORTRAN is positively God&#8217;s Gift.</p>
<p>OK, with that out of the way, I took the approach of minimal change and just made GIStemp go.  I also wanted to be able to throw rocks at it without having to defend too much against the &#8220;You must have changed it!&#8221; accusation.</p>
<p>It&#8217;s up.  It&#8217;s running.  You need a LINUX or UNIX box (I&#8217;m on Red Hat 7.2 with a 400 Mhz AMD chip and about 128 MB of memory IIRC) and the changes needed are minimal.  (Mostly just not using one non-standard data declaration &#8211; i.e. move the data initialization out of the variable declarations and into a DATA statement).  I&#8217;m happy with that choice.  And matching each chunk to the compiler for it&#8217;s era.  f77 for some, g95 for others.</p>
<p>Now I can, at my leisure, rewrite any part of it into C (or whatever), do an A/B compare, and proceed with confidence that I have not changed anything enough to matter or to need defending.</p>
<p>If anyone wants a working copy, let me know at my site.  I&#8217;ve only translated one small test program to C to check how hard it is (not too bad).  The biggest issue I&#8217;ve run into is that the Hadley SST files are &#8220;Bigendian&#8221; and a PC is &#8220;littleendian&#8221; and FORTRAN &#8220;unformatted&#8221; files are actually quite formatted and in an odd way that endian swaps make hard to handle in C.  (It writes a byte count, the sometimes variable length bytes, then the byte count AGAIN.  You can&#8217;t just blanket unswap the bytes&#8230; you must know the FORTRAN layout of the data.  i.e. an INT takes a different byte count that a LONG INT to be reversed.)  See:</p>
<p><a href="http://local.wasp.uwa.edu.au/~pbourke/dataformats/fortran/" rel="nofollow">http://local.wasp.uwa.edu.au/~pbourke/dataformats/fortran/</a></p>
<p>then weep&#8230;  &#8220;what were they thinking&#8221; indeed&#8230;  and do you really want to try to unscramble that in C ?</p>
<p>A decent starting point is at:</p>
<p><a href="http://chiefio.wordpress.com/2009/07/29/gistemp-a-cleaner-approach/" rel="nofollow">http://chiefio.wordpress.com/2009/07/29/gistemp-a-cleaner-approach/</a></p>
<p>Where I talk about the changes I made to the directory structure, the change to a Makefile design, and that it works with less confusion this way.</p>
<p>Oh, and I&#8217;d suggest NOT dredging your brain through their code if possible.  The damage it has done to my coding style will take a couple of years to purge.  You can&#8217;t steep yourself in someone else&#8217;s stuff for months on end without starting to code in their &#8220;accent&#8221;&#8230;   A major part of my goal has just been to get most of it so that folks can look at a chunk, re-write it sanely, do an A/B, and then move on.  The whole STEP0 ought to just be a few data load scripts into a decent relational database.</p>
<p>E. M. Smith</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mark T</title>
		<link>http://climateaudit.org/2009/06/05/giss-gridded-and-zonal-data/#comment-184841</link>
		<dc:creator><![CDATA[Mark T]]></dc:creator>
		<pubDate>Tue, 09 Jun 2009 21:54:48 +0000</pubDate>
		<guid isPermaLink="false">http://www.climateaudit.org/?p=6214#comment-184841</guid>
		<description><![CDATA[Hehe, yes, that was my point.  We determined his code was a brain landmine: walk in and your brain might not come out the same.

I had a full copy at the time, though I do not recall where it was.  I had a rather catastrophic HDD crash around December, 2007, so I lost a lot of that peripheral stuff I had been working on.  From what I understand, the code as it was at the time, is no longer available.  You and Jean S have copies, right?

If they had done it in the Fortran of MBH98, I&#039;m guessing an obfuscated code contest contribution suggestion would have been in order? :)

Mark

&lt;strong&gt;Steve&lt;/strong&gt;:   see http://holocene.meteo.psu.edu/shared/research/MANNETAL98/. I&#039;ve copied it as well/]]></description>
		<content:encoded><![CDATA[<p>Hehe, yes, that was my point.  We determined his code was a brain landmine: walk in and your brain might not come out the same.</p>
<p>I had a full copy at the time, though I do not recall where it was.  I had a rather catastrophic HDD crash around December, 2007, so I lost a lot of that peripheral stuff I had been working on.  From what I understand, the code as it was at the time, is no longer available.  You and Jean S have copies, right?</p>
<p>If they had done it in the Fortran of MBH98, I&#8217;m guessing an obfuscated code contest contribution suggestion would have been in order? <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Mark</p>
<p><strong>Steve</strong>:   see <a href="http://holocene.meteo.psu.edu/shared/research/MANNETAL98/" rel="nofollow">http://holocene.meteo.psu.edu/shared/research/MANNETAL98/</a>. I&#8217;ve copied it as well/</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Steve McIntyre</title>
		<link>http://climateaudit.org/2009/06/05/giss-gridded-and-zonal-data/#comment-184840</link>
		<dc:creator><![CDATA[Steve McIntyre]]></dc:creator>
		<pubDate>Tue, 09 Jun 2009 21:34:02 +0000</pubDate>
		<guid isPermaLink="false">http://www.climateaudit.org/?p=6214#comment-184840</guid>
		<description><![CDATA[Re: &lt;a href=&quot;#comment-344894&quot; rel=&quot;nofollow&quot;&gt;Mark T (#138)&lt;/a&gt;,

The Mann analyses only take time because the code was beyond horrendous.

But because it was done in Matlab - you could sort of follow what they were trying to do. Now that we&#039;ve pretty much figured out RegEM, we need to revisit it. If they&#039;d done it in the Fortran of MBH98, it would have been totally unintelligible.]]></description>
		<content:encoded><![CDATA[<p>Re: <a href="#comment-344894" rel="nofollow">Mark T (#138)</a>,</p>
<p>The Mann analyses only take time because the code was beyond horrendous.</p>
<p>But because it was done in Matlab &#8211; you could sort of follow what they were trying to do. Now that we&#8217;ve pretty much figured out RegEM, we need to revisit it. If they&#8217;d done it in the Fortran of MBH98, it would have been totally unintelligible.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mark T</title>
		<link>http://climateaudit.org/2009/06/05/giss-gridded-and-zonal-data/#comment-184839</link>
		<dc:creator><![CDATA[Mark T]]></dc:creator>
		<pubDate>Tue, 09 Jun 2009 21:24:39 +0000</pubDate>
		<guid isPermaLink="false">http://www.climateaudit.org/?p=6214#comment-184839</guid>
		<description><![CDATA[And the skills of the programmer.  As I recall, one of Mann&#039;s RegEM routines was terribly written and excruciatingly slow.  At the time, Jean S and I were looking at it, and maybe even UC.  I don&#039;t recall the specifics, but it was tied to a failure to understand the vectorization available with MATLAB, i.e., he often used loops instead of vector commands, etc.  He also did not understand that scalars interact with arrays rather easily, but that&#039;s not a huge performance impact unless a loop is being used to add a scalar to every element in an array.

But the context, obviously, is the sort of statistics being done in here, for which, Steve is correct.  None of these sorts of analyses require real-time execution speeds.

Mark]]></description>
		<content:encoded><![CDATA[<p>And the skills of the programmer.  As I recall, one of Mann&#8217;s RegEM routines was terribly written and excruciatingly slow.  At the time, Jean S and I were looking at it, and maybe even UC.  I don&#8217;t recall the specifics, but it was tied to a failure to understand the vectorization available with MATLAB, i.e., he often used loops instead of vector commands, etc.  He also did not understand that scalars interact with arrays rather easily, but that&#8217;s not a huge performance impact unless a loop is being used to add a scalar to every element in an array.</p>
<p>But the context, obviously, is the sort of statistics being done in here, for which, Steve is correct.  None of these sorts of analyses require real-time execution speeds.</p>
<p>Mark</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gary Strand</title>
		<link>http://climateaudit.org/2009/06/05/giss-gridded-and-zonal-data/#comment-184838</link>
		<dc:creator><![CDATA[Gary Strand]]></dc:creator>
		<pubDate>Tue, 09 Jun 2009 21:17:20 +0000</pubDate>
		<guid isPermaLink="false">http://www.climateaudit.org/?p=6214#comment-184838</guid>
		<description><![CDATA[Re: &lt;a href=&quot;#comment-344884&quot; rel=&quot;nofollow&quot;&gt;Steve McIntyre (#136)&lt;/a&gt;,
&lt;blockquote&gt;For statistical applications, the speed of execution is pretty much irrelevant.&lt;/blockquote&gt;

That would depend on the nature of the statistics being sought.]]></description>
		<content:encoded><![CDATA[<p>Re: <a href="#comment-344884" rel="nofollow">Steve McIntyre (#136)</a>,</p>
<blockquote><p>For statistical applications, the speed of execution is pretty much irrelevant.</p></blockquote>
<p>That would depend on the nature of the statistics being sought.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Steve McIntyre</title>
		<link>http://climateaudit.org/2009/06/05/giss-gridded-and-zonal-data/#comment-184837</link>
		<dc:creator><![CDATA[Steve McIntyre]]></dc:creator>
		<pubDate>Tue, 09 Jun 2009 21:03:10 +0000</pubDate>
		<guid isPermaLink="false">http://www.climateaudit.org/?p=6214#comment-184837</guid>
		<description><![CDATA[Re: &lt;a href=&quot;#comment-344865&quot; rel=&quot;nofollow&quot;&gt;Deep Climate (#134)&lt;/a&gt;,

For statistical applications, the speed of execution is pretty much irrelevant.

The costs are programming and analysis, where the gains from using high-level languages such as R or Matlab, vastly outweigh any slight benefits in execution speed from using assembly language or Cobol or Fortran.]]></description>
		<content:encoded><![CDATA[<p>Re: <a href="#comment-344865" rel="nofollow">Deep Climate (#134)</a>,</p>
<p>For statistical applications, the speed of execution is pretty much irrelevant.</p>
<p>The costs are programming and analysis, where the gains from using high-level languages such as R or Matlab, vastly outweigh any slight benefits in execution speed from using assembly language or Cobol or Fortran.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gary Strand</title>
		<link>http://climateaudit.org/2009/06/05/giss-gridded-and-zonal-data/#comment-184836</link>
		<dc:creator><![CDATA[Gary Strand]]></dc:creator>
		<pubDate>Tue, 09 Jun 2009 20:22:52 +0000</pubDate>
		<guid isPermaLink="false">http://www.climateaudit.org/?p=6214#comment-184836</guid>
		<description><![CDATA[Re: &lt;a href=&quot;#comment-344863&quot; rel=&quot;nofollow&quot;&gt;jeff Id (#133)&lt;/a&gt;,
&lt;blockquote&gt;Is the code available to the public?&lt;/blockquote&gt;

What code?]]></description>
		<content:encoded><![CDATA[<p>Re: <a href="#comment-344863" rel="nofollow">jeff Id (#133)</a>,</p>
<blockquote><p>Is the code available to the public?</p></blockquote>
<p>What code?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Deep Climate</title>
		<link>http://climateaudit.org/2009/06/05/giss-gridded-and-zonal-data/#comment-184835</link>
		<dc:creator><![CDATA[Deep Climate]]></dc:creator>
		<pubDate>Tue, 09 Jun 2009 20:06:17 +0000</pubDate>
		<guid isPermaLink="false">http://www.climateaudit.org/?p=6214#comment-184835</guid>
		<description><![CDATA[Sure are a lot of comments, so I&#039;m sorry if someone already raised this point.

R is great, but it is still an interpreted language. Fortran and Matlab code can be compiled into machine code executables.

There are ways to optimize R performance, but the best would be if the R project would be extended to have a fullfledged compiler (and other tools would be great too).

Long ago (seems almost like another life) I did a fair amount of FoxPro (PC database) programming, a variant of dBase. You could use it in interpreted mode, or build compiled programs for maximum speed. I think Matlab has that capability, giving it a significant advantage over R.]]></description>
		<content:encoded><![CDATA[<p>Sure are a lot of comments, so I&#8217;m sorry if someone already raised this point.</p>
<p>R is great, but it is still an interpreted language. Fortran and Matlab code can be compiled into machine code executables.</p>
<p>There are ways to optimize R performance, but the best would be if the R project would be extended to have a fullfledged compiler (and other tools would be great too).</p>
<p>Long ago (seems almost like another life) I did a fair amount of FoxPro (PC database) programming, a variant of dBase. You could use it in interpreted mode, or build compiled programs for maximum speed. I think Matlab has that capability, giving it a significant advantage over R.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jeff Id</title>
		<link>http://climateaudit.org/2009/06/05/giss-gridded-and-zonal-data/#comment-184834</link>
		<dc:creator><![CDATA[jeff Id]]></dc:creator>
		<pubDate>Tue, 09 Jun 2009 19:51:42 +0000</pubDate>
		<guid isPermaLink="false">http://www.climateaudit.org/?p=6214#comment-184834</guid>
		<description><![CDATA[Re: &lt;a href=&quot;#comment-344861&quot; rel=&quot;nofollow&quot;&gt;Gary Strand (#132)&lt;/a&gt;,

Is the code available to the public?]]></description>
		<content:encoded><![CDATA[<p>Re: <a href="#comment-344861" rel="nofollow">Gary Strand (#132)</a>,</p>
<p>Is the code available to the public?</p>
]]></content:encoded>
	</item>
</channel>
</rss>
