<?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: Code: The Trick</title>
	<atom:link href="http://climateaudit.org/2010/04/01/code-the-trick/feed/" rel="self" type="application/rss+xml" />
	<link>http://climateaudit.org/2010/04/01/code-the-trick/</link>
	<description>by Steve McIntyre</description>
	<lastBuildDate>Sat, 18 May 2013 19:12:55 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
	<item>
		<title>By: Keith’s Science Trick, Mike’s Nature Trick and Phil’s Combo &#124; Another Newyork Times</title>
		<link>http://climateaudit.org/2010/04/01/code-the-trick/#comment-259348</link>
		<dc:creator><![CDATA[Keith’s Science Trick, Mike’s Nature Trick and Phil’s Combo &#124; Another Newyork Times]]></dc:creator>
		<pubDate>Tue, 29 Mar 2011 18:19:26 +0000</pubDate>
		<guid isPermaLink="false">http://climateaudit.org/?p=10940#comment-259348</guid>
		<description><![CDATA[[...] diagnosed by CA reader UC here and expounded in greater length (with Matlab code here and here and here ). It consists of the following elements: 1. A digital splice of proxy data up to 1980 [...]]]></description>
		<content:encoded><![CDATA[<p>[...] diagnosed by CA reader UC here and expounded in greater length (with Matlab code here and here and here ). It consists of the following elements: 1. A digital splice of proxy data up to 1980 [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Keith&#8217;s Science Trick, Mike&#8217;s Nature Trick and Phil&#8217;s Combo &#171; Climate Audit</title>
		<link>http://climateaudit.org/2010/04/01/code-the-trick/#comment-259319</link>
		<dc:creator><![CDATA[Keith&#8217;s Science Trick, Mike&#8217;s Nature Trick and Phil&#8217;s Combo &#171; Climate Audit]]></dc:creator>
		<pubDate>Tue, 29 Mar 2011 14:36:49 +0000</pubDate>
		<guid isPermaLink="false">http://climateaudit.org/?p=10940#comment-259319</guid>
		<description><![CDATA[[...] diagnosed by CA reader UC here and expounded in greater length (with Matlab code here and here and here ). It consists of the following elements: 1. A digital splice of proxy data up to 1980 [...]]]></description>
		<content:encoded><![CDATA[<p>[...] diagnosed by CA reader UC here and expounded in greater length (with Matlab code here and here and here ). It consists of the following elements: 1. A digital splice of proxy data up to 1980 [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Steve McIntyre</title>
		<link>http://climateaudit.org/2010/04/01/code-the-trick/#comment-258526</link>
		<dc:creator><![CDATA[Steve McIntyre]]></dc:creator>
		<pubDate>Wed, 16 Mar 2011 18:32:18 +0000</pubDate>
		<guid isPermaLink="false">http://climateaudit.org/?p=10940#comment-258526</guid>
		<description><![CDATA[Here is implementation of UC&#039;s code in R:

##LOAD MBH data
#load MBHsmooths1.txt # http://www.climateaudit.info/wp-content/uploads/2009/11/mbhsmooths1.txt
	## MBHsmooths1 = [ Year AnnualRecon Instrumental MB98SmoothTrick MBH98SmoothNoTrick MBH99SmoothTrick MBH99SmoothNoTrick ]

	MBH=MBHsmooths1=read.table(&quot;http://www.climateaudit.info/wp-content/uploads/2009/11/mbhsmooths1.txt&quot;)
	names(MBH)=names(MBHsmooths1)=c(&quot;Year&quot;, &quot;AnnualRecon&quot;, &quot;Instrumental&quot; ,&quot;MBH98SmoothTrick&quot;, &quot;MBH98SmoothNoTrick&quot;,
  	    &quot;MBH99SmoothTrick&quot;, &quot;MBH99SmoothNoTrick&quot;)
	dim(MBH) #999 7
	MBH[1,]

#[B98,A98]=butter(10,2/50); # &#039;50 year lowpass&#039;

	library(signal)
	bf=butter(10,2/50); # &#039;50 year lowpass&#039;
	B98=bf$b;A98=bf$a
	B98  #  [1] 6.500312e-13 6.500312e-12 2.925140e-11

#in98=MBHsmooths1(401:981,2); # Annual Recon MBH98,
    ##source:
    ## http://www.nature.com/nature/journal/v430/n6995/extref/FigureData/nhmean.txt ,
   ## col 2
	
	in98= MBHsmooths1[401:981,&quot;AnnualRecon&quot;];
	  length(in98) #581

#Trick=MBHsmooths1(982:996,3) #; # pad with instrumental (1981..1995) ..
   ## source:
   ## http://www.nature.com/nature/journal/v430/n6995/extref/FigureData/nhmean.txt
   ## col 3
	
	Trick=MBHsmooths1[982:996,&quot;Instrumental&quot;]#; # pad with instrumental (1981..1995) ..
	  length(Trick) #15

##function flipud
   #tfilt=conv(E,flipud(E))/M;
   #Oh, I forgot to explain the flipud-thing:
   #Suppose E=[1;2;3;4;5]   (a column vector)
   # Then flipud simply reverses the values (each column), i.e. flipud(E)=[5;4;3;2;1] and 

  flipud=function(x) rev(x)

   #   conv(E,flipud(E)) is 
   #    5   14    26     40     55     40     26     14      5

   E=1:5
   conv(E,flipud(E))

   #They should be convolved
   #tfilt=conv(E,flipud(E))/M;
   #Reading the point 145 in the document I referred that would be in R something like tfilt=convolve(E,E,type=&#039;open&#039;)/M
	
   convolve(E,E,type=&quot;open&quot;)
	  # 5 14 26 40 55 40 26 14  5

#out98t=flipud(filter(B98,A98,flipud( [filter(B98,A98,  [in98;Trick;zeros(100,1)]    )]  ))); #..then smooth
#% Note that filter.m initializes with zeros
#out98t=out98t(1:596);
#out98tr=out98t(26:576); % smoothed reconstruction with the trick
	#flipud(filter(B98,A98,flipud( [filter(B98,A98, c(in98,Trick, rep(0,100) )    )]  )));
	        x= c( in98,Trick )  
	#flipud(filter(B98,A98,flipud( [  filter(B98,A98, c(in98,Trick, rep(0,100) ) )    ]  )));
	       # y=  filter(B98,A98, x ) 
	out98t= y= rev (filter(B98,A98,rev   (    filter(B98,A98,c(rep(0,100),x,rep(0,100) )    )  )  ))

    out98t=flipud(filter(B98,A98, flipud( c(filter(B98,A98,  c(in98,Trick,rep(0,100)) )) ))); #..then smooth
	length(out98t)
	out98t=ts(out98t[1:596],start=1400)   
	out98tr=ts( out98t[26:576],start=1425) # % smoothed reconstruction with the trick
	
	plot(1400:1980,in98,type=&quot;l&quot;,col=&quot;grey50&quot;,ylim=c(-.8,.5))
	lines(out98tr,lty=2,lwd=3)

	cbind(out98tr ,MBH[(1425:1975)-999,&quot;MBH98SmoothTrick&quot;]) #1425 to 1975
	range( out98tr -MBH[(1425:1975)-999,&quot;MBH98SmoothTrick&quot;],na.rm=TRUE)
	      # -0.000729800  0.001258341

# no trick
#out98nt=flipud(filter(B98,A98,flipud([filter(B98,A98,[in98;zeros(115,1)])]))); %..then smooth
#out98nt=out98nt(1:596);
#out98ntr=out98nt(26:576); % smoothed reconstruction without the trick

	out98nt=flipud(filter(B98,A98, flipud( c(filter(B98,A98,  c(in98,rep(0,115)) )) ))); #..then smooth
	out98nt=ts(out98nt[1:596],start=1400)   
	out98ntr=ts( out98nt[26:576],start=1425) # % smoothed reconstruction with the trick

	range( out98ntr -MBH[(1425:1975)-999,&quot;MBH98SmoothNoTrick&quot;],na.rm=TRUE)
	      # -5.796738e-05  1.489949e-04


#% read image, http://uc00.files.wordpress.com/2010/05/mbh985b.png
#A=imread(&#039;mbh985b.png&#039;); % from MBH98, copied for scientific purposes
#XS=1.1691; % x-scale
#YS=-365.7848; % y-scale
#XB=-1.5749e+003; % x-bias
#YB=281.8316; % y-bias
#Year=(1400:1995)&#039;;
#close all
#image(A)

	library(png)
	download.file(&quot;http://uc00.files.wordpress.com/2010/05/mbh985b.png&quot;,&quot;temp.png&quot;,mode=&quot;wb&quot;)
	img=readPNG(&quot;temp.png&quot;)
	dim(img)
	  #610 781   3
	
	XS=1.1691; # % x-scale
	YS=-365.7848; #% y-scale
	XB=-1.5749e+003;# % x-bias
	YB=281.8316;# % y-bias
	Year=(1400:1995);

library(grDevices)
	par(mar=c(0,0,0,0))
	par(bg=&quot;lightblue&quot;)
	plot(MBH[,1],xlim=c(1300,2025),ylim=c(-.8,.5),type=&quot;n&quot;,xaxs=&quot;i&quot;,axes=FALSE)
	rasterImage(img , 1320, -.65, 2025, .5)
	lines(1275+(Year-1300)*1.05,out98nt*.7-.03,col=3,lwd=1)
	lines(1275+(Year-1300)*1.05,out98t*.7-.03,col=2,lwd=1)
	
	#temp=Year&gt;=1980
	#lines(1275+(Year[temp]-1300)*1.05,out98t[temp]*.7-.03,col=2,lwd=2)
	temp=Year&gt;=1940
	lines(1275+(Year[temp]-1300)*1.05,out98nt[temp]*.7-.03,col=&quot;yellow&quot;,lwd=2)]]></description>
		<content:encoded><![CDATA[<p>Here is implementation of UC&#8217;s code in R:</p>
<p>##LOAD MBH data<br />
#load MBHsmooths1.txt # <a href="http://www.climateaudit.info/wp-content/uploads/2009/11/mbhsmooths1.txt" rel="nofollow">http://www.climateaudit.info/wp-content/uploads/2009/11/mbhsmooths1.txt</a><br />
	## MBHsmooths1 = [ Year AnnualRecon Instrumental MB98SmoothTrick MBH98SmoothNoTrick MBH99SmoothTrick MBH99SmoothNoTrick ]</p>
<p>	MBH=MBHsmooths1=read.table(&#8220;http://www.climateaudit.info/wp-content/uploads/2009/11/mbhsmooths1.txt&#8221;)<br />
	names(MBH)=names(MBHsmooths1)=c(&#8220;Year&#8221;, &#8220;AnnualRecon&#8221;, &#8220;Instrumental&#8221; ,&#8221;MBH98SmoothTrick&#8221;, &#8220;MBH98SmoothNoTrick&#8221;,<br />
  	    &#8220;MBH99SmoothTrick&#8221;, &#8220;MBH99SmoothNoTrick&#8221;)<br />
	dim(MBH) #999 7<br />
	MBH[1,]</p>
<p>#[B98,A98]=butter(10,2/50); # &#8217;50 year lowpass&#8217;</p>
<p>	library(signal)<br />
	bf=butter(10,2/50); # &#8217;50 year lowpass&#8217;<br />
	B98=bf$b;A98=bf$a<br />
	B98  #  [1] 6.500312e-13 6.500312e-12 2.925140e-11</p>
<p>#in98=MBHsmooths1(401:981,2); # Annual Recon MBH98,<br />
    ##source:<br />
    ## <a href="http://www.nature.com/nature/journal/v430/n6995/extref/FigureData/nhmean.txt" rel="nofollow">http://www.nature.com/nature/journal/v430/n6995/extref/FigureData/nhmean.txt</a> ,<br />
   ## col 2</p>
<p>	in98= MBHsmooths1[401:981,"AnnualRecon"];<br />
	  length(in98) #581</p>
<p>#Trick=MBHsmooths1(982:996,3) #; # pad with instrumental (1981..1995) ..<br />
   ## source:<br />
   ## <a href="http://www.nature.com/nature/journal/v430/n6995/extref/FigureData/nhmean.txt" rel="nofollow">http://www.nature.com/nature/journal/v430/n6995/extref/FigureData/nhmean.txt</a><br />
   ## col 3</p>
<p>	Trick=MBHsmooths1[982:996,"Instrumental"]#; # pad with instrumental (1981..1995) ..<br />
	  length(Trick) #15</p>
<p>##function flipud<br />
   #tfilt=conv(E,flipud(E))/M;<br />
   #Oh, I forgot to explain the flipud-thing:<br />
   #Suppose E=[1;2;3;4;5]   (a column vector)<br />
   # Then flipud simply reverses the values (each column), i.e. flipud(E)=[5;4;3;2;1] and </p>
<p>  flipud=function(x) rev(x)</p>
<p>   #   conv(E,flipud(E)) is<br />
   #    5   14    26     40     55     40     26     14      5</p>
<p>   E=1:5<br />
   conv(E,flipud(E))</p>
<p>   #They should be convolved<br />
   #tfilt=conv(E,flipud(E))/M;<br />
   #Reading the point 145 in the document I referred that would be in R something like tfilt=convolve(E,E,type=&#8217;open&#8217;)/M</p>
<p>   convolve(E,E,type=&#8221;open&#8221;)<br />
	  # 5 14 26 40 55 40 26 14  5</p>
<p>#out98t=flipud(filter(B98,A98,flipud( [filter(B98,A98,  [in98;Trick;zeros(100,1)]    )]  ))); #..then smooth<br />
#% Note that filter.m initializes with zeros<br />
#out98t=out98t(1:596);<br />
#out98tr=out98t(26:576); % smoothed reconstruction with the trick<br />
	#flipud(filter(B98,A98,flipud( [filter(B98,A98, c(in98,Trick, rep(0,100) )    )]  )));<br />
	        x= c( in98,Trick )<br />
	#flipud(filter(B98,A98,flipud( [  filter(B98,A98, c(in98,Trick, rep(0,100) ) )    ]  )));<br />
	       # y=  filter(B98,A98, x )<br />
	out98t= y= rev (filter(B98,A98,rev   (    filter(B98,A98,c(rep(0,100),x,rep(0,100) )    )  )  ))</p>
<p>    out98t=flipud(filter(B98,A98, flipud( c(filter(B98,A98,  c(in98,Trick,rep(0,100)) )) ))); #..then smooth<br />
	length(out98t)<br />
	out98t=ts(out98t[1:596],start=1400)<br />
	out98tr=ts( out98t[26:576],start=1425) # % smoothed reconstruction with the trick</p>
<p>	plot(1400:1980,in98,type=&#8221;l&#8221;,col=&#8221;grey50&#8243;,ylim=c(-.8,.5))<br />
	lines(out98tr,lty=2,lwd=3)</p>
<p>	cbind(out98tr ,MBH[(1425:1975)-999,"MBH98SmoothTrick"]) #1425 to 1975<br />
	range( out98tr -MBH[(1425:1975)-999,"MBH98SmoothTrick"],na.rm=TRUE)<br />
	      # -0.000729800  0.001258341</p>
<p># no trick<br />
#out98nt=flipud(filter(B98,A98,flipud([filter(B98,A98,[in98;zeros(115,1)])]))); %..then smooth<br />
#out98nt=out98nt(1:596);<br />
#out98ntr=out98nt(26:576); % smoothed reconstruction without the trick</p>
<p>	out98nt=flipud(filter(B98,A98, flipud( c(filter(B98,A98,  c(in98,rep(0,115)) )) ))); #..then smooth<br />
	out98nt=ts(out98nt[1:596],start=1400)<br />
	out98ntr=ts( out98nt[26:576],start=1425) # % smoothed reconstruction with the trick</p>
<p>	range( out98ntr -MBH[(1425:1975)-999,"MBH98SmoothNoTrick"],na.rm=TRUE)<br />
	      # -5.796738e-05  1.489949e-04</p>
<p>#% read image, <a href="http://uc00.files.wordpress.com/2010/05/mbh985b.png" rel="nofollow">http://uc00.files.wordpress.com/2010/05/mbh985b.png</a><br />
#A=imread(&#8216;mbh985b.png&#8217;); % from MBH98, copied for scientific purposes<br />
#XS=1.1691; % x-scale<br />
#YS=-365.7848; % y-scale<br />
#XB=-1.5749e+003; % x-bias<br />
#YB=281.8316; % y-bias<br />
#Year=(1400:1995)&#8217;;<br />
#close all<br />
#image(A)</p>
<p>	library(png)<br />
	download.file(&#8220;http://uc00.files.wordpress.com/2010/05/mbh985b.png&#8221;,&#8221;temp.png&#8221;,mode=&#8221;wb&#8221;)<br />
	img=readPNG(&#8220;temp.png&#8221;)<br />
	dim(img)<br />
	  #610 781   3</p>
<p>	XS=1.1691; # % x-scale<br />
	YS=-365.7848; #% y-scale<br />
	XB=-1.5749e+003;# % x-bias<br />
	YB=281.8316;# % y-bias<br />
	Year=(1400:1995);</p>
<p>library(grDevices)<br />
	par(mar=c(0,0,0,0))<br />
	par(bg=&#8221;lightblue&#8221;)<br />
	plot(MBH[,1],xlim=c(1300,2025),ylim=c(-.8,.5),type=&#8221;n&#8221;,xaxs=&#8221;i&#8221;,axes=FALSE)<br />
	rasterImage(img , 1320, -.65, 2025, .5)<br />
	lines(1275+(Year-1300)*1.05,out98nt*.7-.03,col=3,lwd=1)<br />
	lines(1275+(Year-1300)*1.05,out98t*.7-.03,col=2,lwd=1)</p>
<p>	#temp=Year&gt;=1980<br />
	#lines(1275+(Year[temp]-1300)*1.05,out98t[temp]*.7-.03,col=2,lwd=2)<br />
	temp=Year&gt;=1940<br />
	lines(1275+(Year[temp]-1300)*1.05,out98nt[temp]*.7-.03,col=&#8221;yellow&#8221;,lwd=2)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: The Trick Timeline &#171; Climate Audit</title>
		<link>http://climateaudit.org/2010/04/01/code-the-trick/#comment-233680</link>
		<dc:creator><![CDATA[The Trick Timeline &#171; Climate Audit]]></dc:creator>
		<pubDate>Thu, 01 Jul 2010 16:21:48 +0000</pubDate>
		<guid isPermaLink="false">http://climateaudit.org/?p=10940#comment-233680</guid>
		<description><![CDATA[[...] Fools, here&#8217;s the turn-key(*) [...]]]></description>
		<content:encoded><![CDATA[<p>[...] Fools, here&#8217;s the turn-key(*) [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sauli Särkkä</title>
		<link>http://climateaudit.org/2010/04/01/code-the-trick/#comment-229929</link>
		<dc:creator><![CDATA[Sauli Särkkä]]></dc:creator>
		<pubDate>Fri, 14 May 2010 20:14:19 +0000</pubDate>
		<guid isPermaLink="false">http://climateaudit.org/?p=10940#comment-229929</guid>
		<description><![CDATA[You might just have to open that up to people. Just the source files and and the results with anything notable to see would be great.

If there were a single line at the start, stating &quot;this is the code that fooled the world&quot; might make a difference, but that&#039;s something that one won&#039;t be looking for. The problem, as it has always been, is usually a touch more subtle.


-Sale]]></description>
		<content:encoded><![CDATA[<p>You might just have to open that up to people. Just the source files and and the results with anything notable to see would be great.</p>
<p>If there were a single line at the start, stating &#8220;this is the code that fooled the world&#8221; might make a difference, but that&#8217;s something that one won&#8217;t be looking for. The problem, as it has always been, is usually a touch more subtle.</p>
<p>-Sale</p>
]]></content:encoded>
	</item>
</channel>
</rss>
