Class ARLDataInfo

    • Field Detail

      • isLatLon

        public java.lang.Boolean isLatLon
      • recLen

        public long recLen
      • recsPerTime

        public int recsPerTime
      • LevelVarList

        public java.util.List<java.util.List<java.lang.String>> LevelVarList
      • levelNum

        public int levelNum
      • levels

        public java.util.List<java.lang.Double> levels
      • missingValue

        public double missingValue
      • X

        public double[] X
      • Y

        public double[] Y
      • isGlobal

        public boolean isGlobal
    • Constructor Detail

      • ARLDataInfo

        public ARLDataInfo​()
        Constructor
    • Method Detail

      • setX

        public void setX​(java.util.List<java.lang.Number> value)
        Set X
        Parameters:
        value - X value
      • setY

        public void setY​(java.util.List<java.lang.Number> value)
        Set X
        Parameters:
        value - X value
      • isLargeGrid

        public boolean isLargeGrid​()
        If is large grid sizes
        Returns:
        Boolean
      • canOpen

        public static boolean canOpen​(java.lang.String fileName)
        If can open as ARL data
        Parameters:
        fileName - File name
        Returns:
        Boolean
      • readDataInfo

        public void readDataInfo​(java.lang.String fileName)
        Read data info
        Specified by:
        readDataInfo in class DataInfo
        Parameters:
        fileName - File path
      • getGlobalAttributes

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

        public java.lang.String generateInfoText_bak​()
      • 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)
        Description copied from interface: IGridDataInfo
        Read 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
      • createDataFile

        public void createDataFile​(java.lang.String fileName)
        Create ARL binary data file
        Parameters:
        fileName - File name
      • closeDataFile

        public void closeDataFile​()
        Close the data file created by previos step
      • getDataHead

        public DataHead getDataHead​(ProjectionInfo projInfo,
                                    java.lang.String model,
                                    int kFlag,
                                    int icx,
                                    short mn)
        Get data header of index record
        Parameters:
        projInfo - Projection info
        model - Data source
        kFlag - Level flag
        icx - Forecasting hour
        mn - Minutes
        Returns:
        The data header
      • setIndexRecPos

        public void setIndexRecPos​()
        Set index record position
      • writeIndexRecord

        public void writeIndexRecord​(java.util.Date time,
                                     DataHead aDH,
                                     java.util.List<java.util.List<java.lang.Integer>> ksums)
                              throws java.io.IOException
        Write index record
        Parameters:
        time - The time
        aDH - The data header
        ksums - Checksum list
        Throws:
        java.io.IOException
      • writeGridData

        public void writeGridData​(DataLabel aDL,
                                  GridData gridData)
                           throws java.io.IOException
        Write grid data
        Parameters:
        aDL - The data label
        gridData - The grid data
        Throws:
        java.io.IOException
      • writeGridData

        public int writeGridData​(DataLabel aDL,
                                 ucar.ma2.Array a)
                          throws java.io.IOException
        Write grid data
        Parameters:
        aDL - The data label
        a - The data array
        Returns:
        Check sum
        Throws:
        java.io.IOException
      • writeGridData

        public void writeGridData​(java.util.Date time,
                                  int levelIdx,
                                  java.lang.String varName,
                                  int forecast,
                                  int grid,
                                  GridData gridData)
                           throws java.io.IOException
        Write grid data
        Parameters:
        time - The time
        levelIdx - The level index
        varName - Variable name
        forecast - The forecast hour
        grid - The grid id
        gridData - The grid data
        Throws:
        java.io.IOException - IOException
      • writeGridData

        public int writeGridData​(java.util.Date time,
                                 int levelIdx,
                                 java.lang.String varName,
                                 int forecast,
                                 int grid,
                                 ucar.ma2.Array gridData)
                          throws java.io.IOException
        Write grid data
        Parameters:
        time - The time
        levelIdx - The level index
        varName - Variable name
        forecast - The forecast hour
        grid - The grid id
        gridData - The grid data
        Returns:
        Checksum
        Throws:
        java.io.IOException - IOException