def METHOD_NAME(cellWidth, x, y, geom_points, geom_edges,
                      out_filename='base_mesh.nc', logger=None):
    """
    Build a planar MPAS mesh
    Parameters
    ----------
    cellWidth : ndarray
        m x n array of cell width in km
    x, y : ndarray
        arrays defining planar coordinates in meters
    geom_points : ndarray
        list of point coordinates for bounding polygon for the planar mesh
    geom_edges : ndarray
        list of edges between points in ``geom_points`` that define the
        bounding polygon
    out_filename : str, optional
        The file name of the resulting MPAS mesh
    logger : logging.Logger, optional
        A logger for the output if not stdout
    """
    with LoggingContext(__name__, logger=logger) as logger:
        da = xarray.DataArray(cellWidth,
                              dims=['y', 'x'],
                              coords={'y': y, 'x': x},
                              name='cellWidth')
        cw_filename = 'cellWidthVsXY.nc'
        da.to_netcdf(cw_filename)
        logger.info('Step 1. Generate mesh with JIGSAW')
        jigsaw_driver(cellWidth, x, y, on_sphere=False,
                      geom_points=geom_points, geom_edges=geom_edges,
                      logger=logger)
        logger.info('Step 2. Convert triangles from jigsaw format to netcdf')
        jigsaw_to_netcdf(msh_filename='mesh-MESH.msh',
                         output_name='mesh_triangles.nc', on_sphere=False)
        logger.info('Step 3. Convert from triangles to MPAS mesh')
        args = ['MpasMeshConverter.x',
                'mesh_triangles.nc',
                out_filename]
        check_call(args=args, logger=logger)