def is_geophysical(ds, variable):
    '''
    Returns true if the dataset's variable is likely a geophysical variable

    :param netCDF4.Dataset ds: An open netCDF dataset
    :param str variable: Name of the variable
    '''
    ncvar = ds.variables[variable]

    if getattr(ncvar, 'cf_role', None):
        return False

    # Check for axis
    if getattr(ncvar, 'axis', None):
        return False

    standard_name_test = getattr(ncvar, 'standard_name', '')
    unitless = is_unitless(ds, variable)

    if not isinstance(standard_name_test, basestring):
        warnings.warn("Variable {} has non string standard name, "
                      "Attempting cast to string".format(variable))
        try:
            standard_name = str(standard_name_test)
        except ValueError:
            warnings.warn("Unable to cast standard name to string, excluding "
                          "from geophysical variables")
    else:
        standard_name = standard_name_test

    # Is the standard name associated with coordinates
    if standard_name in {'time', 'latitude', 'longitude',
                         'height', 'depth', 'altitude'}:
        return False

    if variable in get_coordinate_variables(ds):
        return False

    if variable in get_auxiliary_coordinate_variables(ds):
        return False

    # Is it dimensionless and unitless?
    if len(ncvar.shape) == 0 and unitless:
        return False

    # Is it a QC Flag?
    if 'status_flag' in standard_name or hasattr(ncvar, 'flag_meanings'):
        return False

    # Is it a §7.1 Cell Boundaries variable
    if variable in get_cell_boundary_variables(ds):
        return False

    if variable == get_climatology_variable(ds):
        return False

    # Is it a string but with no defined units?
    if ncvar.dtype.char == 'S':
        return False

    # Is it an instrument descriptor?
    if variable in get_instrument_variables(ds):
        return False

    # What about a platform descriptor?
    if variable in get_platform_variables(ds):
        return False

    # Skip count variables too
    if hasattr(ncvar, 'sample_dimension'):
        return False

    return True
Returns true if the dataset's variable is likely a geophysical variable

    :param netCDF4.Dataset ds: An open netCDF dataset
    :param str variable: Name of the variable