function [FillVal]=ncgetFillVal(ncid,varname); % [FillVal]=ncgetFillVal(ncid,varname) % return the missing_value or _FillValue of varname global useNativeMatlabNetcdf; if isempty(useNativeMatlabNetcdf); useNativeMatlabNetcdf = ~isempty(which('netcdf.open')); end; FillVal=[]; if useNativeMatlabNetcdf; varid = netcdf.inqVarID(ncid,varname); [atts]=ncatts(ncid,varid); if any(ismember(atts,'missing_value')) FillVal = double(netcdf.getAtt(ncid,varid,'missing_value')); elseif any(ismember(atts,'_FillValue')) FillVal = double(netcdf.getAtt(ncid,varid,'_FillValue')); end; else FillVal = ncid{varname}.missing_value(:); if isempty(FillVal); FillVal = ncid{varname}.FillValue_(:); end end