Class GrADSDataInfo

    • Field Detail

      • DESCRIPTOR

        public java.lang.String DESCRIPTOR
      • DSET

        public java.lang.String DSET
      • isLatLon

        public boolean isLatLon
      • EarthWind

        public boolean EarthWind
      • DTYPE

        public java.lang.String DTYPE
      • TITLE

        public java.lang.String TITLE
      • PDEF

        public PDEFS PDEF
      • XDEF

        public XDEFS XDEF
      • YDEF

        public YDEFS YDEF
      • ZDEF

        public ZDEFS ZDEF
      • TDEF

        public TDEFS TDEF
      • FILEHEADER

        public int FILEHEADER
      • THEADER

        public int THEADER
      • XYHEADER

        public int XYHEADER
      • isGlobal

        public boolean isGlobal
      • RecordLen

        public int RecordLen
      • RecLenPerTime

        public long RecLenPerTime
      • X

        public double[] X
      • Y

        public double[] Y
      • XNum

        public int XNum
      • YNum

        public int YNum
    • Constructor Detail

      • GrADSDataInfo

        public GrADSDataInfo​()
        Constructor
    • Method Detail

      • getVarNames

        public java.util.List<java.lang.String> getVarNames​()
        Get variable name list
        Returns:
        Variable names
      • getUpperVariables

        public java.util.List<Variable> getUpperVariables​()
        Get variable list they have upper levels
        Returns:
        Upper variables
      • getUpperVariableNames

        public java.util.List<java.lang.String> getUpperVariableNames​()
        Get variable name list they have upper levels
        Returns:
        Upper variable names
      • getTimes

        public java.util.List<java.util.Date> getTimes​()
        Get time list
        Overrides:
        getTimes in class DataInfo
        Returns:
        Times
      • isBigEndian

        public boolean isBigEndian​()
        Get if is big endian
        Returns:
        Boolean
      • setBigEndian

        public void setBigEndian​(boolean value)
        Set if is big endian
        Parameters:
        value - Boolean
      • canOpen

        public static boolean canOpen​(java.lang.String fileName)
      • readDataInfo

        public void readDataInfo​(java.lang.String aFile)
        Read GrADS data info
        Specified by:
        readDataInfo in class DataInfo
        Parameters:
        aFile - The control file path
      • getGlobalAttributes

        public java.util.List<ucar.nc2.Attribute> getGlobalAttributes​()
        Get global attributes
        Specified by:
        getGlobalAttributes in class DataInfo
        Returns:
        Global attributes
      • read

        public ucar.ma2.Array read​(java.lang.String varName)
        Read array data of a variable
        Specified by:
        read in class DataInfo
        Parameters:
        varName - Variable name
        Returns:
        Array data
      • read

        public ucar.ma2.Array read​(java.lang.String varName,
                                   int[] origin,
                                   int[] size,
                                   int[] stride)
        Read array data of the variable
        Specified by:
        read in class DataInfo
        Parameters:
        varName - Variable name
        origin - The origin array
        size - The size array
        stride - The stride array
        Returns:
        Array data
      • getGridArray

        public GridArray getGridArray​(java.lang.String varName)
        Get grid data
        Specified by:
        getGridArray in interface IGridDataInfo
        Parameters:
        varName - Variable name
        Returns:
        Grid data
      • getGridData_LonLat

        public GridData getGridData_LonLat​(int timeIdx,
                                           int varIdx,
                                           int levelIdx)
        Read GrADS grid data - lon/lat
        Specified by:
        getGridData_LonLat in interface IGridDataInfo
        Parameters:
        timeIdx - Time index
        varIdx - Variable index
        levelIdx - Level index
        Returns:
        Grid data
      • getGridData_TimeLat

        public GridData getGridData_TimeLat​(int lonIdx,
                                            int varIdx,
                                            int levelIdx)
        Description copied from interface: IGridDataInfo
        Read grid data - time/lat
        Specified by:
        getGridData_TimeLat in interface IGridDataInfo
        Parameters:
        lonIdx - Longitude index
        varIdx - Variable index
        levelIdx - Level index
        Returns:
        Grid data
      • getGridData_TimeLon

        public GridData getGridData_TimeLon​(int latIdx,
                                            int varIdx,
                                            int levelIdx)
        Description copied from interface: IGridDataInfo
        Read grid data - time/lon
        Specified by:
        getGridData_TimeLon in interface IGridDataInfo
        Parameters:
        latIdx - Latitude index
        varIdx - Variable index
        levelIdx - Level index
        Returns:
        Grid data
      • getGridData_LevelLat

        public GridData getGridData_LevelLat​(int lonIdx,
                                             int varIdx,
                                             int timeIdx)
        Description copied from interface: IGridDataInfo
        Read grid data - level/lat
        Specified by:
        getGridData_LevelLat in interface IGridDataInfo
        Parameters:
        lonIdx - Longitude index
        varIdx - Variable index
        timeIdx - Time index
        Returns:
        Grid data
      • getGridData_LevelLon

        public GridData getGridData_LevelLon​(int latIdx,
                                             int varIdx,
                                             int timeIdx)
        Description copied from interface: IGridDataInfo
        Read grid data - Level/lon
        Specified by:
        getGridData_LevelLon in interface IGridDataInfo
        Parameters:
        latIdx - Latitude index
        varIdx - Variable index
        timeIdx - Time index
        Returns:
        Grid data
      • getGridData_LevelTime

        public GridData getGridData_LevelTime​(int latIdx,
                                              int varIdx,
                                              int lonIdx)
        Description copied from interface: IGridDataInfo
        Read grid data - Level/time
        Specified by:
        getGridData_LevelTime in interface IGridDataInfo
        Parameters:
        latIdx - Latitude index
        varIdx - Variable index
        lonIdx - Longitude index
        Returns:
        Grid data
      • getGridData_Time

        public GridData getGridData_Time​(int lonIdx,
                                         int latIdx,
                                         int varIdx,
                                         int levelIdx)
        Description copied from interface: IGridDataInfo
        Read grid data - time
        Specified by:
        getGridData_Time in interface IGridDataInfo
        Parameters:
        lonIdx - Lontitude index
        latIdx - Latitude index
        varIdx - Variable index
        levelIdx - Level index
        Returns:
        Grid data
      • getGridData_Level

        public GridData getGridData_Level​(int lonIdx,
                                          int latIdx,
                                          int varIdx,
                                          int timeIdx)
        Description copied from interface: IGridDataInfo
        Read grid data - level
        Specified by:
        getGridData_Level in interface IGridDataInfo
        Parameters:
        lonIdx - Lontitude index
        latIdx - Latitude index
        varIdx - Variable index
        timeIdx - Time index
        Returns:
        Grid data
      • getGridData_Lon

        public GridData getGridData_Lon​(int timeIdx,
                                        int latIdx,
                                        int varIdx,
                                        int levelIdx)
        Description copied from interface: IGridDataInfo
        Read grid data - longitude
        Specified by:
        getGridData_Lon in interface IGridDataInfo
        Parameters:
        timeIdx - Time index
        latIdx - Latitude index
        varIdx - Variable index
        levelIdx - Level index
        Returns:
        Grid data
      • getGridData_Lat

        public GridData getGridData_Lat​(int timeIdx,
                                        int lonIdx,
                                        int varIdx,
                                        int levelIdx)
        Description copied from interface: IGridDataInfo
        Read grid data - latitude
        Specified by:
        getGridData_Lat in interface IGridDataInfo
        Parameters:
        timeIdx - Time index
        lonIdx - Lontitude index
        varIdx - Variable index
        levelIdx - Level index
        Returns:
        Grid data
      • getGridData_Station

        public GridData getGridData_Station​(int vIdx,
                                            java.lang.String stID)
        Get GrADS station data
        Parameters:
        vIdx - Variable index
        stID - Station identifer
        Returns:
        Grid data
      • readGrADSData_Station

        public java.util.List<STData> readGrADSData_Station​(int timeIdx)
                                                     throws java.io.FileNotFoundException,
                                                            java.io.UnsupportedEncodingException,
                                                            java.io.IOException
        Read GrADS station data
        Parameters:
        timeIdx - Time index
        Returns:
        Station data list
        Throws:
        java.io.FileNotFoundException
        java.io.UnsupportedEncodingException
        java.io.IOException
      • getGroundStationData

        public StationData getGroundStationData​(java.util.List<STData> stDataList,
                                                int varIdx)
        Get ground station data
        Parameters:
        stDataList - Station data list
        varIdx - Variable index
        Returns:
        Station data
      • getStationData

        public StationData getStationData​(int timeIdx,
                                          int varIdx,
                                          int levelIdx)
        Description copied from interface: IStationDataInfo
        Read station data
        Specified by:
        getStationData in interface IStationDataInfo
        Parameters:
        timeIdx - Time index
        varIdx - Variable index
        levelIdx - Level index
        Returns:
        Station data
      • addTime

        public void addTime​(java.util.Date time)
        Add a time
        Parameters:
        time - The time
      • writeGrADSCTLFile

        public void writeGrADSCTLFile​()
        Write GrADS control file
      • createDataFile

        public void createDataFile​(java.lang.String aFile)
                            throws java.io.IOException
        Create a GrADS binary data file
        Parameters:
        aFile -
        Throws:
        java.io.IOException
      • closeDataFile

        public void closeDataFile​()
                           throws java.io.IOException
        Close the data file created by prevoid step
        Throws:
        java.io.IOException
      • writeGridData

        public void writeGridData​(GridData gridData)
        Write grid data to a GrADS binary data file
        Parameters:
        gridData - Grid data
      • writeGridData

        public void writeGridData​(double[][] gridData)
        Write grid data to a GrADS binary data file
        Parameters:
        gridData - Grid data array
      • writeGrADSData_Grid

        public void writeGrADSData_Grid​(java.io.DataOutputStream bw,
                                        double[][] gridData)
                                 throws java.io.IOException
        Write GrADS grid data
        Parameters:
        bw - EndianDataOutputStream
        gridData - Grid data array
        Throws:
        java.io.IOException
      • writeGridData_Null

        public void writeGridData_Null​()
        Write undefine grid data GrADS data file
      • writeGrADSData_Grid_Null

        public void writeGrADSData_Grid_Null​(java.io.DataOutputStream bw)
        Write undefine grid data to GrADS file
        Parameters:
        bw - DataOutputStream
      • writeStationData

        public void writeStationData​(StationInfoData stInfoData)
        Write GrADS station data
        Parameters:
        stInfoData - Station info data
      • writeStationData

        public void writeStationData​(StationData stData)
        Write station data
        Parameters:
        stData - Station data