EOF and area weighting
Added by Paolo Davini about 13 years ago
Goodmorning,
I have a question which is probably kind of simple, but I don't know how to solve this without asking here.
I am computing the EOF analysis through the eof function in CDO, and I am wondering if the area weighting (which is mandatory for this kind of analysis in spheric coordinates as in a model or in Reanalysis data) is included in the computation or if the anomalies must be weighted previous the operation.
Thank to everybody in advance.
Kind Regards
Paolo
Replies (1)
RE: EOF and area weighting - Added by Hans Chen almost 13 years ago
Hi Paolo,
I realize you posted this one month ago, but maybe it could still be helpful for you or someone else who stumbles upon this. I had the same question and found your thread when Googling. In an attempt to find the answer, I checked the source code of CDO and found the following in src/EOFs.c:
/* * TODO: * Role of the weights for eofs. Should not be mixed up with division with * number of contributing values during summation. */ //#define OLD_IMPLEMENTATION #define WEIGHTS 1 [...] weight = (double*) malloc(gridsize*sizeof(double)); if ( WEIGHTS ) gridWeights(gridID1, &weight[0]); else for(i=0;i<gridsize;i++) weight[i]=1;
So to answer your question, yes, I believe CDO uses area weighting when computing the EOFs (note that I'm not 100 % sure), at least in 1.5.4 which is the version I use. I also tried to change WEIGHTS to 0 and it yielded a different result.
With best regards,
Hans