In our recent discussion of Dessler v Spencer, UC raised monthly centering as an issue in respect to the regressions of TOA flux against temperature. Monthly centering is standard practice in this branch of climate science (e.g. Forster and Gregory 2006, Dessler 2010), where it is done without any commentary or justification. But such centering is not something that is lightly done in time series statistics. (Statisticians try to delay or avoid this sort of operation as much as possible.)
When you think about it, it’s not at all obvious that the data should be centered on each month. I agree with the direction that UC is pointing to – a proper statistical analysis should show the data and results without monthly centering to either verify that the operation of monthly centering doesn’t affect results or that its impact on results has a physical explanation (as opposed to being an artifact of the monthly centering operation.)
In order to carry out the exercise, I’ve used AMSU data because it is expressed in absolute temperatures. I’ve experimented with AMSU data at several levels, but will first show the results from channel 4 (600 mb) because they seem quite striking to me and because troposphere temperatures seem like a sensible index of temperature for comparing to TOA flux (since much TOA flux originates from the atmosphere rather than the surface.)
In the graphic below, the left panel plots the CERES TOA Net flux (EBAF monthly version) against monthly AMSU channel 4 temperatures. (Monthly averages are my calculation.) The right panel shows the same data plotted as monthly anomalies. (HadCRU, used in some of the regression studies, uses monthly anomalies.) The red dotted line shows the slope of the regression of flux~temperature, while the black dotted line shows a line with a slope of 3.3 (chosen to show a relationship of 3.3 wm-2/K). Take a look – more comments below.

