⇐ ⇒

[CF-metadata] Gaussian Lat/Lon grids

From: Karl Taylor <taylor13>
Date: Wed, 27 Jun 2007 10:46:22 -0700

Hi John and all,

A couple of comments:

I mentioned earlier that for a given spherical harmonic truncation the
number of guassian latitudes and longitudes is not determined uniquely.
  As is noted in one of Brian's links,
"The actual values of J and P (number of latitude and longitude grid
cells) are often not set equal to the lower limit in order to allow use
of more efficient transform programs." Perhaps this is a somewhat
tangential point as far as CF is concerned.

I don't see any major advantage to including the information that the
grid is gaussian. I'm not sure why a user (or piece of software) would
need to know this unless either the cell bounds and/or the cell areas
were not included in the file, in which case the user could calculate
these if he knew that it were a gaussian grid. It would be much easier
for software to handle a variety of grids if for all of these the bounds
were available, and the software didn't have to recognize lots of
different types of grids.

Note that the gaussian weights are conventionally defined as being
proportional to the grid-cell area, but normalized to sum to 2.0 (or in
some cases, I think, to 1.0). Thus, there seems to be no need to store
the weights, when equivalently areas can already be stored.

Karl

John Caron wrote:
> thanks Brian!
>
> would you also recommend storing the gaussian weights in the file? somehow otherwise documenting this?
>
> Brian Eaton wrote:
>> Hi John,
>>
>> In order to construct latitude cell bounds so that the cell areas give
>> identical integrals over the surface of a unit sphere to those that would
>> be obtained by Gaussian integration, we do the following:
>>
>> Let phi(j), j = 1, nlat be the Gauss points ordered from S.P. to N.P.
>>
>> Let phi_bnd(j), j = 1, nlat+1 be the latitude cell edges which satisfy
>>
>> phi_bnd(j) < phi(j) < phi_bnd(j+1) for all j = 1, nlat
>>
>> and phi_bnd(1) = -pi/2, phi_bnd(nlat+1) = pi/2.
>>
>> Let gw(j), j = 1, nlat be the Gauss weights corresponding to Gauss points
>> phi(j).
>>
>> In psuedo code:
>>
>> sin_phi_bnd(1) = -1.0
>>
>> do j = 1, nlat
>>
>> sin_phi_bnd(j+1) = sin_phi_bnd(j) + gw(j)
>>
>> end do
>>
>> Then compute corresponding latitudes by taking arc sine.
>>
>> Note that since sin_phi_bnd(1) = -1, and since the Gauss weights sum to
>> 2.0, then sin_phi_bnd(nlat+1) will equal 1.0 to within the accuracy that
>> the Gauss weights sum to 2.0. We generally set sin_phi_bnd(nlat+1) = 1.0
>> and let the accumulated error in the sum of the Gauss weights (hopefully at
>> the double precision roundoff level) be included in the last latitude cell.
>>
>> Brian
>>
>>
>>
>> On Tue, Jun 26, 2007 at 10:08:57AM -0600, John Caron wrote:
>>> Hi Karl:
>>>
>>> Is there a standard way that the latitude bounds should be calculated that reflects the gaussian?
>>>
>>> If I do include the weights, sounds like I should include a description of how they were calculated. I used "the roots of the ordinary Legendre polynomial of degree NLAT using Newton's iteration method". Does that seem sufficient and useful?
>>>
>>> BTW, it appears you didnt send to list, so i forwarded.
>>>
>>> Karl Taylor wrote:
>>>> Dear John,
>>>>
>>>> I think that CF doesn't bother identifying gaussian grids or weights as
>>>> such, but simply stores the latitude values and the latitude bounds.
>>>> This avoids the problem that there is no unique way of defining weights
>>>> for a given spherical harmonic truncation (although conventionally
>>>> nearly everyone does this in the same way).
>>>>
>>>> I hope someone will correct me if I've said anything incorrect.
>>>>
>>>> cheers,
>>>> Karl
>>>>
>>>> John Caron wrote:
>>>>> I dont see a standard for encoding gaussian weights for a gaussian
>>>>> Latitude grid (eg GRIB GDS type 4 "Gaussian Lat/Lon"). Does this seem
>>>>> needed? If so, any suggestions?
>>>>> _______________________________________________
>>>>> CF-metadata mailing list
>>>>> CF-metadata at cgd.ucar.edu
>>>>> http://www.cgd.ucar.edu/mailman/listinfo/cf-metadata
>>>>>
>>> _______________________________________________
>>> CF-metadata mailing list
>>> CF-metadata at cgd.ucar.edu
>>> http://www.cgd.ucar.edu/mailman/listinfo/cf-metadata
> _______________________________________________
> CF-metadata mailing list
> CF-metadata at cgd.ucar.edu
> http://www.cgd.ucar.edu/mailman/listinfo/cf-metadata
>
Received on Wed Jun 27 2007 - 11:46:22 BST

This archive was generated by hypermail 2.3.0 : Tue Sep 13 2022 - 23:02:40 BST

⇐ ⇒