Climategate: hide the decline – codified

WUWT blogging ally Ecotretas writes in to say that he has made a compendium of programming code segments that show comments by the programmer that suggest places where data may be corrected, modified, adjusted, or busted. Some the  HARRY_READ_ME comments are quite revealing. For those that don’t understand computer programming, don’t fret, the comments by the programmer tell the story quite well even if the code itself makes no sense to you.

http://codyssey.files.wordpress.com/2009/02/software_bug.jpg

To say that the CRU code might be “buggy” would be…well I’ll just let CRU’s programmer tell you in his own words.

  • FOIA\documents\osborn-tree6\mann\oldprog\maps12.proFOIA\documents\osborn-tree6\mann\oldprog\maps15.proFOIA\documents\osborn-tree6\mann\oldprog\maps24.pro; Plots 24 yearly maps of calibrated (PCR-infilled or not) MXD reconstructions

    ; of growing season temperatures. Uses "corrected" MXD - but shouldn't usually

    ; plot past 1960 because these will be artificially adjusted to look closer to

    ; the real temperatures.

  • FOIA\documents\harris-tree\recon_esper.pro; Computes regressions on full, high and low pass Esper et al. (2002) series,

    ; anomalies against full NH temperatures and other series.

    ; CALIBRATES IT AGAINST THE LAND-ONLY TEMPERATURES NORTH OF 20 N

    ;

    ; Specify period over which to compute the regressions (stop in 1960 to avoid

    ; the decline

  • FOIA\documents\harris-tree\calibrate_nhrecon.pro;

    ; Specify period over which to compute the regressions (stop in 1960 to avoid

    ; the decline that affects tree-ring density records)

    ;

  • FOIA\documents\harris-tree\recon1.pro

    FOIA\documents\harris-tree\recon2.proFOIA\documents\harris-tree\recon_jones.pro;

    ; Specify period over which to compute the regressions (stop in 1940 to avoid

    ; the decline

    ;

  • FOIA\documents\HARRY_READ_ME.txt17. Inserted debug statements into anomdtb.f90, discovered that

    a sum-of-squared variable is becoming very, very negative! Key

    output from the debug statements:

    (..)

    forrtl: error (75): floating point exception

    IOT trap (core dumped)

    ..so the data value is unbfeasibly large, but why does the

    sum-of-squares parameter OpTotSq go negative?!!

  • FOIA\documents\HARRY_READ_ME.txt22. Right, time to stop pussyfooting around the niceties of Tim's labyrinthine software

    suites - let's have a go at producing CRU TS 3.0! since failing to do that will be the

    definitive failure of the entire project..

  • FOIA\documents\HARRY_READ_ME.txtgetting seriously fed up with the state of the Australian data. so many new stations have been

    introduced, so many false references.. so many changes that aren't documented. Every time a

    cloud forms I'm presented with a bewildering selection of similar-sounding sites, some with

    references, some with WMO codes, and some with both. And if I look up the station metadata with

    one of the local references, chances are the WMO code will be wrong (another station will have

    it) and the lat/lon will be wrong too.

  • FOIA\documents\HARRY_READ_ME.txtI am very sorry to report that the rest of the databases seem to be in nearly as poor a state as

    Australia was. There are hundreds if not thousands of pairs of dummy stations, one with no WMO

    and one with, usually overlapping and with the same station name and very similar coordinates. I

    know it could be old and new stations, but why such large overlaps if that's the case? Aarrggghhh!

    There truly is no end in sight.

  • FOIA\documents\HARRY_READ_ME.txt28. With huge reluctance, I have dived into 'anomdtb' - and already I have

    that familiar Twilight Zone sensation.

  • FOIA\documents\HARRY_READ_ME.txtWrote 'makedtr.for' to tackle the thorny problem of the tmin and tmax databases not

    being kept in step. Sounds familiar, if worrying. am I the first person to attempt

    to get the CRU databases in working order?!!

  • FOIA\documents\HARRY_READ_ME.txtWell, dtr2cld is not the world's most complicated program. Wheras cloudreg is, and I

    immediately found a mistake! Scanning forward to 1951 was done with a loop that, for

    completely unfathomable reasons, didn't include months! So we read 50 grids instead

    of 600!!! That may have had something to do with it. I also noticed, as I was correcting

    THAT, that I reopened the DTR and CLD data files when I should have been opening the

    bloody station files!!

  • FOIA\documents\HARRY_READ_ME.txtBack to the gridding. I am seriously worried that our flagship gridded data product is produced by

    Delaunay triangulation - apparently linear as well. As far as I can see, this renders the station

    counts totally meaningless. It also means that we cannot say exactly how the gridded data is arrived

    at from a statistical perspective - since we're using an off-the-shelf product that isn't documented

    sufficiently to say that. Why this wasn't coded up in Fortran I don't know - time pressures perhaps?

    Was too much effort expended on homogenisation, that there wasn't enough time to write a gridding

    procedure? Of course, it's too late for me to fix it too. Meh.

  • FOIA\documents\HARRY_READ_ME.txtHere, the expected 1990-2003 period is MISSING - so the correlations aren't so hot! Yet

    the WMO codes and station names /locations are identical (or close). What the hell is

    supposed to happen here? Oh yeah - there is no 'supposed', I can make it up. So I have :-)

  • FOIA\documents\HARRY_READ_ME.txtWell, it's been a real day of revelations, never mind the week. This morning I

    discovered that proper angular weighted interpolation was coded into the IDL

    routine, but that its use was discouraged because it was slow! Aaarrrgghh.

    There is even an option to tri-grid at 0.1 degree resolution and then 'rebin'

    to 720x360 - also deprecated! And now, just before midnight (so it counts!),

    having gone back to the tmin/tmax work, I've found that most if not all of the

    Australian bulletin stations have been unceremoniously dumped into the files

    without the briefest check for existing stations.

  • FOIA\documents\HARRY_READ_ME.txtAs we can see, even I'm cocking it up! Though recoverably. DTR, TMN and TMX need to be written as (i7.7)./code>
  • FOIA\documents\HARRY_READ_ME.txtOH FUCK THIS. It's Sunday evening, I've worked all weekend, and just when I thought it was done I'm

    hitting yet another problem that's based on the hopeless state of our databases. There is no uniform

    data integrity, it's just a catalogue of issues that continues to grow as they're found.

  • FOIA\documents\osborn-tree6\mann\mxdgrid2ascii.proprintf,1,’Osborn et al. (2004) gridded reconstruction of warm-season’

    printf,1,’(April-September) temperature anomalies (from the 1961-1990 mean).’

    printf,1,’Reconstruction is based on tree-ring density records.’

    printf,1

    printf,1,’NOTE: recent decline in tree-ring density has been ARTIFICIALLY

    printf,1,’REMOVED to facilitate calibration. THEREFORE, post-1960 values’

    printf,1,’will be much closer to observed temperatures then they should be,’

    printf,1,’which will incorrectly imply the reconstruction is more skilful’

    printf,1,’than it actually is. See Osborn et al. (2004).’

  • FOIA\documents\osborn-tree6\summer_modes\data4sweden.pro

    FOIA\documents\osborn-tree6\summer_modes\data4sweden.proprintf,1,'IMPORTANT NOTE:'

    printf,1,'The data after 1960 should not be used. The tree-ring density'

    printf,1,'records tend to show a decline after 1960 relative to the summer'

    printf,1,'temperature in many high-latitude locations. In this data set'

    printf,1,'this "decline" has been artificially removed in an ad-hoc way, and'

    printf,1,'this means that data after 1960 no longer represent tree-ring

    printf,1,'density variations, but have been modified to look more like the

    printf,1,'observed temperatures.'

  • FOIA\documents\osborn-tree6\combined_wavelet_col.pro;

    ; Remove missing data from start & end (end in 1960 due to decline)

    ;

    kl=where((yrmxd ge 1402) and (yrmxd le 1960),n)

    sst=prednh(kl)

  • FOIA\documents\osborn-tree6\mann\mxd_pcr_localtemp.pro; Tries to reconstruct Apr-Sep temperatures, on a box-by-box basis, from the

    ; EOFs of the MXD data set. This is PCR, although PCs are used as predictors

    ; but not as predictands. This PCR-infilling must be done for a number of

    ; periods, with different EOFs for each period (due to different spatial

    ; coverage). *BUT* don’t do special PCR for the modern period (post-1976),

    ; since they won’t be used due to the decline/correction problem.

    ; Certain boxes that appear to reconstruct well are “manually” removed because

    ; they are isolated and away from any trees.

  • FOIA\documents\osborn-tree6\briffa_sep98_d.pro;mknormal,yyy,timey,refperiod=[1881,1940]

    ;

    ; Apply a VERY ARTIFICAL correction for decline!!

    ;

    yrloc=[1400,findgen(19)*5.+1904]

    valadj=[0.,0.,0.,0.,0.,-0.1,-0.25,-0.3,0.,-0.1,0.3,0.8,1.2,1.7,2.5,2.6,2.6,$

    2.6,2.6,2.6]*0.75 ; fudge factor

    (...)

    ;

    ; APPLY ARTIFICIAL CORRECTION

    ;

    yearlyadj=interpol(valadj,yrloc,x)

    densall=densall+yearlyadj

  • FOIA\documents\osborn-tree6\summer_modes\pl_decline.pro;

    ; Plots density ‘decline’ as a time series of the difference between

    ; temperature and density averaged over the region north of 50N,

    ; and an associated pattern in the difference field.

    ; The difference data set is computed using only boxes and years with

    ; both temperature and density in them – i.e., the grid changes in time.

    ; The pattern is computed by correlating and regressing the *filtered*

    ; time series against the unfiltered (or filtered) difference data set.

    ;

    ;*** MUST ALTER FUNCT_DECLINE.PRO TO MATCH THE COORDINATES OF THE

    ; START OF THE DECLINE *** ALTER THIS EVERY TIME YOU CHANGE ANYTHING ***

  • FOIA\documents\osborn-tree6\mann\oldprog\maps12.pro;

    ; Plots 24 yearly maps of calibrated (PCR-infilled or not) MXD reconstructions

    ; of growing season temperatures. Uses “corrected” MXD – but shouldn’t usually

    ; plot past 1960 because these will be artificially adjusted to look closer to

    ; the real temperatures.

    ;

  • FOIA\documents\osborn-tree6\mann\oldprog\calibrate_correctmxd.pro; We have previously (calibrate_mxd.pro) calibrated the high-pass filtered

    ; MXD over 1911-1990, applied the calibration to unfiltered MXD data (which

    ; gives a zero mean over 1881-1960) after extending the calibration to boxes

    ; without temperature data (pl_calibmxd1.pro). We have identified and

    ; artificially removed (i.e. corrected) the decline in this calibrated

    ; data set. We now recalibrate this corrected calibrated dataset against

    ; the unfiltered 1911-1990 temperature data, and apply the same calibration

    ; to the corrected and uncorrected calibrated MXD data.

  • FOIA\documents\osborn-tree6\summer_modes\calibrate_correctmxd.pro; No need to verify the correct and uncorrected versions, since these

    ; should be identical prior to 1920 or 1930 or whenever the decline

    ; was corrected onwards from.

  • FOIA\documents\osborn-tree5\densplus188119602netcdf.pro; we know the file starts at yr 440, but we want nothing till 1400, so we

    ; can skill lines (1400-440)/10 + 1 header line

    ; we now want all lines (10 yr per line) from 1400 to 1980, which is

    ; (1980-1400)/10 + 1 lines

    (...)

    ; we know the file starts at yr 1070, but we want nothing till 1400, so we

    ; can skill lines (1400-1070)/10 + 1 header line

    ; we now want all lines (10 yr per line) from 1400 to 1991, which is

    ; (1990-1400)/10 + 1 lines (since 1991 is on line beginning 1990)

  • FOIA\documents\osborn-tree6\mann\oldprog\maps12.pro

    FOIA\documents\osborn-tree6\mann\oldprog\maps15.pro

    FOIA\documents\osborn-tree6\mann\oldprog\maps24.pro

    ; Plots 24 yearly maps of calibrated (PCR-infilled or not) MXD reconstructions

    ; of growing season temperatures. Uses "corrected" MXD - but shouldn't usually

    ; plot past 1960 because these will be artificially adjusted to look closer to

    ; the real temperatures.

  • FOIA\documents\harris-tree\recon_esper.pro

    ; Computes regressions on full, high and low pass Esper et al. (2002) series,

    ; anomalies against full NH temperatures and other series.

    ; CALIBRATES IT AGAINST THE LAND-ONLY TEMPERATURES NORTH OF 20 N

    ;

    ; Specify period over which to compute the regressions (stop in 1960 to avoid

    ; the decline

  • FOIA\documents\harris-tree\calibrate_nhrecon.pro

    ;

    ; Specify period over which to compute the regressions (stop in 1960 to avoid

    ; the decline that affects tree-ring density records)

    ;

  • FOIA\documents\harris-tree\recon1.pro

    FOIA\documents\harris-tree\recon2.proFOIA\documents\harris-tree\recon_jones.pro

    ;

    ; Specify period over which to compute the regressions (stop in 1940 to avoid

    ; the decline

    ;

  • FOIA\documents\HARRY_READ_ME.txt

    17. Inserted debug statements into anomdtb.f90, discovered that

    a sum-of-squared variable is becoming very, very negative! Key

    output from the debug statements:

    (..)

    forrtl: error (75): floating point exception

    IOT trap (core dumped)

    ..so the data value is unbfeasibly large, but why does the

    sum-of-squares parameter OpTotSq go negative?!!

  • FOIA\documents\HARRY_READ_ME.txt

    22. Right, time to stop pussyfooting around the niceties of Tim's labyrinthine software

    suites - let's have a go at producing CRU TS 3.0! since failing to do that will be the

    definitive failure of the entire project..

  • FOIA\documents\HARRY_READ_ME.txt

    getting seriously fed up with the state of the Australian data. so many new stations have been

    introduced, so many false references.. so many changes that aren't documented. Every time a

    cloud forms I'm presented with a bewildering selection of similar-sounding sites, some with

    references, some with WMO codes, and some with both. And if I look up the station metadata with

    one of the local references, chances are the WMO code will be wrong (another station will have

    it) and the lat/lon will be wrong too.

  • FOIA\documents\HARRY_READ_ME.txt

    I am very sorry to report that the rest of the databases seem to be in nearly as poor a state as

    Australia was. There are hundreds if not thousands of pairs of dummy stations, one with no WMO

    and one with, usually overlapping and with the same station name and very similar coordinates. I

    know it could be old and new stations, but why such large overlaps if that's the case? Aarrggghhh!

    There truly is no end in sight.

  • FOIA\documents\HARRY_READ_ME.txt

    28. With huge reluctance, I have dived into 'anomdtb' - and already I have

    that familiar Twilight Zone sensation.

  • FOIA\documents\HARRY_READ_ME.txt

    Wrote 'makedtr.for' to tackle the thorny problem of the tmin and tmax databases not

    being kept in step. Sounds familiar, if worrying. am I the first person to attempt

    to get the CRU databases in working order?!!

  • FOIA\documents\HARRY_READ_ME.txt

    Well, dtr2cld is not the world's most complicated program. Wheras cloudreg is, and I

    immediately found a mistake! Scanning forward to 1951 was done with a loop that, for

    completely unfathomable reasons, didn't include months! So we read 50 grids instead

    of 600!!! That may have had something to do with it. I also noticed, as I was correcting

    THAT, that I reopened the DTR and CLD data files when I should have been opening the

    bloody station files!!

  • FOIA\documents\HARRY_READ_ME.txt

    Back to the gridding. I am seriously worried that our flagship gridded data product is produced by

    Delaunay triangulation - apparently linear as well. As far as I can see, this renders the station

    counts totally meaningless. It also means that we cannot say exactly how the gridded data is arrived

    at from a statistical perspective - since we're using an off-the-shelf product that isn't documented

    sufficiently to say that. Why this wasn't coded up in Fortran I don't know - time pressures perhaps?

    Was too much effort expended on homogenisation, that there wasn't enough time to write a gridding

    procedure? Of course, it's too late for me to fix it too. Meh.

  • FOIA\documents\HARRY_READ_ME.txt

    Here, the expected 1990-2003 period is MISSING - so the correlations aren't so hot! Yet

    the WMO codes and station names /locations are identical (or close). What the hell is

    supposed to happen here? Oh yeah - there is no 'supposed', I can make it up. So I have :-)

  • FOIA\documents\HARRY_READ_ME.txt

    Well, it's been a real day of revelations, never mind the week. This morning I

    discovered that proper angular weighted interpolation was coded into the IDL

    routine, but that its use was discouraged because it was slow! Aaarrrgghh.

    There is even an option to tri-grid at 0.1 degree resolution and then 'rebin'

    to 720x360 - also deprecated! And now, just before midnight (so it counts!),

    having gone back to the tmin/tmax work, I've found that most if not all of the

    Australian bulletin stations have been unceremoniously dumped into the files

    without the briefest check for existing stations.

  • FOIA\documents\HARRY_READ_ME.txt

    As we can see, even I'm cocking it up! Though recoverably. DTR, TMN and TMX need to be written as (i7.7)./code>

  • FOIA\documents\HARRY_READ_ME.txt

    OH FUCK THIS. It's Sunday evening, I've worked all weekend, and just when I thought it was done I'm

    hitting yet another problem that's based on the hopeless state of our databases. There is no uniform

    data integrity, it's just a catalogue of issues that continues to grow as they're found.

  • FOIA\documents\osborn-tree6\mann\mxdgrid2ascii.pro

    printf,1,’Osborn et al. (2004) gridded reconstruction of warm-season’

    printf,1,’(April-September) temperature anomalies (from the 1961-1990 mean).’

    printf,1,’Reconstruction is based on tree-ring density records.’

    printf,1

    printf,1,’NOTE: recent decline in tree-ring density has been ARTIFICIALLY

    printf,1,’REMOVED to facilitate calibration. THEREFORE, post-1960 values’

    printf,1,’will be much closer to observed temperatures then they should be,’

    printf,1,’which will incorrectly imply the reconstruction is more skilful’

    printf,1,’than it actually is. See Osborn et al. (2004).’

  • FOIA\documents\osborn-tree6\summer_modes\data4sweden.pro

    FOIA\documents\osborn-tree6\summer_modes\data4sweden.pro

    printf,1,'IMPORTANT NOTE:'

    printf,1,'The data after 1960 should not be used. The tree-ring density'

    printf,1,'records tend to show a decline after 1960 relative to the summer'

    printf,1,'temperature in many high-latitude locations. In this data set'

    printf,1,'this "decline" has been artificially removed in an ad-hoc way, and'

    printf,1,'this means that data after 1960 no longer represent tree-ring

    printf,1,'density variations, but have been modified to look more like the

    printf,1,'observed temperatures.'

  • FOIA\documents\osborn-tree6\combined_wavelet_col.pro

    ;

    ; Remove missing data from start & end (end in 1960 due to decline)

    ;

    kl=where((yrmxd ge 1402) and (yrmxd le 1960),n)

    sst=prednh(kl)

  • FOIA\documents\osborn-tree6\mann\mxd_pcr_localtemp.pro

    ; Tries to reconstruct Apr-Sep temperatures, on a box-by-box basis, from the

    ; EOFs of the MXD data set. This is PCR, although PCs are used as predictors

    ; but not as predictands. This PCR-infilling must be done for a number of

    ; periods, with different EOFs for each period (due to different spatial

    ; coverage). *BUT* don’t do special PCR for the modern period (post-1976),

    ; since they won’t be used due to the decline/correction problem.

    ; Certain boxes that appear to reconstruct well are “manually” removed because

    ; they are isolated and away from any trees.

  • FOIA\documents\osborn-tree6\briffa_sep98_d.pro;mknormal,yyy,timey,refperiod=[1881,1940]

    ;

    ; Apply a VERY ARTIFICAL correction for decline!!

    ;

    yrloc=[1400,findgen(19)*5.+1904]

    valadj=[0.,0.,0.,0.,0.,-0.1,-0.25,-0.3,0.,-0.1,0.3,0.8,1.2,1.7,2.5,2.6,2.6,$

    2.6,2.6,2.6]*0.75 ; fudge factor

    (...)

    ;

    ; APPLY ARTIFICIAL CORRECTION

    ;

    yearlyadj=interpol(valadj,yrloc,x)

    densall=densall+yearlyadj

  • FOIA\documents\osborn-tree6\summer_modes\pl_decline.pro

    ;

    ; Plots density ‘decline’ as a time series of the difference between

    ; temperature and density averaged over the region north of 50N,

    ; and an associated pattern in the difference field.

    ; The difference data set is computed using only boxes and years with

    ; both temperature and density in them – i.e., the grid changes in time.

    ; The pattern is computed by correlating and regressing the *filtered*

    ; time series against the unfiltered (or filtered) difference data set.

    ;

    ;*** MUST ALTER FUNCT_DECLINE.PRO TO MATCH THE COORDINATES OF THE

    ; START OF THE DECLINE *** ALTER THIS EVERY TIME YOU CHANGE ANYTHING ***

  • FOIA\documents\osborn-tree6\mann\oldprog\maps12.pro

    ;

    ; Plots 24 yearly maps of calibrated (PCR-infilled or not) MXD reconstructions

    ; of growing season temperatures. Uses “corrected” MXD – but shouldn’t usually

    ; plot past 1960 because these will be artificially adjusted to look closer to

    ; the real temperatures.

    ;

  • FOIA\documents\osborn-tree6\mann\oldprog\calibrate_correctmxd.pro

    ; We have previously (calibrate_mxd.pro) calibrated the high-pass filtered

    ; MXD over 1911-1990, applied the calibration to unfiltered MXD data (which

    ; gives a zero mean over 1881-1960) after extending the calibration to boxes

    ; without temperature data (pl_calibmxd1.pro). We have identified and

    ; artificially removed (i.e. corrected) the decline in this calibrated

    ; data set. We now recalibrate this corrected calibrated dataset against

    ; the unfiltered 1911-1990 temperature data, and apply the same calibration

    ; to the corrected and uncorrected calibrated MXD data.

  • FOIA\documents\osborn-tree6\summer_modes\calibrate_correctmxd.pro

    ; No need to verify the correct and uncorrected versions, since these

    ; should be identical prior to 1920 or 1930 or whenever the decline

    ; was corrected onwards from.

  • FOIA\documents\osborn-tree5\densplus188119602netcdf.pro

    ; we know the file starts at yr 440, but we want nothing till 1400, so we

    ; can skill lines (1400-440)/10 + 1 header line

    ; we now want all lines (10 yr per line) from 1400 to 1980, which is

    ; (1980-1400)/10 + 1 lines

    (...)

    ; we know the file starts at yr 1070, but we want nothing till 1400, so we

    ; can skill lines (1400-1070)/10 + 1 header line

    ; we now want all lines (10 yr per line) from 1400 to 1991, which is

    ; (1990-1400)/10 + 1 lines (since 1991 is on line beginning 1990)


Sponsored IT training links:

Join 70-291 training program to pass 642-446 test plus get free practice files for next 70-643 exam.


Get notified when a new post is published.
Subscribe today!
5 2 votes
Article Rating
445 Comments
Inline Feedbacks
View all comments
jerrym
November 26, 2009 6:59 pm

Eric,
IIRC, there’s a big question as to whether the tree ring proxies are even valid for temperature up to 1960. And what the heck are people doing when they slap real world temperatures on top of questionable extrapolated temps up to 1960?
And what exactly do you mean by “there’s no data integrity indexes”? That sounds not-quite-kosher.

Glenn
November 26, 2009 7:02 pm

Eric (18:27:41) :
“And by the way, the statistical methods they are using require data sets from two different methodologies to be processed separately. That’s exactly what they’re doing when they ’scrub’ the data past 1960. They are reconciling data gotten from atmospheric temperature readings with data gotten from tree ring readings. They are then splicing the two graphs together. It’s not a fraud, guys. It’s ridiculous to assume that.”
I’d say you’re a troll, and that is a ridiculously lame attempt to defend the graph.
****Moderator****, could you check to see if this is the same Eric who posts here, such as:
From Eric (13:05:27) :
“There is no exaggeration in the above statement. No need for it. It is absolutely unbelievable to me that this crap was published.”

John M
November 26, 2009 7:32 pm

makomk (12:14:58) :

There are many different combinations of 5 rural stations that could be used.

I see, so when you said
<…if someone really wanted to retest the calculations, the correct method is to take the raw results and write their own software.
you recognize that it’s critical that everyone be talking about the same stations.
Do you accept that CRU needs to tell everyone which specific stations they used?

Glenn
November 26, 2009 8:05 pm

John M (19:32:51) :
makomk (12:14:58) :
There are many different combinations of 5 rural stations that could be used.
I see, so when you said
<…if someone really wanted to retest the calculations, the correct method is to take the raw results and write their own software.
you recognize that it’s critical that everyone be talking about the same stations.
"Do you accept that CRU needs to tell everyone which specific stations they used?"
And the specific data the CUR used from them.

Brenda
November 26, 2009 8:15 pm

As a none too bright middle-aged woman who hasn’t had a science class since the 1970s I would like to thank everyone who has posted on this site. You have all helped me understand a little better what all of this means. I have read many on-line articles and comments over the last several days, but this has been the most helpful. Thanks.

John M
November 26, 2009 8:27 pm

Eric (18:27:41) :

They are then splicing the two graphs together.

Oh, I never get tired of doing this.

No researchers in this field have ever, to our knowledge, “grafted the thermometer record onto” any reconstruction. It is somewhat disappointing to find this specious claim (which we usually find originating from industry-funded climate disinformation websites) appearing in this forum.

Michael Mann, 2004

November 26, 2009 8:42 pm

I think we need a definition for Hide The Decline: http://gregvalcourt.wordpress.com/2009/11/26/hide-the-decline/

Glenn
November 26, 2009 11:32 pm

John M (20:27:02) :
Eric (18:27:41) :
They are then splicing the two graphs together.
“Oh, I never get tired of doing this.
No researchers in this field have ever, to our knowledge, “grafted the thermometer record onto” any reconstruction. It is somewhat disappointing to find this specious claim (which we usually find originating from industry-funded climate disinformation websites) appearing in this forum.
Michael Mann, 2004”
Splicing isn’t grafting – Michael Mann 2010

Yan
November 27, 2009 2:13 am

I am truly affraid they will move forward on sheer momentum at Coppenhaggen as someone mentioned.
Governments fails us all.
If the mainstream media does not cover this more that they have to this point, the masses will continue believing what they are told. A sad state of being.
But who cares right…that New Moon movie is out now, and that is so much more important than all this (waxing sarcastic!)
Please inform your friends, e-mail them, do anything to get the word out faster than our failing news institutions can.
Everyone should be made to know about this. Heads should roll.
Cheers to whoever leaked this, hacked this and released it!

Yan
November 27, 2009 2:22 am


Must watch!

Steve
November 27, 2009 4:35 am

I certainly found this amusing. Mr. Ian Harris, who was mentioned in a post above as a possible “Harry”, has his job desciption as “……. climate scenario development, data manipulation and visualisation, programming”. Maybe data manipulation is a standard term, but it gave me a chuckle anyhow.
http://www.cru.uea.ac.uk/cru/people/

Jonathan May-Bowles
November 27, 2009 4:43 am

As usual, I’m pointed to one of these sites as evidence of the ‘proof’ of a global warming fiddle… and find a string of irrelevant splodges of evidence.
If anyone can show me which of these comments is supposed to indicate fraud, rather than correcting for the divergence problem and other problems in multi-proxy analysis, post your result here:
http://anarchish.blogspot.com/2009/11/challenge/
And I will donate £50 to the charity, church or political organisation of your choice.

tom smith
November 27, 2009 5:24 am

the fumes coming out of my cars exhaust system still appears to be hot

matthew
November 27, 2009 10:18 am

Wow, admittedly i tend toward believing AGW, greenhouse effect, Climate Change, whatever you call it, but i come here and find:

“You guys are referencing COMMENTS in the source code, not the source code itself. As a software developer myself, it is plain to see the comments don’t indicate a fraud, they indicate frustration at the large data set and the fact there’s no data integrity indexes. This is not a smoking gun. It’s a bunch of software guys complaining about the database.”
I’ve seen no comments in the source code that indicates frustration with the database, plainly or otherwise. Certainly not in the code excerpts posted in this thread. I can only surmise that you are confusing the Harry text with code, which it is not, and which is not even the subject of this thread, bringing into question your claim of being a software developer, nor the same “Eric” that has posted previously in this thread.

Wow, so you’re saying that:
“OH FUCK THIS. It’s Sunday evening, I’ve worked all weekend, and just when I thought it was done I’m
hitting yet another problem that’s based on the hopeless state of our databases. There is no uniform
data integrity, it’s just a catalogue of issues that continues to grow as they’re found.”
does not “indicate frustration with the database” and that its source text is not being discussed here. That would put you in the category of liar along with AGW by the standards of this thread.
But the really great thing is this thread is so open-minded that the one opposite opinion gets shouted down straight away, called a troll and a fraud.
Ladies and Gentlemen, the defenders of free f**king speech!
Now i’m not saying that I think the views of this thread are wrong, in fact it seems to be backing up the view that the underlying theory of this simulation is incomplete at best. For what it’s worth, i think Eric has a point, but i would say that even accusations of poor programming are bit harsh. You guys are forgetting that programming well-defined problems like accounting and graphics packages is not the same as duplicating partially understood processes like large-scale climate (neither have i, but i’ve spent time trying to work through how one would simulate ecologies realistically, and it does not convert into easy classes and relationships).

John M
November 27, 2009 10:58 am

Jonathan May-Bowles (04:43:48) :

If anyone can show me which of these comments is supposed to indicate fraud, rather than correcting for the divergence problem and other problems in multi-proxy analysis, post your result here:

Can we agree on a definition of “fraud” first?
We can start with my trusty Merriam Webster’s Collegiate Dictionary, 10th Edition .

1 a: DECEIT, TRICKERY; specif: intentional perversion of truth in order to induce another to part with something of value or to surrender a legal right b: an act of deceiving or misrepresenting: TRICK 2 a: a person who is not what he or she pretends to be: IMPOSTOR: also : one who defrauds : CHEAT b: one that is not what it seems or is represented to be.

Since I assume you’re not referring to specific individuals when you say fraud (as in “they are frauds”), can we assume you’re comfortable with definition 1? My choice is 1 b, especially the synonym offered.

John M
November 27, 2009 11:02 am

Oh well, had a clever response to
Jonathan May-Bowles (04:43:48) :
but it seems to have disappeared (too many HTML commands maybe).
Turns out his URL is dead anyway.
“Sigh”

John M
November 27, 2009 11:02 am

Ahh there it is?
Ain’t it clever?

Glenn
November 27, 2009 1:02 pm

matthew (10:18:53) :
Wow, admittedly i tend toward believing AGW, greenhouse effect, Climate Change, whatever you call it, but i come here and find:

“You guys are referencing COMMENTS in the source code, not the source code itself. As a software developer myself, it is plain to see the comments don’t indicate a fraud, they indicate frustration at the large data set and the fact there’s no data integrity indexes. This is not a smoking gun. It’s a bunch of software guys complaining about the database.”
I’ve seen no comments in the source code that indicates frustration with the database, plainly or otherwise. Certainly not in the code excerpts posted in this thread. I can only surmise that you are confusing the Harry text with code, which it is not, and which is not even the subject of this thread, bringing into question your claim of being a software developer, nor the same “Eric” that has posted previously in this thread.

“Wow, so you’re saying that:
“OH FUCK THIS. It’s Sunday evening, I’ve worked all weekend, and just when I thought it was done I’m hitting yet another problem that’s based on the hopeless state of our databases. There is no uniform data integrity, it’s just a catalogue of issues that continues to grow as they’re found.”
does not “indicate frustration with the database” and that its source text is not being discussed here. That would put you in the category of liar along with AGW by the standards of this thread.”
**************************************
No, but that could easily put you in that category. Before you accuse another lying you should at least double check your facts.
“Source text” is not “source code”; “Harry” is not source code, nor is “Harry” comments in source code. I didn’t claim Harry did not indicate frustration with the database, and I didn’t say Harry wasn’t being discussed here. I said Harry wasn’t the subject of the thread, and it isn’t. The source code is the subject of the thread: “Hide the decline – codified”.
Go back to RC, where Gavin snips because “don’t put words in other peoples mouths”.

E.M.Smith
Editor
November 27, 2009 1:51 pm

John F. Hultquist (09:21:16) :
“a sum-of-squared variable is becoming very, very negative!”
This is an interesting “trick.” Has this issue been figured out yet?

Yes. I did, here:
http://chiefio.wordpress.com/2009/11/21/hadley-hack-and-cru-crud/
Code is in the link. They square an INTEGER (that does a bit overflow into a negative number) then stuff it into a REAL (preserving the broken negative). There is an interesting exchange in comments with “Steve” (who I suspect is a ‘Team Member’) who tries to justify this broken code by pointing out that “Harry Readme” picked the one bad data roach that caused this to crash the system out of the HadCRUT stew (but left in any other roaches not swimming on the top…)
I’ve posted the specific “fix” needed to make this one specific issue go away along with a general description of how to properly handle the data “preening” for bogus values (see the comments).
Did Harry ever figure it out?
No. It’s still in the code (specific lines quoted in link). “Harry Readme” (I quote since it is not clear if Harry was the writer or the intended reader of the file) did find one very large wrong data item in the input and plucked it out (took the roach off the top of the stew…) but left the rest of the code and data ‘as is’.
This means that any OTHER large wrong datum can still be squared and cause a bit overflow of the INTs into a negative number, but if it is a small enough negative number, the “sum of the squares” might stay positive (even if totally wrong and fictional) and thus give completely BOGUS output. (i.e. he left any roaches swimming below the surface of the stew still in place…)
Douglas DC (09:21:35) :
hmmm (09:14:27) :
It’s almost as if whoever wrote these notes wanted us to find them.
Positively Freudian.I know enough about programming though no expert,
just from my own limited experience the commands and data input are
to quote:” Crap crap ‘..

Programmers can’t even get their bosses or work mates to read their code most of the time. They become conditioned to the idea that the only guy who will ever read what they put in the comments is the next poor sot to be assigned this bucket of warm spit to swim in… and that may be none other than themselves a year from now when they’ve forgotten some hideous bit.
As a consequence, comments in code are often very blatant and very directly honest, in a cynical kind of way. After all, it’s just you talking to a future you… Saying ” Buck up, kid. I made it once. You can too… and until then, you won’t believe this stupid human trick: {cite} “

E.M.Smith
Editor
November 27, 2009 2:50 pm

rbateman (11:22:54) : Depends upon whether you can trust GHCN with Jones/Karl online now is not the mangled mess HARRY was tasked with while supposing that the MasterDB will somehow miraculouly appear in a pristine state.
A light slowly dawns…
Is GHCN the work product of NCDC and Karl?
GHCN is thorough cooked by thermometer deletions on / about 1990:
http://chiefio.wordpress.com/2009/11/03/ghcn-the-global-analysis/
has the ‘by latitude’ analysis while the ‘by altitude’ is still in the right sidebar as the articles are still being done… I’ll add pointers to the ‘global analysis’ in the next day or to for the ‘by altitude’ studies shown mountains systematically deleted from the record.
I thought GHCN was a NOAA product… then again, with all the constantly changing acronyms hiding which department is a subset of what other department, keeping it straight has been a bit hard… “Get your Org Chart, Get your OOORRg Chart here! Can’t tell the players without an Org Chart!!”…
IFF GHCN is a synonym for “NCDC Data Set” then it’s all very very clear… both HadCrut and GIStemp are modest re-digestions of GHCN… no wonder they would all “agree”…

SidViscous
November 27, 2009 3:11 pm

Well another Slashdot article has come up.
http://news.slashdot.org/story/09/11/27/1811253/Engaging-With-Climate-Skeptics?art_pos=5
Still basically dealing with the politics, none of them have looked at the code, or the harry file.
Disturbing how many there say skeptics should be ignored, and their reasoning for it.

SidViscous
November 27, 2009 3:13 pm

Oh, almost forgot.
In one of the two threads, the comment is made, something along the lines of ‘waiting for Steve M and Anthony W to realease their personal e-mails’
Couldn’t waste my time responding that neither are govt. funded, and as a result don’t fall under any FOIA requirements.
You want to take the money, you have to play by the rules.

E.M.Smith
Editor
November 27, 2009 3:38 pm

Eric (11:26:56) : … From a s/w engineering perspective, it would have seemed wise to have used an existing DBMS that had been extensively tested and verified. … It would most likely have been quicker and more reliable to use existing software tools like DBMS.
You, sir, are a professional and competent programmer (but you knew that already and don’t need external validation..)
FWIW, that was exactly what I thought once I figured out that 90% of it was “glue data together and report it” and only about 10% was ‘make modest perhaps bogus changes’. It is also what some other folks have said in comments where we’re looking at the code.
This whole thing could be sucked into a RDMS with about 1/10 th the effort…
hitfan (11:28:11) :… I was working 14+ hours a day and being placed on 24/7 pager duty with no extra compensation (imagine getting called during your grandmother’s funeral or while in Church on Christmas Eve–yes it happened to me),
And you sir are an under appreciated professional being ground down… but you knew that, too… Having carried ‘the duty pager’ 24 x 7 for 2 years “I felt your pain”…
Yes, I confess that I programmed a spam dialer during the dotcom crash in order to pay the bills. And there were swear words in the source code! 🙂 (and I don’t feel the least bad about it).
Were I the “project manager” I would have had to officially waggle a finger at you during your review (and explain that you needed a pre-editor sed script to turn “”Overlord” into “system” and “Snoring” into “. *** … and only check in the “Overlord/ Snoring” version into the SCCS.. 😉 Then I’d have taken you out for a beer or two and prescribed some ‘off time’ to get your sprits more positive and remove the ‘root problem’ of extreme frustration…
g/Snoring/s//….ing /g (It’s a Linux/Unix thing…)
The company is now dead and bankrupt and I danced a little jig when I found out about it a few years later!
Once or twice I was sucked into some bit of code-whoring against my will and under contract… I’ve done a jig or two myself… But when you are a contract programmer and sales already signed the contract, it’s a bit hard to tell them to stuff it. The spouse frowns on suddenly moving into a tent…
But seriously, having a set of “personal sed scripts” can work wonders… (sed is an automatic editor). I once did a script that let me write what looked rather like a gothic novel (yes, I was very bored at that site…)
“Verily Overlord did slay and flog”
Call Validation; call system (yz); if (true) execute (foo) and exitprocess.
Yeah, it’s a bored programmer trick…
But: It was really fun when folks would look over my shoulder and asks what the heck I was doing… then I’d type: runtest and the whole translate, compile, and run would happen… and it was great fun to watch them realize that the ‘stuff’ I had written really DID run 😎
Oh, and since the macros where much shorter than the expansion, I could crank out more total code per keystroke and it was actually faster to write, so I could even justify it rationally 😉
And yes, only the translation was actually submitted as final ‘work product’…

E.M.Smith
Editor
November 27, 2009 3:50 pm

E.M.Smith (14:50:54) :
rbateman (11:22:54) : Depends upon whether you can trust GHCN with Jones/Karl online now is not the mangled mess HARRY was tasked with while supposing that the MasterDB will somehow miraculouly appear in a pristine state.
A light slowly dawns…
Is GHCN the work product of NCDC and Karl?

Starting from a google of NCDC I drilled down their web site and then the ftp links until I ended up in a VERY familiar place… the directory where GIStemp downloads the GHCN data.
So I’ve answered my own question: GHCN is the same as NCDC data set. And I’m already investigating it and finding it bogus.
So many names and organizational perks; so little work that is really different or of value.

E.M.Smith
Editor
November 27, 2009 4:51 pm

Jean Bosseler (13:03:02) :
This type of incident is clearly signaled with another error message and the programmer would know, at least I hope he is knowing what he does.
A very, very negative number is still a number and not an owerflow!

Um, no. I’ve got sample code up showing no error message. It’s an integer overflow, nothing more. I also show the exact lines in the program that do it… See the “Hadley Hack” link a few messages up thread.