Figure 1. CERES TOA Net Upward Flux (EBAF) vs AMSU Channel 4 (600 mb) Temperature. Left – Absolute; right – monthly anomaly.
The differences between regressions before and after monthly centering are dramatic, to say the least.
Considering absolute values (left) first. Unlike the Mannian r2 of 0.018 of Dessler 2010, the relationship between TOA flux and 600 mb temperature is very strong (r2 of 0.79). TOA flux is net downward when 600 mb temperature is at a minimum (Jan – northern winter/southern summer) and is net upward in northern summer (July) when global 600 mb temperature is at its maximum.
The slope of the regression line is 7.7 wm-2/K (slopes greater than 3.3 wm-2/K are said to indicate negative feedback.) There is an interesting figure-eight shape as a secondary but significant feature. This residual has 4 zeros during the year – which suggests to me that it is related to the tropics (where incoming solar radiation has a 6-month cycle maxing at the equinoxes, with the spring equinox stronger than the fall equinox.)
In “ordinary” statistics, statisticians try to fit things with as few parameters as possible. In this case, a linear regression gives an excellent fit and, with a little experimenting, a linear regression plus a cyclical term with a 6-month period would give an even better fit. There doesn’t seem to be any statistical “need” to take monthly centering in order to get a useful statistical model.
Now let’s look at the regression after monthly centering – shown on the same scale. Visually it appears that the operation of monthly centering has damaged the statistical relationship. The r^2 has been decreased to 0.41 – still much higher than the r^2 of Dessler 2010. (The relationship between TOA flux and 600 mb temperatures appears to be stronger than the corresponding relationship with surface temperatures, especially HadCRU.)
Interestingly, the slope of the regression line is now 2.6 wm-2/K i.e. showing positive feedback.
I’ve done experiments comparing AMSU 600 mb to AMSU SST and both to HadCRU. The results are interesting and will be covered on another occasion.
In the meantime, the marked difference between regression results before and after taking monthly centering surely warrants reflection.
I try to avoid speculations on physics since I’ve not parsed the relevant original materials, but, suspending this policy momentarily, I find it hard to visualize a physical theory in which the governing relationship is between monthly anomalies as opposed to absolute temperature. Yes, the relationship between absolute quantities still leaves residuals with a seasonal cycle, but it would be much preferable in statistical terms (and presumably physical terms) to explain the seasonal cycle in residuals in some sort of physical way, rather than monthly centering of both quantities (24 parameters!).
If there is a “good” reason for monthly centering, the reasons should be stated explicitly and justified in the academic articles (Forster and Gregory 2006, Dessler 2010) rather than being merely assumed – as appears to have happened here. Perhaps there is a “good” reason and we’ll all learn something.
In the meantime, I think that we can reasonably add monthly centering to the list of questions surrounding the validity of statistical analyses purporting to show positive feedbacks from the relationship of TOA flux to temperatures. (Other issues include the replacement of CERES clear sky with ERA clear sky and the effect of leads/lags on Dessler-style regressions.)
I suspect that it may be more important than the other two issues. We’ll see.
PS – there are many interesting aspects to the annual story in the figure shown above. The maximum annual inbound flux is in the northern winter (Jan) and the minimum is in the northern summer – the difference is over 20 wm-2, large enough to be interesting. The annual cycle of outbound flux and GLB temperature reaches a maximum in the opposite season to the one that would expect from the annual cycle of inbound flux. I presume that this is because of the greater proportion of land in the NH as Troy observed. In effect, energy accumulates in the SH summer and dissipates in the NH summer. An interesting asymmetry.
Note: AMSU daily information is at http://discover.itsc.uah.edu/amsutemps/. I’ve uploaded scripts that scrape the daily information from this site for all levels and collate into monthly averages. See script below. My collation of monthly data is also uploaded.
source(“http://www.climateaudit.info/scripts/satellite/amsu.txt”)
amsu=makef()
amsum=make_monthly(amsu)
download.file(“http://www.climateaudit.info/data/satellite/amsu_monthly.tab”,”temp”,mode=”wb”)
load(“temp”)
amsum=amsu_monthly
The CERES data used here is the EBAF version from downloaded from http://ceres-tool.larc.nasa.gov/ord-tool/jsp/EBAFSelection.jsp as ncdf file getting TOA parameters. Collated into time series and placed at CA:
download.file(“http://www.climateaudit.info/data/ceres/ebaf.tab”,”temp”,mode=”wb”)
load(“temp”); tsp(ebaf)
The graphic is produced by:
A=ts.union( ceres=-ebaf[,”net_all”],amsu=amsum[,”600″], ceresn=anom(-ebaf[,”net_all”]),amsun=anom(amsum[,”600″]))
month= factor( round(1/24+time(A)%%1,2))
A=data.frame(A) #reverse sign by convention
A$month=month
nx= data.frame(sapply(A[,1:2], function(x) tapply(x,month,mean,na.rm=T) ) )
# if (tag) png(file=”d:/climate/images/2011/spencer/ceres_v_amsu600.png”,h=480,w=600)
layout(array(1:2,dim=c(1,2) ) )
plot(ceres~amsu,A ,xlab=”AMSU 600 mb deg C”,ylab=”Flux Out wm-2″,ylim=c(-10,10),xlim=c(251.5,255),xaxs=”i”,yaxs=”i”)
lines(A$amsu,A$ceres )
points(nx$amsu,nx$ceres,pch=19,col=2)
title(“Before Monthly Normal”)
for(i in 1:11) arrows( x0=nx$amsu[i],y0=nx$ceres[i],x1=nx$amsu[i+1],y1=nx$ceres[i+1], lwd=2,length=.1,col=2)
i=12; arrows( x0=nx$amsu[i],y0=nx$ceres[i],x1=nx$amsu[1],y1=nx$ceres[1], lwd=2,length=.1,col=2)
text( nx$amsu[1],nx$ceres[1],font=2,col=2, “Jan”,pos=2)
text( nx$amsu[7],nx$ceres[7],font=2,col=2, “Jul”,pos=4)
abline(h=0,lty=3)
fm=lm(ceres~amsu,A); summary(fm)
round(fm$coef,3)
a=c(250,255);b=fm$coef
lines(a,fm$coef[1]+a*fm$coef[2],col=2,lty=3,lwd=2)
abline( 3.3* b[1]/b[2], 3.3,lty=3)
text(251.5,9,paste(“Slope:”, round(fm$coef[2],2)),pos=4,col=2,font=2)
plot(ceresn~amsun,A ,xlab=”AMSU 600 mb deg C”,ylab=”Flux Out wm-2″,ylim=c(-10,10),xlim=c(-1.75,1.75),xaxs=”i”,yaxs=”i”)
lines(A$amsun,A$ceresn )
title(“After Monthly Normal”)
abline(h=0,lty=3)
fmn=lm(ceresn~amsun,A); summary(fmn)
round(fmn$coef,3) # 2.607
a=c(-2,2);b=fmn$coef
lines(a,b[1]+a*b[2],col=2,lty=3,lwd=2)
abline(0,3.3,lty=2)
text(-1.5,9,paste(“Slope:”, round(fmn$coef[2],2)),pos=4,col=2,font=2)