GCLgrid :: GCLgrid classes

class BasicGCLgrid

? ^ 
This is a base class that contains common attributes and virtual declarations for higher level objects that are derived from this base.

Note that both 2d and 3d grid and field objects are derived from here.

Source:
gclgrid.h:81
Author:
Gary L. Pavlis
Version:
unknown

Contents

^ 
EntityTypeScopeShort Description
~BasicGCLgriddestructor publicautomatically generated
BasicGCLgridconstructor public Default Constructor.
BasicGCLgridconstructor publicundocumented
azimuth_yattribute public Nominal azimuth (radians) of positive y axis of grid line at origin location.
compute_extentsmethod public This member function sets the x1min, x1max, x2min, x2max, x3min, and x3max bounding box attribute.
ctogmethod public Convert Cartesian coordinates to geographical coordinates.
ctogmethod public Convert from Cartesian coordinates to geographical coordinates.
dx1_nomattribute public Nominal spacing (km) of grid lines along the 1 position gridlines.
dx2_nomattribute public Nominal spacing (km) of grid lines along the 2 position gridlines.
fetch_transformation_matrixmethod public Returns the transformation matrix for this grid as a 3x3 dmatrix object.
fetch_translation_vectormethod public Returns a newly allocated 3 vector of double containing a copy of the translation vector defining the GCLgrid transformation property.
get_indexmethod publicQuery for the current lookup index position.
gtocmethod public Convert from geographical to Cartesian coordinates in the GCLgrid coordinate system.
gtocmethod public Convert from geographical to Cartesian coordinates in the GCLgrid coordinate system.
gtoc_rmatrixattribute public This is a rotation matrix that defines the transformation from standard spherical coordinates (the geographical reference frame) to the local Cartesian coordinate system used in a GCLgrid.
i0attribute public Offset in first index to origin grid point.
j0attribute public Offset in second index to origin grid point.
lat0attribute public Latitude (radians) of origin of the grid's Cartesian coordinate system.
lon0attribute public Longitude (radians) of origin of the grid's Cartesian coordinate system.
n1attribute public Number of grid points in generalized coordinate index 1 direction (first array index).
n2attribute public Number of grid points in generalized coordinate index 2 direction (second array index).
nameattribute public Name assigned to this object
operator =operator publicautomatically generated
r0attribute public Radial distance of origin of the grid's Cartesian coordinate system from Earth's center.
reset_indexmethod publicReset lookup index to origin.
set_transformation_matrixmethod public Set or reset the transformation properties for the grid.
translation_vectorattribute public This is a close companion to the gtoc_rmatrix.
x1highattribute public Cartesian x1 coordinate of upper limit of bounding box for grid.
x1lowattribute public Cartesian x1 coordinate of lower limit of bounding box for grid.
x2highattribute public Cartesian x2 coordinate of upper limit of bounding box for grid.
x2lowattribute public Cartesian x2 coordinate of lower limit of bounding box for grid.
x3highattribute public Cartesian x3 coordinate of upper limit of bounding box for grid.
x3lowattribute public Cartesian x3 coordinate of lower limit of bounding box for grid.

destructor ~BasicGCLgrid

? ^  > 
automatically generated
Source:
gclgrid.h
Code:
public ~ BasicGCLgrid ( )

constructor BasicGCLgrid

? ^  < > 
Default Constructor.

Implemented to initialize all base attributes explicitly.

Source:
gclgrid.h:163
Code:
public BasicGCLgrid ( )

constructor BasicGCLgrid

? ^  < > 
undocumented
Source:
gclgrid.h:165
Code:
public BasicGCLgrid ( const BasicGCLgrid & old )

attribute azimuth_y

? ^  < > 
Nominal azimuth (radians) of positive y axis of grid line at origin location.
Source:
gclgrid.h:102
Code:
public double azimuth_y

method compute_extents

? ^  < > 
This member function sets the x1min, x1max, x2min, x2max, x3min, and x3max bounding box attribute.

