diff --git a/docs/nightly/DWesl-patch-1/ESMPy.pdf b/docs/nightly/DWesl-patch-1/ESMPy.pdf
index d74dbc2a..3f9f8e94 100644
Binary files a/docs/nightly/DWesl-patch-1/ESMPy.pdf and b/docs/nightly/DWesl-patch-1/ESMPy.pdf differ
diff --git a/docs/nightly/DWesl-patch-1/html/.buildinfo b/docs/nightly/DWesl-patch-1/html/.buildinfo
index 20fb2b34..6653bf64 100644
--- a/docs/nightly/DWesl-patch-1/html/.buildinfo
+++ b/docs/nightly/DWesl-patch-1/html/.buildinfo
@@ -1,4 +1,4 @@
# Sphinx build info version 1
-# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
-config: 9a7b71e66bbdff19ccf1e1465780cd5a
+# This file records the configuration used when building these files. When it is not found, a full rebuild will be done.
+config: 2eb1352daae6c162ef3e8651ba88bb23
tags: 645f666f9bcd5a90fca523b33c5a78b7
diff --git a/docs/nightly/DWesl-patch-1/html/CoordSys.html b/docs/nightly/DWesl-patch-1/html/CoordSys.html
index 17a7fb2b..8bf463fa 100644
--- a/docs/nightly/DWesl-patch-1/html/CoordSys.html
+++ b/docs/nightly/DWesl-patch-1/html/CoordSys.html
@@ -1,24 +1,24 @@
-
+
This flag indicates the coordinate system of a Grid. This value is
useful both to indicate to other users the type of the coordinates,
but also to control how the coordinates are interpreted in
regridding methods (e.g. Regrid).
Cartesian coordinate system. In this system, the Cartesian
coordinates are mapped to the Grid coordinate dimensions in the
following order: x, y, z. (e.g. using coord_dim=1 in
@@ -64,7 +64,7 @@
Spherical coordinates in degrees. In this system, the spherical
coordinates are mapped to the Grid coordinate dimensions in the
following order: longitude, latitude, radius. (E.g. using
@@ -73,7 +73,7 @@
Spherical coordinates in radians. In this system, the spherical
coordinates are mapped to the Grid coordinate dimensions in the
following order: longitude, latitude, radius. (E.g. using
@@ -89,7 +89,7 @@
Nearest source to destination.
Here each destination point is mapped to the closest source point. A given
source point may go to multiple destination points, but no destination
@@ -68,7 +68,7 @@
Inverse distance weighted average.
Here the value of a destination point is the weighted average of the
closest N source points. The weight is the reciprocal of the distance of
@@ -80,7 +80,7 @@
Creep fill extrapolation.
Here unmapped destination points are filled by repeatedly moving data from
mapped locations to neighboring unmapped locations. The data filled into a
@@ -99,7 +99,7 @@
The Grid can contain other kinds of data besides coordinates. This
data is referred to as Grid “items”. Some items may be used
for calculations involving the Grid.
This argument controls the path of the line which connects two points on
the surface of the sphere. This in turn controls the path along which
distances are calculated and the shape of the edges that make up a cell.
@@ -57,7 +57,7 @@
Cartesian line. When this option is specified distances are calculated in a
straight line through the 3D Cartesian space in which the sphere is
embedded. Cells are approximated by 3D planes bounded by 3D Cartesian lines
@@ -68,7 +68,7 @@
Great circle line. When this option is specified distances are calculated
along a great circle path (the shortest distance between two points on a
sphere surface). Cells are bounded by great circle paths between their
@@ -85,7 +85,7 @@
A Mesh can be constructed from a combination of different elements.
The type of elements that can be used in a Mesh depends on the
parametric dimension of the Mesh, which is set during Mesh
@@ -56,25 +56,25 @@
Destination area normalization. Here the weights are calculated by dividing
the area of overlap of the source and destination cells by the area of the
entire destination cell. In other words, the weight is the fraction of the
@@ -62,7 +62,7 @@
Fraction area normalization. Here in addition to the weight calculation
done for destination area normalization the weights are also divided by the
fraction that the destination cell overlaps with the entire source grid. In
@@ -79,7 +79,7 @@
Construct an artificial pole placed in the center of the top (or bottom)
row of nodes, but projected onto the sphere formed by the rest of the grid.
The value at this pole is the average of all the source values surrounding
@@ -69,7 +69,7 @@
Construct an artificial pole placed in the center of the top (or bottom)
row of nodes, but projected onto the sphere formed by the rest of the grid.
The value at this pole is the average of the N source nodes next to the pole
@@ -82,7 +82,7 @@
No new pole point is constructed, instead the holes at the poles are filled
by constructing triangles across the top and bottom row of the source Grid.
This can be useful because no averaging occurs, however, because the top and
@@ -100,7 +100,7 @@
An operation applies to a select portion of the domain. One use of this is
to specify that the portions of a Field that are not mapped in a regridding
operation should retain their original value (as opposed to being
@@ -67,7 +67,7 @@
Bilinear interpolation. Destination value is a linear combination of the
source values in the cell which contains the destination point. The
weights for the linear combination are based on the distance of destination
@@ -61,7 +61,7 @@
Higher-order patch recovery interpolation. Destination value is a weighted
average of 2D polynomial patches constructed from cells surrounding the
source cell which contains the destination point. This method typically
@@ -72,7 +72,7 @@
First-order conservative interpolation. The main purpose of this method is
to preserve the integral of the field across the interpolation from source
to destination. In this method the value across each source cell is treated
@@ -89,7 +89,7 @@
In this version of nearest neighbor interpolation each destination point is
mapped to the closest source point. A given source point may go to multiple
destination points, but no destination point will receive input from more
@@ -98,7 +98,7 @@
In this version of nearest neighbor interpolation each source point is
mapped to the closest destination point. A given destination point may
receive input from multiple source points, but no source point will go to
@@ -107,7 +107,7 @@
Second-order conservative interpolation. This method’s main purpose is to
preserve the integral of the field across the interpolation from source to
destination. The difference between the first and second-order conservative
@@ -136,7 +136,7 @@
In the Grid class, data can be located at different positions in a
Grid cell. When setting or retrieving coordinate data the stagger
location is specified to tell the Grid method from where in the
cell to get the data.
This is used to indicate what action to take with respect to unmapped destination
points and the entries of the sparse matrix that correspond to
these points.
ESMPy uses a Field object to represent data variables
built on an underlying spatial discretization, which is represented by a
Grid, Mesh or
@@ -86,7 +86,7 @@
ESMPy follows the ESMF convention of using “named constants” to represent the
available options for parameters that expect a variety of specific inputs. The
following table lists the available named constants and provides links to pages
@@ -153,12 +153,12 @@
The Manager is used by ESMPy to simplify a
number of low-level calls used by the underlying ESMF framework to allocate
resources, enable logging, and control garbage collection.
The ESMF Virtual Machine (VM)
is created at the beginning of each ESMPy execution, and contains information
about the topology and characteristics of the underlying computer. The VM
@@ -178,7 +178,7 @@
The underlying ESMF framework needs to be initialized and finalized once and
only once per execution. This is handled internally by the
Manager and does not require any explicit
@@ -207,7 +207,7 @@
There are three different objects used for spatial coordinate representation:
Grid, Mesh, and LocStream. Grids are used to represent logically rectangular
grids, Meshes are used for unstructured collections of polygons, and
@@ -226,13 +226,13 @@
The Grid is used to represent the geometry and discretization of logically
rectangular physical grids. The Grid can also hold information that can used in
calculations involving the Grid, like a mask or the cell areas. Refer to the Grid Class of the
ESMF Reference Manual for more information.
A periodic connection can be specified when building Grids in spherical
coordinates. The num_peri_dims parameter indicates the total number of
periodic dimensions and periodic_dim is used to identify which dimensions
@@ -285,7 +285,7 @@
The Grid can generate an artificial pole by using the pole_dim parameter. This
can be helpful for regridding operations to smooth out the interpolated values
in the polar region. For the example of creating a global latitude-longitude
@@ -297,7 +297,7 @@
Masking is the process used to mark parts of a Grid to be ignored during an
operation. Marking Grid cells as masked can affect the Field values that are
represented by those cells. Masking is specified by assigning an integer value
@@ -307,8 +307,8 @@
MaskingGrid mask is handled by Regrid, and a more
general discussion of masking is covered in the masking
section.
-
To create a Mesh we need to set some properties of the Mesh as a whole, some
properties of each node in the Mesh and then some properties of each element
which connects the nodes.
There are two types of masking available in Mesh: node masking and element
masking. These both work in a similar manner, but vary slightly in the details
of setting the mask information during Mesh creation.
A LocStream can be used to represent the locations of a set of
data points. For example, in the data assimilation world, LocStreams can be used
to represent a set of observations. The values of the data points are stored
@@ -602,14 +602,14 @@
ESMPy can create Grid or Mesh objects from NetCDF files in a variety
of formats. A Mesh can be created from files in SCRIP, ESMFMESH, and UGRID
formats. Grid files can be in SCRIP and GRIDSPEC format.
This file format is used by the SCRIP[1], package, grid files that
work with that package should also work here. SCRIP format files are
capable of storing either 2D logically rectangular grids or 2D
@@ -617,7 +617,7 @@
ESMF has a custom unstructured grid file format for describing Meshes.
This format is more compatible than the SCRIP format with the methods
used to create a Mesh object, so less conversion needs to be done to
@@ -626,7 +626,7 @@
GRIDSPEC is an extension to the Climate and Forecast (CF) metadata
conventions for the representation of gridded data for Earth System
Models. ESMPy supports NetCDF files that follow the CF GRIDSPEC
@@ -635,7 +635,7 @@
UGRID is an extension to the CF metadata
conventions for the unstructured grid data model. ESMPy support
NetCDF files that follow the CF UGRID convention for unstructured grids.
@@ -644,7 +644,7 @@
When creating a Mesh from a SCRIP format file, there are a number of
options to control the output Mesh. The data is located at the center
of the grid cell in a SCRIP grid. Therefore, when the Mesh will be
@@ -659,7 +659,7 @@
A number of optional boolean arguments are also supported to create a
structured Grid from a file. These include is_sphere to indicate whether
the grid is spherical or regional, add_corner_stagger to add the corner
@@ -678,7 +678,7 @@
The following table describe the regridding methods and options that are
available in ESMPy, the flag that is required to use it and a short description.
More information can be found on these options in the
@@ -723,7 +723,7 @@
For Grids and Meshes on a sphere some combinations of interpolation options
(e.g. first and second-order conservative methods) use cells whose edges are
great circles. This section describes some behavior that the user may not expect
@@ -744,7 +744,7 @@
Masking is the process whereby parts of a Grid, Mesh or LocStream can be marked to be ignored
during an operation, such as when they are used in regridding. Masking can be used on a Field
created from a regridding source to indicate that certain portions should not be used to generate
@@ -788,7 +788,7 @@
Numpy arrays are used to represent Grid, Mesh and LocStream coordinates and Field data,
among other things. Standard numpy conventions for array indexing
and slicing can be expected. There are some exceptions when it comes to fancy
@@ -803,7 +803,7 @@
Numpy Slicing and IndexingField slice will be updated with the regridded values.
-
ESMPy is a thin wrapper on top of ESMF, which was designed for high performance
and scalable computing. The ESMF virtual machine is used to manage the available
resources of the execution environment in a layer that is transparent to the
@@ -881,7 +881,7 @@
There are a few different options for using ESMPy in a parallel
environment. Using mpirun to specify the desired number of computing cores
is probably the easiest way to start a parallel ESMPy job. Another option is to
@@ -895,15 +895,15 @@
defcreate_locstream_spherical_16(coord_sys=esmpy.CoordSys.SPH_DEG,domask=False):""" :param coord_sys: the coordinate system of the LocStream :param domask: a boolean to tell whether or not to add a mask
@@ -91,8 +91,8 @@
defcreate_locstream_spherical_16_parallel(coord_sys=esmpy.CoordSys.SPH_DEG,domask=False):""" :param coord_sys: the coordinate system of the LocStream :param domask: a boolean to tell whether or not to add a mask
@@ -136,9 +136,9 @@
defgrid_create_from_coordinates(xcoords,ycoords,xcorners=False,ycorners=False,corners=False,domask=False,doarea=False,ctk=esmpy.TypeKind.R8):""" Create a 2 dimensional Grid using the bounds of the x and y coordiantes. :param xcoords: The 1st dimension or 'x' coordinates at cell centers, as a Python list or numpy Array
@@ -188,8 +188,8 @@
defgrid_create_from_coordinates_3d(xcoords,ycoords,zcoords,xcorners=False,ycorners=False,zcorners=False,corners=False,domask=False,doarea=False):""" Create a 3 dimensional Grid using the xcoordinates, ycoordinates and zcoordinates. :param xcoords: The 1st dimension or 'x' coordinates at cell centers, as a Python list or numpy Array
@@ -267,9 +267,9 @@
defgrid_create_from_coordinates_periodic(longitudes,latitudes,lon_corners=False,lat_corners=False,corners=False,domask=False):""" Create a 2 dimensional periodic Grid using the 'longitudes' and 'latitudes'. :param longitudes: longitude coordinate values at cell centers
@@ -332,8 +332,8 @@
defcreate_field(gml,name):''' PRECONDITIONS: An Grid, Mesh or LocStream has been created, and 'name' is a string that will be used to initialize the name of a new Field.\n
@@ -427,9 +427,9 @@
definitialize_field_grid_periodic(field):""" PRECONDITIONS: A Field has been created as 'field' with a 'grid' where coordinates have been set on both
@@ -454,9 +454,9 @@
defrun_regridding(srcfield,dstfield,srcfracfield,dstfracfield):# This is for documentation. Do not modify.''' PRECONDITIONS: Two Fields have been created and a regridding
@@ -485,9 +485,9 @@