def _get_lat_lon_comparison_descriptor(config): # {{{ """ Get a descriptor of the lat/lon comparison grid, used for remapping and determining the grid name Parameters ---------- config : instance of ``MpasAnalysisConfigParser`` Contains configuration options Returns ------- descriptor : ``LatLonGridDescriptor`` object A descriptor of the lat/lon grid """ # Authors # ------- # Xylar Asay-Davis climSection = 'climatology' comparisonLatRes = config.getWithDefault(climSection, 'comparisonLatResolution', constants.dLatitude) comparisonLonRes = config.getWithDefault(climSection, 'comparisonLatResolution', constants.dLongitude) nLat = int((constants.latmax - constants.latmin) / comparisonLatRes) + 1 nLon = int((constants.lonmax - constants.lonmin) / comparisonLonRes) + 1 lat = numpy.linspace(constants.latmin, constants.latmax, nLat) lon = numpy.linspace(constants.lonmin, constants.lonmax, nLon) descriptor = LatLonGridDescriptor.create(lat, lon, units='degrees') return descriptor # }}}
def get_latlon_array_descriptor(self): lat = numpy.linspace(-90., 90., 91) lon = numpy.linspace(-180., 180., 181) descriptor = LatLonGridDescriptor.create(lat, lon, units='degrees') return descriptor
from pyremap import LatLonGridDescriptor, Remapper from mpas_analysis.shared.constants import constants inputFileName = '/media/xylar/extra_data/analysis/output/GMPAS-QU240/' \ 'remap_obs/clim/obs/mld_1.0x1.0degree.nc' obsDescriptor = LatLonGridDescriptor.read(fileName=inputFileName, latVarName='lat', lonVarName='lon') comparisonLatRes = 4. comparisonLonRes = 4. nLat = int((constants.latmax - constants.latmin) / comparisonLatRes) + 1 nLon = int((constants.lonmax - constants.lonmin) / comparisonLonRes) + 1 lat = numpy.linspace(constants.latmin, constants.latmax, nLat) lon = numpy.linspace(constants.lonmin, constants.lonmax, nLon) comparisonDescriptor = LatLonGridDescriptor.create(lat, lon, units='degrees') remapper = Remapper(obsDescriptor, comparisonDescriptor, mappingFileName='map.nc') remapper.build_mapping_file() remapper.remap_file(inputFileName, 'mld_4.0x4.0degree.nc', ['mld', 'month', 'year'], renormalize=0.05)