These define the "extents" of the name. Should be needed only if one builds a custom grid from user defined coordinates. Said a different way if you build a GCLgrid from lower level routines be sure to call this function to set the bounding box correctly.

Source:
gclgrid.h:240
Code:
public virtual void compute_extents ( ) = 0

method ctog

? ^  < > 
Convert Cartesian coordinates to geographical coordinates.
Source:
gclgrid.h:208
Params:
x1p - Cartesian x1 coordinate of point to convert
x2p - Cartesian x2 coordinate of point to convert
x3p - Cartesian x3 coordinate of point to convert
Returns:
Geographic_point data structure (see Geographic_point )
Code:
public Geographic_point ctog ( double x1p ,
double x2p ,
double x3p )

method ctog

? ^  < > 
Convert from Cartesian coordinates to geographical coordinates.
Source:
gclgrid.h:214
Param:
p point to convert stored in a Cartesian_point data structure
Returns:
Geographic_point data structure (see Geographic_point )
Code:
public Geographic_point ctog ( Cartesian_point p )

attribute dx1_nom

? ^  < > 
Nominal spacing (km) of grid lines along the 1 position gridlines.

Source:
gclgrid.h:106
Code:
public double dx1_nom

attribute dx2_nom

? ^  < > 
Nominal spacing (km) of grid lines along the 2 position gridlines.

Source:
gclgrid.h:111
Code:
public double dx2_nom

method fetch_transformation_matrix

? ^  < > 
Returns the transformation matrix for this grid as a 3x3 dmatrix object.
Source:
gclgrid.h:194
Code:
public dmatrix fetch_transformation_matrix ( )

method fetch_translation_vector

? ^  < > 
Returns a newly allocated 3 vector of double containing a copy of the translation vector defining the GCLgrid transformation property.

The user must be sure to call delete [] after using this vector to avoid a memory leak.

Source:
gclgrid.h:200
Code:
public double * fetch_translation_vector ( )

method get_index

? ^  < > 
Query for the current lookup index position.

The lookup functions used in the GCLgrid library keep and index of the previous lookup result under an assumption that the next point requested will be nearby. This method is used to ask what the current index position.

Source:
gclgrid.h:259
Param:
ind vector of ints of length sufficient to hold the index (2 for 2d and 3 for 3d grids)
Code:
public virtual void get_index ( int * ind ) = 0

method gtoc

? ^  < > 
Convert from geographical to Cartesian coordinates in the GCLgrid coordinate system.

Source:
gclgrid.h:224
Params:
plat Latitude (radians) of point to convert.
plon Longitude (radians) of point to convert.
pr Earth radius (km) of point to convert.
Returns:
Cartesian_point data structure (see @endlink)
Code:
public Cartesian_point gtoc ( double plat ,
double plon ,
double pr )

method gtoc

? ^  < > 
Convert from geographical to Cartesian coordinates in the GCLgrid coordinate system.

Source:
gclgrid.h:232
Param:
p point to convert stored in a @link Geographic_point @endlink data structure.
Returns:
Cartesian_point data structure (see @endlink) )
Code:
public Cartesian_point gtoc ( Geographic_point p )

attribute gtoc_rmatrix

? ^  < > 
This is a rotation matrix that defines the transformation from standard spherical coordinates (the geographical reference frame) to the local Cartesian coordinate system used in a GCLgrid.

Was private in an earlier incarnation, but this is is messy when we depend on inheritance so it is public. Users should not manipulate this directly, however, but if it is desired they should use the fetch_transformation_matrix member function.

Source:
gclgrid.h:174
Code:
public double gtoc_rmatrix [ 3 ] [ 3 ]

attribute i0

? ^  < > 
Offset in first index to origin grid point.

i.e. origin is at first coordinate index i0.

Source:
gclgrid.h:123
Code:
public int i0

attribute j0

? ^  < > 
Offset in second index to origin grid point.

i.e. origin is at second coordinate index j0. ([i0][j0])

Source:
gclgrid.h:127
Code:
public int j0

attribute lat0

? ^  < > 
Latitude (radians) of origin of the grid's Cartesian coordinate system.
Source:
gclgrid.h:90
Code:
public double lat0

attribute lon0

? ^  < > 
Longitude (radians) of origin of the grid's Cartesian coordinate system.
Source:
gclgrid.h:94
Code:
public double lon0

attribute n1

? ^  < > 
Number of grid points in generalized coordinate index 1 direction (first array index).
Source:
gclgrid.h:115
Code:
public int n1

attribute n2

? ^  < > 
Number of grid points in generalized coordinate index 2 direction (second array index).
Source:
gclgrid.h:119
Code:
public int n2

attribute name

? ^  < > 
Name assigned to this object
Source:
gclgrid.h:86
Code:
public string name

operator =

? ^  < > 
automatically generated
Source:
gclgrid.h
Code:
public BasicGCLgrid & operator = ( const BasicGCLgrid & )

attribute r0

? ^  < > 
Radial distance of origin of the grid's Cartesian coordinate system from Earth's center.
Source:
gclgrid.h:98
Code:
public double r0

method reset_index

? ^  < > 
Reset lookup index to origin.

The lookup functions used in the GCLgrid library keeps an index of the previous lookup results under an assumption the next point requested will be nearby. This can cause convergence problems in some grids, however, if that position is a poor place to start (e.g. sudden jump to a completely different location). This function should be called if a lookup fails to try to recover. Internal methods like the += operator does this automatically.

Source:
gclgrid.h:251
Code:
public virtual void reset_index ( ) = 0

method set_transformation_matrix

? ^  < > 
Set or reset the transformation properties for the grid.

The transformation properties are uniquely defined by the coordinate system origin and azimuth_y so if these are all that are known this low level member function can be called to set the transformation properties. It is of minimal use to most users and should be used cautiously and only if you thoroughly understand the way this all works.

Source:
gclgrid.h:190
Code:
public void set_transformation_matrix ( )

attribute translation_vector

? ^  < > 
This is a close companion to the gtoc_rmatrix.

The full transformation used to define the Cartesian system in a GCLgrid is a translation from the earth's center to the grid coordinate system origin. This is followed by a rotation by gtoc_rmatrix. The translation_vector attribute defines what the name implies.

Source:
gclgrid.h:181
Code:
public double translation_vector [ 3 ]

attribute x1high

? ^  < > 
Cartesian x1 coordinate of upper limit of bounding box for grid.

This edge of the bounding box is defined as the largest x1 value plus dx1_nom.

Source:
gclgrid.h:137
Code:
public double x1high

attribute x1low

? ^  < > 
Cartesian x1 coordinate of lower limit of bounding box for grid.

This edge of the bounding box is defined as the smallest x1 value minus dx1_nom.

Source:
gclgrid.h:132
Code:
public double x1low

attribute x2high

? ^  < > 
Cartesian x2 coordinate of upper limit of bounding box for grid.

This edge of the bounding box is defined as the largest x2 value plus dx2_nom.

Source:
gclgrid.h:147
Code:
public double x2high

attribute x2low

? ^  < > 
Cartesian x2 coordinate of lower limit of bounding box for grid.

This edge of the bounding box is defined as the smallest x2 value minus dx2_nom.

Source:
gclgrid.h:142
Code:
public double x2low

attribute x3high

? ^  < > 
Cartesian x3 coordinate of upper limit of bounding box for grid.

This edge of the bounding box is defined as the largest x3 value plus dx3_nom.

Source:
gclgrid.h:157
Code:
public double x3high

attribute x3low

? ^  < > 
Cartesian x3 coordinate of lower limit of bounding box for grid.

This edge of the bounding box is defined as the smallest x3 value minus dx3_nom.

Source:
gclgrid.h:152
Code:
public double x3low

Created Fri Jan 21 08:54:54 2005.
This documentation was generated automatically by
ccdoc v08r41 2004/09/29 bin_opt_suncc_sun4-solaris-2.8.
Click here to submit a bug report or feature request for ccdoc.
Click here to return to the top of the page.