类 ArrayUtil


  • public class ArrayUtil
    extends java.lang.Object
    作者:
    yaqiang
    • 构造器概要

      构造器 
      构造器 说明
      ArrayUtil()  
    • 方法概要

      所有方法 静态方法 实例方法 具体方法 
      修饰符和类型 方法 说明
      static Array argSort​(Array a, java.lang.Integer axis)
      Get sorted array index along an axis
      static Array array​(java.lang.Object data)
      Create an array
      static Array array​(java.lang.Object data, DataType dt)
      Create an array
      static Array array_list​(java.util.List data, DataType dt)
      Create an array
      static Array arrayRange​(java.lang.Number start, java.lang.Number stop, java.lang.Number step)
      Array range
      static Array arrayRange_bak​(java.lang.Number start, java.lang.Number stop, java.lang.Number step)
      Array range
      static Array arrayRange1​(java.lang.Number start, int length, java.lang.Number step)
      Array range
      static java.util.List<Array> arraySplit​(Array a, int sections, int axis)  
      static Array broadcast​(Array a, int[] shape)
      Broadcast array to a new shape
      static Array broadcast​(Array a, java.util.List<java.lang.Integer> shape)
      Broadcast array to a new shape
      static int[] broadcastShapes​(java.util.List<java.util.List<java.lang.Integer>> shapes)
      Broadcast shape list to a new shape
      static Array concatenate​(java.util.List<Array> arrays, java.lang.Integer axis)
      Concatenate arrays to one array along a axis
      static Array concatenate​(Array a, Array b, java.lang.Integer axis)
      Concatenate two arrays to one array along a axis
      static Array convertEncoding​(ArrayChar a, java.lang.String encoding)
      Convert char array encoding from UTF-8
      static java.lang.String convertToString​(Array a)
      Array to string
      protected static void copyTo1DJavaArray​(IndexIterator iter, java.lang.Object javaArray)  
      protected static void copyTo1DJavaArray​(IndexIterator iter, java.lang.Object javaArray, double missingValue)  
      protected static void copyTo1DJavaArray_Long​(IndexIterator iter, java.lang.Object javaArray)  
      static java.lang.Object copyToNDJavaArray​(Array a)
      Convert array to N-Dimension double Java array
      static java.lang.Object copyToNDJavaArray​(Array a, java.lang.String dtype)
      Convert array to N-Dimension double Java array
      static java.lang.Object copyToNDJavaArray_Double​(Array a)
      Convert array to N-Dimension double Java array
      static java.lang.Object copyToNDJavaArray_Double​(Array a, double missingValue)
      Convert array to N-Dimension double Java array
      static java.lang.Object copyToNDJavaArray_Long​(Array a)
      Convert array to N-Dimension double Java array
      static org.meteoinfo.common.io.EndianDataOutputStream createBinFile​(java.lang.String fn)
      Create a binary file
      static Array cressman​(java.util.List<java.lang.Number> x_s, java.util.List<java.lang.Number> y_s, Array v_s, java.util.List<java.lang.Number> X, java.util.List<java.lang.Number> Y, java.util.List<java.lang.Number> radList)
      Cressman analysis
      static Array cressman_bak​(java.util.List<java.lang.Number> x_s, java.util.List<java.lang.Number> y_s, Array v_s, java.util.List<java.lang.Number> X, java.util.List<java.lang.Number> Y, java.util.List<java.lang.Number> radList)
      Cressman analysis
      static java.lang.String dataTypeString​(DataType dt)
      Get data type string
      static Array delete​(Array a, int idx, int axis)
      Return a new array with sub-arrays along an axis deleted
      static Array delete​(Array a, java.util.List<java.lang.Integer> idx, int axis)
      Return a new array with sub-arrays along an axis deleted
      static Array diag​(Array a, int k)
      Extract a diagonal or construct a diagonal array.
      static Array empty​(java.util.List<java.lang.Integer> shape, DataType dtype)
      Get zero array
      static Array[] extendHalfCell​(Array x, Array y)
      Extend the grid to half cell, so the grid points are the centers of the cells
      static Array eye​(int n, int m, int k, DataType dtype)
      Return a 2-D array with ones on the diagonal and zeros elsewhere.
      static java.lang.Object[] findIndices​(java.util.List<java.util.List<java.lang.Number>> points, java.util.List<java.lang.Number> xi)
      Find indices
      static java.lang.Object[] findIndices​(java.util.List<Array> points, Array xi)
      Find indices
      static Array flatNonZero​(Array a)
      Return the flat indices of the elements that are non-zero.
      static Array full​(java.util.List<java.lang.Integer> shape, java.lang.Object fillValue, DataType dtype)
      Return a new array of given shape and type, filled with fill value.
      static Array full​(java.util.List<java.lang.Integer> shape, Array fillValue, DataType dtype)
      Return a new array of given shape and type, filled with fill value.
      static int getDimIndex​(Array dim, java.lang.Number v)
      Get value index in a dimension array
      static java.lang.String getString​(ArrayChar a, java.lang.String encoding)
      Get string from a char array
      static int[] gridIndex​(double[][] xdim, double[][] ydim, double x, double y)
      Get grid array x/y value index
      static int[] gridIndex​(Array xdim, Array ydim, double x, double y)
      Get grid array x/y value index
      static java.util.List<Array> histogram​(Array a, double[] bins)
      Histogram x/y array
      static java.util.List<Array> histogram​(Array a, int nbins)
      Histogram x/y array
      static java.util.List<Array> histogram​(Array a, Array bins)
      Histogram x/y array
      static Array identity​(int n, DataType dtype)
      Return the identity array - a square array with ones on the main diagonal.
      static Array interpn​(java.util.List<Array> points, Array values, java.util.List<Array> xi)
      Multidimensional interpolation on regular grids.
      static java.lang.Object interpn​(java.util.List<Array> points, Array values, Array xi)
      Multidimensional interpolation on regular grids.
      static double interpn_s​(java.util.List<java.util.List<java.lang.Number>> points, Array values, java.util.List<java.lang.Number> xi)
      Multidimensional interpolation on regular grids.
      static double interpn_s​(java.util.List<Array> points, Array values, Array xi)
      Multidimensional interpolation on regular grids.
      Array interpolate​(Array a, java.util.List<java.lang.Number> X, java.util.List<java.lang.Number> Y)
      Interpolate array data
      static Array interpolate_1d​(double x, Array xp, Array a, int axis)
      Interpolates data with any shape over a specified axis.
      static Array interpolate_1d​(Array xa, Array xp, Array a, int axis)
      Interpolates data with any shape over a specified axis.
      static Array interpolation_Inside​(java.util.List<java.lang.Number> x_s, java.util.List<java.lang.Number> y_s, Array a, java.util.List<java.lang.Number> X, java.util.List<java.lang.Number> Y)
      Interpolate with inside method - The grid cell value is the average value of the inside points or fill value if no inside point.
      static java.lang.Object interpolation_Inside_Count​(java.util.List<java.lang.Number> x_s, java.util.List<java.lang.Number> y_s, java.util.List<java.lang.Number> X, java.util.List<java.lang.Number> Y, boolean pointDensity, boolean centerPoint)
      Interpolate with inside method - The grid cell value is the count number of the inside points or fill value if no inside point.
      static Array interpolation_Inside_Max​(java.util.List<java.lang.Number> x_s, java.util.List<java.lang.Number> y_s, Array a, java.util.List<java.lang.Number> X, java.util.List<java.lang.Number> Y)
      Interpolate with inside method - The grid cell value is the maximum value of the inside points or fill value if no inside point.
      static Array interpolation_Inside_Mean​(Array x_s, Array y_s, Array a, Array X, Array Y, boolean center)
      Interpolate with inside method - The grid cell value is the average value of the inside points or fill value if no inside point.
      static Array interpolation_Inside_Min​(java.util.List<java.lang.Number> x_s, java.util.List<java.lang.Number> y_s, Array a, java.util.List<java.lang.Number> X, java.util.List<java.lang.Number> Y)
      Interpolate with inside method - The grid cell value is the minimum value of the inside points or fill value if no inside point.
      static Array interpolation_Nearest_1​(java.util.List<java.lang.Number> x_s, java.util.List<java.lang.Number> y_s, Array a, java.util.List<java.lang.Number> X, java.util.List<java.lang.Number> Y, double radius, double fill_value)
      Interpolate with nearest method
      static Array interpolation_Nearest_bak​(java.util.List<java.lang.Number> x_s, java.util.List<java.lang.Number> y_s, Array a, java.util.List<java.lang.Number> X, java.util.List<java.lang.Number> Y, double radius)
      Interpolate with nearest method
      static Array lineSpace​(java.lang.Number start, java.lang.Number stop, int n, boolean endpoint)
      Array line space
      static Array lineSpace_bak​(java.lang.Number start, java.lang.Number stop, int n, boolean endpoint)
      Array line space
      static Array linint2​(Array a, Array X, Array Y, Array newX, Array newY)
      Interpolates from a rectilinear grid to another rectilinear grid using bilinear interpolation.
      static DataType mergeDataType​(DataType dt1, DataType dt2)
      Merge data type to one data type
      static Array[] meshgrid​(Array x)
      Mesh grid
      static Array[] meshgrid​(Array... xs)
      Mesh grid
      static Array[] meshgrid​(Array x, Array y)
      Mesh grid
      static java.util.List<Array> nonzero​(Array a)
      Return the indices of the elements that are non-zero.
      static int numASCIICol​(java.lang.String fileName, java.lang.String delimiter, int headerLines)
      Get row number of a ASCII file
      static int numASCIIRow​(java.lang.String fileName)
      Get row number of a ASCII file
      static Array ones​(int n)
      Get ones array
      static Array ones​(java.util.List<java.lang.Integer> shape, DataType dtype)
      Get ones array
      static double rand()
      Get random value
      static Array rand​(int n)
      Get random array - one dimension
      static Array rand​(java.util.List<java.lang.Integer> shape)
      Get random array
      static Array readASCIIFile​(java.lang.String fileName, java.lang.String delimiter, int headerLines, java.lang.String dataType, java.util.List<java.lang.Integer> shape, boolean readFirstCol)
      Read ASCII data file to an array
      static Array readASCIIFile​(java.lang.String fileName, java.lang.String delimiter, int headerLines, DataType dataType, java.util.List<java.lang.Integer> shape, boolean readFirstCol)
      Read ASCII data file to an array
      static Array readASCIIFile​(java.lang.String fileName, DataType dataType, int count, java.lang.String delimiter)
      Read ASCII data file to an array
      static Array readBinFile​(java.lang.String fn, java.util.List<java.lang.Integer> dims, java.lang.String dataType, int skip, java.lang.String byteOrder)
      Read array from a binary file
      static Array readBinFile​(java.lang.String fn, DataType dataType, int count, int offset)
      Read array from a binary file
      static Array readBinFile​(java.lang.String fn, DataType dataType, int count, int offset, java.lang.String byteOrder)
      Read array from a binary file
      static Array repeat​(java.lang.Number v, int n)
      Repeat a value n times
      static Array repeat​(Array a, java.util.List<java.lang.Integer> repeats)
      Repeat elements of an array.
      static Array repeat​(Array a, java.util.List<java.lang.Integer> repeats, int axis)
      Repeat elements of an array.
      static Array resample_Bilinear​(Array a, java.util.List<java.lang.Number> X, java.util.List<java.lang.Number> Y, java.util.List<java.lang.Number> newX, java.util.List<java.lang.Number> newY)
      Resample grid array with bilinear method
      static Array resample_Bilinear​(Array a, Array X, Array Y, Array newX, Array newY)
      Resample grid array with bilinear method
      static Array resample_Neighbor​(Array a, Array X, Array Y, Array newX, Array newY)
      Resample grid array with neighbor method
      static void saveASCIIFile​(java.lang.String fn, Array a, int colNum, java.lang.String format, java.lang.String delimiter)
      Save an array data to a ASCII file
      static void saveBinFile​(java.lang.String fn, Array a, java.lang.String byteOrder, boolean append, boolean sequential)
      Save an array data to a binary file
      static int searchSorted​(java.util.List<java.lang.Number> a, double v)
      Search sorted list index
      static int searchSorted​(Array a, double v)
      Search sorted list index
      static int searchSorted​(Array a, java.lang.Number v, boolean left)
      Find indices where elements should be inserted to maintain order.
      static Array searchSorted​(Array a, Array v, boolean left)
      Find indices where elements should be inserted to maintain order.
      static Array slice​(Array a, int axis, int idx)
      Get slice array along an axis
      static Array slice​(Array a, int axis, Array dim, double v)
      Get slice array along an axis
      static Array smooth5​(Array a)
      Smooth with 5 points
      static Array smooth5​(Array a, int rowNum, int colNum, double unDefData)
      Smooth with 5 points
      static Array smooth9​(Array a)
      Smooth with 9 points
      static Array sort​(Array a, java.lang.Integer axis)
      Sort array along an axis
      static Array tile​(java.lang.Number v, int n)
      Repeat a value n times
      static Array tile​(java.lang.Number v, java.util.List<java.lang.Integer> repeats)
      Repeat a value n times
      static Array tile​(Array a, java.util.List<java.lang.Integer> repeats)
      Repeat elements of an array.
      static Array toBoolean​(Array a)
      Convert array to boolean type
      static DataType toDataType​(java.lang.String dt)
      To data type - ucar.ma2
      static Array toDate​(Array a)
      Convert array to date type
      static Array toDouble​(Array a)
      Convert array to double type
      static Array toFloat​(Array a)
      Convert array to float type
      static Array toInteger​(Array a)
      Convert array to integer type
      static double toStation​(Array data, java.util.List<java.lang.Number> xArray, java.util.List<java.lang.Number> yArray, double x, double y)
      Interpolate data to a station point
      static double toStation​(Array data, java.util.List<java.lang.Number> xArray, java.util.List<java.lang.Number> yArray, double x, double y, double missingValue)
      Interpolate data to a station point
      static double toStation​(Array data, Array xArray, Array yArray, double x, double y)
      Interpolate data to a station point
      static double toStation_Neighbor​(Array data, java.util.List<java.lang.Number> xArray, java.util.List<java.lang.Number> yArray, double x, double y)
      Interpolate data to a station point
      static double toStation_Neighbor​(Array data, java.util.List<java.lang.Number> xArray, java.util.List<java.lang.Number> yArray, double x, double y, double missingValue)
      Interpolate data to a station point
      static double toStation_Neighbor​(Array data, Array xArray, Array yArray, double x, double y)
      Interpolate data to a station point
      static java.lang.String toString_old​(Array a)
      Array to string
      static Array unique​(Array a, java.lang.Integer axis)
      Find the unique elements of an array.
      static Array view​(Array a)
      New view of array with the same data.
      static void writeBinFile​(org.meteoinfo.common.io.EndianDataOutputStream outs, Array a, java.lang.String byteOrder, boolean sequential)
      Save an array data to a binary file
      static Array zeros​(int n)
      Get zero array
      static Array zeros​(java.util.List<java.lang.Integer> shape, java.lang.String dtype)
      Get zero array
      static Array zeros​(java.util.List<java.lang.Integer> shape, DataType dtype)
      Get zero array
      • 从类继承的方法 java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • 构造器详细资料

      • ArrayUtil

        public ArrayUtil()
    • 方法详细资料

      • readASCIIFile

        public static Array readASCIIFile​(java.lang.String fileName,
                                          java.lang.String delimiter,
                                          int headerLines,
                                          java.lang.String dataType,
                                          java.util.List<java.lang.Integer> shape,
                                          boolean readFirstCol)
                                   throws java.io.UnsupportedEncodingException,
                                          java.io.FileNotFoundException,
                                          java.io.IOException
        Read ASCII data file to an array
        参数:
        fileName - File name
        delimiter - Delimiter
        headerLines - Headerline number
        dataType - Data type string
        shape - Shape
        readFirstCol - Read first column data or not
        返回:
        Result array
        抛出:
        java.io.UnsupportedEncodingException
        java.io.FileNotFoundException
        java.io.IOException
      • readASCIIFile

        public static Array readASCIIFile​(java.lang.String fileName,
                                          java.lang.String delimiter,
                                          int headerLines,
                                          DataType dataType,
                                          java.util.List<java.lang.Integer> shape,
                                          boolean readFirstCol)
                                   throws java.io.UnsupportedEncodingException,
                                          java.io.FileNotFoundException,
                                          java.io.IOException
        Read ASCII data file to an array
        参数:
        fileName - File name
        delimiter - Delimiter
        headerLines - Headerline number
        dataType - Data type
        shape - Shape
        readFirstCol - Read first column data or not
        返回:
        Result array
        抛出:
        java.io.UnsupportedEncodingException
        java.io.FileNotFoundException
        java.io.IOException
      • readASCIIFile

        public static Array readASCIIFile​(java.lang.String fileName,
                                          DataType dataType,
                                          int count,
                                          java.lang.String delimiter)
                                   throws java.io.UnsupportedEncodingException,
                                          java.io.FileNotFoundException,
                                          java.io.IOException
        Read ASCII data file to an array
        参数:
        fileName - File name
        dataType - Data type
        count - Number of items to read
        delimiter - Delimiter
        返回:
        Result array
        抛出:
        java.io.UnsupportedEncodingException
        java.io.FileNotFoundException
        java.io.IOException
      • numASCIIRow

        public static int numASCIIRow​(java.lang.String fileName)
                               throws java.io.FileNotFoundException
        Get row number of a ASCII file
        参数:
        fileName - File name
        返回:
        Row number
        抛出:
        java.io.FileNotFoundException
      • numASCIICol

        public static int numASCIICol​(java.lang.String fileName,
                                      java.lang.String delimiter,
                                      int headerLines)
                               throws java.io.FileNotFoundException,
                                      java.io.IOException
        Get row number of a ASCII file
        参数:
        fileName - File name
        delimiter -
        headerLines -
        返回:
        Row number
        抛出:
        java.io.FileNotFoundException
        java.io.IOException
      • createBinFile

        public static org.meteoinfo.common.io.EndianDataOutputStream createBinFile​(java.lang.String fn)
                                                                            throws java.io.IOException
        Create a binary file
        参数:
        fn - The file path
        返回:
        EndianDataOutputStream
        抛出:
        java.io.IOException
      • writeBinFile

        public static void writeBinFile​(org.meteoinfo.common.io.EndianDataOutputStream outs,
                                        Array a,
                                        java.lang.String byteOrder,
                                        boolean sequential)
        Save an array data to a binary file
        参数:
        outs - EndianDataOutputStream
        a - Array
        byteOrder - Byte order
        sequential - If write as sequential binary file - Fortran
      • saveBinFile

        public static void saveBinFile​(java.lang.String fn,
                                       Array a,
                                       java.lang.String byteOrder,
                                       boolean append,
                                       boolean sequential)
        Save an array data to a binary file
        参数:
        fn - File path
        a - Array
        byteOrder - Byte order
        append - If append to existing file
        sequential - If write as sequential binary file - Fortran
      • saveASCIIFile

        public static void saveASCIIFile​(java.lang.String fn,
                                         Array a,
                                         int colNum,
                                         java.lang.String format,
                                         java.lang.String delimiter)
                                  throws java.io.IOException
        Save an array data to a ASCII file
        参数:
        fn - File path
        a - Array
        colNum - Column number of each line
        format - String format
        delimiter - Delimiter
        抛出:
        java.io.IOException
      • readBinFile

        public static Array readBinFile​(java.lang.String fn,
                                        java.util.List<java.lang.Integer> dims,
                                        java.lang.String dataType,
                                        int skip,
                                        java.lang.String byteOrder)
        Read array from a binary file
        参数:
        fn - Binary file name
        dims - Dimensions
        dataType - Data type string
        skip - Skip bytes
        byteOrder - Byte order
        返回:
        Result array
      • readBinFile

        public static Array readBinFile​(java.lang.String fn,
                                        DataType dataType,
                                        int count,
                                        int offset)
                                 throws java.io.IOException
        Read array from a binary file
        参数:
        fn - Binary file name
        dataType - Data type
        count - Number of items to read. -1 means all items (i.e., the complete file)
        offset - Offset bytes
        返回:
        Result array
        抛出:
        java.io.IOException
      • readBinFile

        public static Array readBinFile​(java.lang.String fn,
                                        DataType dataType,
                                        int count,
                                        int offset,
                                        java.lang.String byteOrder)
                                 throws java.io.IOException
        Read array from a binary file
        参数:
        fn - Binary file name
        dataType - Data type
        count - Number of items to read. -1 means all items (i.e., the complete file)
        offset - Offset bytes
        byteOrder - Byte order
        返回:
        Result array
        抛出:
        java.io.IOException
      • array

        public static Array array​(java.lang.Object data)
        Create an array
        参数:
        data - Object
        返回:
        Array
      • array

        public static Array array​(java.lang.Object data,
                                  DataType dt)
        Create an array
        参数:
        data - Object
        dt - Data type
        返回:
        Array
      • array_list

        public static Array array_list​(java.util.List data,
                                       DataType dt)
        Create an array
        参数:
        data - Array like data
        dt - Data type
        返回:
        Array
      • view

        public static Array view​(Array a)
        New view of array with the same data.
        参数:
        a - Input array
        返回:
        View array
      • arrayRange_bak

        public static Array arrayRange_bak​(java.lang.Number start,
                                           java.lang.Number stop,
                                           java.lang.Number step)
        Array range
        参数:
        start - Start value
        stop - Stop value
        step - Step value
        返回:
        Array
      • arrayRange

        public static Array arrayRange​(java.lang.Number start,
                                       java.lang.Number stop,
                                       java.lang.Number step)
        Array range
        参数:
        start - Start value
        stop - Stop value
        step - Step value
        返回:
        Array
      • arrayRange1

        public static Array arrayRange1​(java.lang.Number start,
                                        int length,
                                        java.lang.Number step)
        Array range
        参数:
        start - Start value
        length - Length
        step - Step value
        返回:
        Array
      • lineSpace

        public static Array lineSpace​(java.lang.Number start,
                                      java.lang.Number stop,
                                      int n,
                                      boolean endpoint)
        Array line space
        参数:
        start - Start value
        stop - Stop value
        n - Number value
        endpoint - If stop is included
        返回:
        Array
      • lineSpace_bak

        public static Array lineSpace_bak​(java.lang.Number start,
                                          java.lang.Number stop,
                                          int n,
                                          boolean endpoint)
        Array line space
        参数:
        start - Start value
        stop - Stop value
        n - Number value
        endpoint - If stop is included
        返回:
        Array
      • zeros

        public static Array zeros​(int n)
        Get zero array
        参数:
        n - Number
        返回:
        Array
      • zeros

        public static Array zeros​(java.util.List<java.lang.Integer> shape,
                                  java.lang.String dtype)
        Get zero array
        参数:
        shape - Shape
        dtype - Data type
        返回:
        Array Result array
      • zeros

        public static Array zeros​(java.util.List<java.lang.Integer> shape,
                                  DataType dtype)
        Get zero array
        参数:
        shape - Shape
        dtype - Data type
        返回:
        Array Result array
      • empty

        public static Array empty​(java.util.List<java.lang.Integer> shape,
                                  DataType dtype)
        Get zero array
        参数:
        shape - Shape
        dtype - Data type
        返回:
        Array Result array
      • full

        public static Array full​(java.util.List<java.lang.Integer> shape,
                                 java.lang.Object fillValue,
                                 DataType dtype)
        Return a new array of given shape and type, filled with fill value.
        参数:
        shape - Shape
        fillValue - Fill value
        dtype - Data type
        返回:
        Array Result array
      • full

        public static Array full​(java.util.List<java.lang.Integer> shape,
                                 Array fillValue,
                                 DataType dtype)
        Return a new array of given shape and type, filled with fill value.
        参数:
        shape - Shape
        fillValue - Fill value array
        dtype - Data type
        返回:
        Array Result array
      • ones

        public static Array ones​(int n)
        Get ones array
        参数:
        n - Number
        返回:
        Array Result array
      • ones

        public static Array ones​(java.util.List<java.lang.Integer> shape,
                                 DataType dtype)
        Get ones array
        参数:
        shape - Shape
        dtype - Data type
        返回:
        Array Result array
      • identity

        public static Array identity​(int n,
                                     DataType dtype)
        Return the identity array - a square array with ones on the main diagonal.
        参数:
        n - Number of rows (and columns) in n x n output.
        dtype - Data type
        返回:
        Identity array
      • eye

        public static Array eye​(int n,
                                int m,
                                int k,
                                DataType dtype)
        Return a 2-D array with ones on the diagonal and zeros elsewhere.
        参数:
        n - Number of rows in the output.
        m - Number of columns in the output.
        k - Index of the diagonal: 0 (the default) refers to the main diagonal, a positive value refers to an upper diagonal, and a negative value to a lower diagonal.
        dtype - Data type
        返回:
        Created array
      • diag

        public static Array diag​(Array a,
                                 int k)
        Extract a diagonal or construct a diagonal array.
        参数:
        a - If a is a 2-D array, return a copy of its k-th diagonal. If a is a 1-D array, return a 2-D array with a on the k-th diagonal.
        k - Diagonal in question.
        返回:
        Diagonal array
      • repeat

        public static Array repeat​(java.lang.Number v,
                                   int n)
        Repeat a value n times
        参数:
        v - The value
        n - N times
        返回:
        Repeated array
      • repeat

        public static Array repeat​(Array a,
                                   java.util.List<java.lang.Integer> repeats)
        Repeat elements of an array.
        参数:
        a - The value
        repeats - The number of repetitions for each element
        返回:
        Repeated array
      • repeat

        public static Array repeat​(Array a,
                                   java.util.List<java.lang.Integer> repeats,
                                   int axis)
        Repeat elements of an array.
        参数:
        a - The value
        repeats - The number of repetitions for each element
        axis - The axis
        返回:
        Repeated array
      • tile

        public static Array tile​(java.lang.Number v,
                                 int n)
        Repeat a value n times
        参数:
        v - The value
        n - N times
        返回:
        Repeated array
      • tile

        public static Array tile​(java.lang.Number v,
                                 java.util.List<java.lang.Integer> repeats)
        Repeat a value n times
        参数:
        v - The value
        repeats - The number of repetitions for each element
        返回:
        Repeated array
      • tile

        public static Array tile​(Array a,
                                 java.util.List<java.lang.Integer> repeats)
        Repeat elements of an array.
        参数:
        a - The value
        repeats - The number of repetitions for each element
        返回:
        Repeated array
      • rand

        public static double rand()
        Get random value
        返回:
        Random value
      • rand

        public static Array rand​(int n)
        Get random array - one dimension
        参数:
        n - Array length
        返回:
        Result array
      • rand

        public static Array rand​(java.util.List<java.lang.Integer> shape)
        Get random array
        参数:
        shape - Shape
        返回:
        Array Result array
      • mergeDataType

        public static DataType mergeDataType​(DataType dt1,
                                             DataType dt2)
        Merge data type to one data type
        参数:
        dt1 - Data type 1
        dt2 - Data type 2
        返回:
        Merged data type
      • nonzero

        public static java.util.List<Array> nonzero​(Array a)
        Return the indices of the elements that are non-zero.
        参数:
        a - Input array
        返回:
        Indices
      • flatNonZero

        public static Array flatNonZero​(Array a)
        Return the flat indices of the elements that are non-zero.
        参数:
        a - Input array
        返回:
        Flat indices
      • convertToString

        public static java.lang.String convertToString​(Array a)
        Array to string
        参数:
        a - Array a
        返回:
        String
      • toString_old

        public static java.lang.String toString_old​(Array a)
        Array to string
        参数:
        a - Array a
        返回:
        String
      • dataTypeString

        public static java.lang.String dataTypeString​(DataType dt)
        Get data type string
        参数:
        dt - The data type
        返回:
        Data type string
      • toDataType

        public static DataType toDataType​(java.lang.String dt)
        To data type - ucar.ma2
        参数:
        dt - Data type string
        返回:
        Data type
      • toInteger

        public static Array toInteger​(Array a)
        Convert array to integer type
        参数:
        a - Array a
        返回:
        Result array
      • toFloat

        public static Array toFloat​(Array a)
        Convert array to float type
        参数:
        a - Array a
        返回:
        Result array
      • toDouble

        public static Array toDouble​(Array a)
        Convert array to double type
        参数:
        a - Array a
        返回:
        Result array
      • toBoolean

        public static Array toBoolean​(Array a)
        Convert array to boolean type
        参数:
        a - Array a
        返回:
        Result array
      • toDate

        public static Array toDate​(Array a)
        Convert array to date type
        参数:
        a - Array a
        返回:
        Result array
      • convertEncoding

        public static Array convertEncoding​(ArrayChar a,
                                            java.lang.String encoding)
        Convert char array encoding from UTF-8
        参数:
        a - Char array
        encoding - The encoding convert to
        返回:
        Converted array
      • getString

        public static java.lang.String getString​(ArrayChar a,
                                                 java.lang.String encoding)
        Get string from a char array
        参数:
        a - Char array
        encoding - The encoding convert to
        返回:
        The string
      • concatenate

        public static Array concatenate​(java.util.List<Array> arrays,
                                        java.lang.Integer axis)
                                 throws InvalidRangeException
        Concatenate arrays to one array along a axis
        参数:
        arrays - Array list
        axis - The axis
        返回:
        Concatenated array
        抛出:
        InvalidRangeException
      • arraySplit

        public static java.util.List<Array> arraySplit​(Array a,
                                                       int sections,
                                                       int axis)
      • searchSorted

        public static int searchSorted​(Array a,
                                       java.lang.Number v,
                                       boolean left)
        Find indices where elements should be inserted to maintain order.
        参数:
        a - Input array
        v - Value
        left - Left side or right side
        返回:
        indices
      • searchSorted

        public static Array searchSorted​(Array a,
                                         Array v,
                                         boolean left)
        Find indices where elements should be inserted to maintain order.
        参数:
        a - Input array
        v - Value array
        left - Left side or right side
        返回:
        indices
      • copyToNDJavaArray

        public static java.lang.Object copyToNDJavaArray​(Array a,
                                                         java.lang.String dtype)
        Convert array to N-Dimension double Java array
        参数:
        a - Array a
        dtype - Data type string
        返回:
        N-D Java array
      • copyToNDJavaArray

        public static java.lang.Object copyToNDJavaArray​(Array a)
        Convert array to N-Dimension double Java array
        参数:
        a - Array a
        返回:
        N-D Java array
      • copyToNDJavaArray_Long

        public static java.lang.Object copyToNDJavaArray_Long​(Array a)
        Convert array to N-Dimension double Java array
        参数:
        a - Array a
        返回:
        N-D Java array
      • copyToNDJavaArray_Double

        public static java.lang.Object copyToNDJavaArray_Double​(Array a)
        Convert array to N-Dimension double Java array
        参数:
        a - Array a
        返回:
        N-D Java array
      • copyToNDJavaArray_Double

        public static java.lang.Object copyToNDJavaArray_Double​(Array a,
                                                                double missingValue)
        Convert array to N-Dimension double Java array
        参数:
        a - Array a
        missingValue - The missing value
        返回:
        N-D Java array
      • copyTo1DJavaArray

        protected static void copyTo1DJavaArray​(IndexIterator iter,
                                                java.lang.Object javaArray)
      • copyTo1DJavaArray

        protected static void copyTo1DJavaArray​(IndexIterator iter,
                                                java.lang.Object javaArray,
                                                double missingValue)
      • copyTo1DJavaArray_Long

        protected static void copyTo1DJavaArray_Long​(IndexIterator iter,
                                                     java.lang.Object javaArray)
      • delete

        public static Array delete​(Array a,
                                   int idx,
                                   int axis)
        Return a new array with sub-arrays along an axis deleted
        参数:
        a - Input array
        idx - Index
        axis - The axis
        返回:
      • delete

        public static Array delete​(Array a,
                                   java.util.List<java.lang.Integer> idx,
                                   int axis)
        Return a new array with sub-arrays along an axis deleted
        参数:
        a - Input array
        idx - Index
        axis - The axis
        返回:
      • histogram

        public static java.util.List<Array> histogram​(Array a,
                                                      int nbins)
        Histogram x/y array
        参数:
        a - Data array
        nbins - bin number
        返回:
        X/Y arrays
      • histogram

        public static java.util.List<Array> histogram​(Array a,
                                                      Array bins)
        Histogram x/y array
        参数:
        a - Data array
        bins - bin edges
        返回:
        X/Y arrays
      • histogram

        public static java.util.List<Array> histogram​(Array a,
                                                      double[] bins)
        Histogram x/y array
        参数:
        a - Data array
        bins - bin edges
        返回:
        X/Y arrays
      • broadcastShapes

        public static int[] broadcastShapes​(java.util.List<java.util.List<java.lang.Integer>> shapes)
        Broadcast shape list to a new shape
        参数:
        shapes - The shape list
        返回:
        Result shape
      • broadcast

        public static Array broadcast​(Array a,
                                      int[] shape)
        Broadcast array to a new shape
        参数:
        a - Array a
        shape - Shape
        返回:
        Result array
      • broadcast

        public static Array broadcast​(Array a,
                                      java.util.List<java.lang.Integer> shape)
        Broadcast array to a new shape
        参数:
        a - Array a
        shape - Shape
        返回:
        Result array
      • meshgrid

        public static Array[] meshgrid​(Array x,
                                       Array y)
        Mesh grid
        参数:
        x - X array - vector
        y - Y array - vector
        返回:
        Result arrays - matrix
      • meshgrid

        public static Array[] meshgrid​(Array x)
        Mesh grid
        参数:
        x - X array - vector
        返回:
        Result arrays - matrix
      • meshgrid

        public static Array[] meshgrid​(Array... xs)
        Mesh grid
        参数:
        xs - X arrays
        返回:
        Result arrays - matrix
      • smooth5

        public static Array smooth5​(Array a,
                                    int rowNum,
                                    int colNum,
                                    double unDefData)
        Smooth with 5 points
        参数:
        a - Array
        rowNum - Row number
        colNum - Column number
        unDefData - Missing value
        返回:
        Result array
      • smooth5

        public static Array smooth5​(Array a)
        Smooth with 5 points
        参数:
        a - Array
        返回:
        Result array
      • smooth9

        public static Array smooth9​(Array a)
        Smooth with 9 points
        参数:
        a - Array
        返回:
        Result array
      • interpolation_Nearest_1

        public static Array interpolation_Nearest_1​(java.util.List<java.lang.Number> x_s,
                                                    java.util.List<java.lang.Number> y_s,
                                                    Array a,
                                                    java.util.List<java.lang.Number> X,
                                                    java.util.List<java.lang.Number> Y,
                                                    double radius,
                                                    double fill_value)
        Interpolate with nearest method
        参数:
        x_s - scatter X array
        y_s - scatter Y array
        a - scatter value array
        X - x coordinate
        Y - y coordinate
        radius - Radius
        fill_value - undefine value
        返回:
        grid data
      • interpolation_Nearest_bak

        public static Array interpolation_Nearest_bak​(java.util.List<java.lang.Number> x_s,
                                                      java.util.List<java.lang.Number> y_s,
                                                      Array a,
                                                      java.util.List<java.lang.Number> X,
                                                      java.util.List<java.lang.Number> Y,
                                                      double radius)
        Interpolate with nearest method
        参数:
        x_s - scatter X array
        y_s - scatter Y array
        a - scatter value array
        X - x coordinate
        Y - y coordinate
        radius - Radius
        返回:
        grid data
      • extendHalfCell

        public static Array[] extendHalfCell​(Array x,
                                             Array y)
        Extend the grid to half cell, so the grid points are the centers of the cells
        参数:
        x - Input x coordinate
        y - Input y coordinate
        返回:
        Result x and y coordinates
      • interpolation_Inside

        public static Array interpolation_Inside​(java.util.List<java.lang.Number> x_s,
                                                 java.util.List<java.lang.Number> y_s,
                                                 Array a,
                                                 java.util.List<java.lang.Number> X,
                                                 java.util.List<java.lang.Number> Y)
        Interpolate with inside method - The grid cell value is the average value of the inside points or fill value if no inside point.
        参数:
        x_s - scatter X array
        y_s - scatter Y array
        a - scatter value array
        X - x coordinate
        Y - y coordinate
        返回:
        grid data
      • interpolation_Inside_Mean

        public static Array interpolation_Inside_Mean​(Array x_s,
                                                      Array y_s,
                                                      Array a,
                                                      Array X,
                                                      Array Y,
                                                      boolean center)
        Interpolate with inside method - The grid cell value is the average value of the inside points or fill value if no inside point.
        参数:
        x_s - scatter X array
        y_s - scatter Y array
        a - scatter value array
        X - x coordinate
        Y - y coordinate
        center - If the grid point is center or border
        返回:
        grid data
      • interpolation_Inside_Max

        public static Array interpolation_Inside_Max​(java.util.List<java.lang.Number> x_s,
                                                     java.util.List<java.lang.Number> y_s,
                                                     Array a,
                                                     java.util.List<java.lang.Number> X,
                                                     java.util.List<java.lang.Number> Y)
        Interpolate with inside method - The grid cell value is the maximum value of the inside points or fill value if no inside point.
        参数:
        x_s - scatter X array
        y_s - scatter Y array
        a - scatter value array
        X - x coordinate
        Y - y coordinate
        返回:
        grid data
      • interpolation_Inside_Min

        public static Array interpolation_Inside_Min​(java.util.List<java.lang.Number> x_s,
                                                     java.util.List<java.lang.Number> y_s,
                                                     Array a,
                                                     java.util.List<java.lang.Number> X,
                                                     java.util.List<java.lang.Number> Y)
        Interpolate with inside method - The grid cell value is the minimum value of the inside points or fill value if no inside point.
        参数:
        x_s - scatter X array
        y_s - scatter Y array
        a - scatter value array
        X - x coordinate
        Y - y coordinate
        返回:
        grid data
      • interpolation_Inside_Count

        public static java.lang.Object interpolation_Inside_Count​(java.util.List<java.lang.Number> x_s,
                                                                  java.util.List<java.lang.Number> y_s,
                                                                  java.util.List<java.lang.Number> X,
                                                                  java.util.List<java.lang.Number> Y,
                                                                  boolean pointDensity,
                                                                  boolean centerPoint)
        Interpolate with inside method - The grid cell value is the count number of the inside points or fill value if no inside point.
        参数:
        x_s - scatter X array
        y_s - scatter Y array
        X - x coordinate
        Y - y coordinate
        pointDensity - If return point density value
        centerPoint - points locate at center or border of grid
        返回:
        grid data
      • cressman

        public static Array cressman​(java.util.List<java.lang.Number> x_s,
                                     java.util.List<java.lang.Number> y_s,
                                     Array v_s,
                                     java.util.List<java.lang.Number> X,
                                     java.util.List<java.lang.Number> Y,
                                     java.util.List<java.lang.Number> radList)
        Cressman analysis
        参数:
        x_s - scatter X array
        y_s - scatter Y array
        v_s - scatter value array
        X - x array
        Y - y array
        radList - radii list
        返回:
        result grid data
      • cressman_bak

        public static Array cressman_bak​(java.util.List<java.lang.Number> x_s,
                                         java.util.List<java.lang.Number> y_s,
                                         Array v_s,
                                         java.util.List<java.lang.Number> X,
                                         java.util.List<java.lang.Number> Y,
                                         java.util.List<java.lang.Number> radList)
        Cressman analysis
        参数:
        x_s - scatter X array
        y_s - scatter Y array
        v_s - scatter value array
        X - x array
        Y - y array
        radList - radii list
        返回:
        result grid data
      • linint2

        public static Array linint2​(Array a,
                                    Array X,
                                    Array Y,
                                    Array newX,
                                    Array newY)
        Interpolates from a rectilinear grid to another rectilinear grid using bilinear interpolation.
        参数:
        a - The sample array
        X - X coordinate of the sample array
        Y - Y coordinate of the sample array
        newX - X coordinate of the query points
        newY - Y coordinate of the query points
        返回:
        Resampled array
      • slice

        public static Array slice​(Array a,
                                  int axis,
                                  Array dim,
                                  double v)
                           throws InvalidRangeException
        Get slice array along an axis
        参数:
        a - The original array
        axis - The axis
        dim - axis dimension array
        v - axis value of slice
        返回:
        Slice array
        抛出:
        InvalidRangeException
      • resample_Bilinear

        public static Array resample_Bilinear​(Array a,
                                              java.util.List<java.lang.Number> X,
                                              java.util.List<java.lang.Number> Y,
                                              java.util.List<java.lang.Number> newX,
                                              java.util.List<java.lang.Number> newY)
        Resample grid array with bilinear method
        参数:
        a - The sample array
        X - X coordinate of the sample array
        Y - Y coordinate of the sample array
        newX - X coordinate of the query points
        newY - Y coordinate of the query points
        返回:
        Resampled array
      • resample_Bilinear

        public static Array resample_Bilinear​(Array a,
                                              Array X,
                                              Array Y,
                                              Array newX,
                                              Array newY)
        Resample grid array with bilinear method
        参数:
        a - The sample array
        X - X coordinate of the sample array
        Y - Y coordinate of the sample array
        newX - X coordinate of the query points
        newY - Y coordinate of the query points
        返回:
        Resampled array
      • resample_Neighbor

        public static Array resample_Neighbor​(Array a,
                                              Array X,
                                              Array Y,
                                              Array newX,
                                              Array newY)
        Resample grid array with neighbor method
        参数:
        a - The sample array
        X - X coordinate of the sample array
        Y - Y coordinate of the sample array
        newX - X coordinate of the query points
        newY - Y coordinate of the query points
        返回:
        Resampled array
      • interpolate

        public Array interpolate​(Array a,
                                 java.util.List<java.lang.Number> X,
                                 java.util.List<java.lang.Number> Y)
        Interpolate array data
        参数:
        a - Array
        X - X coordinates
        Y - Y coordinates
        返回:
        Result array data
      • interpn_s

        public static double interpn_s​(java.util.List<java.util.List<java.lang.Number>> points,
                                       Array values,
                                       java.util.List<java.lang.Number> xi)
        Multidimensional interpolation on regular grids.
        参数:
        points - The points defining the regular grid in n dimensions.
        values - The data on the regular grid in n dimensions.
        xi - The coordinates to sample the gridded data at
        返回:
        Interpolation value
      • interpn_s

        public static double interpn_s​(java.util.List<Array> points,
                                       Array values,
                                       Array xi)
        Multidimensional interpolation on regular grids.
        参数:
        points - The points defining the regular grid in n dimensions.
        values - The data on the regular grid in n dimensions.
        xi - The coordinates to sample the gridded data at
        返回:
        Interpolation value
      • interpn

        public static Array interpn​(java.util.List<Array> points,
                                    Array values,
                                    java.util.List<Array> xi)
        Multidimensional interpolation on regular grids.
        参数:
        points - The points defining the regular grid in n dimensions.
        values - The data on the regular grid in n dimensions.
        xi - The coordinates to sample the gridded data at - 2D
        返回:
        Interpolation value
      • interpn

        public static java.lang.Object interpn​(java.util.List<Array> points,
                                               Array values,
                                               Array xi)
                                        throws InvalidRangeException
        Multidimensional interpolation on regular grids.
        参数:
        points - The points defining the regular grid in n dimensions.
        values - The data on the regular grid in n dimensions.
        xi - The coordinates to sample the gridded data at - 2D
        返回:
        Interpolation value
        抛出:
        ucar.ma2.InvalidRangeException
        InvalidRangeException
      • findIndices

        public static java.lang.Object[] findIndices​(java.util.List<java.util.List<java.lang.Number>> points,
                                                     java.util.List<java.lang.Number> xi)
        Find indices
        参数:
        points - The points defining the regular grid in n dimensions.
        xi - The coordinates to sample the gridded data at
        返回:
        Indices
      • findIndices

        public static java.lang.Object[] findIndices​(java.util.List<Array> points,
                                                     Array xi)
        Find indices
        参数:
        points - The points defining the regular grid in n dimensions.
        xi - The coordinates to sample the gridded data at
        返回:
        Indices
      • searchSorted

        public static int searchSorted​(java.util.List<java.lang.Number> a,
                                       double v)
        Search sorted list index
        参数:
        a - Sorted list
        v - value
        返回:
        Index
      • searchSorted

        public static int searchSorted​(Array a,
                                       double v)
        Search sorted list index
        参数:
        a - Sorted list
        v - value
        返回:
        Index
      • interpolate_1d

        public static Array interpolate_1d​(double x,
                                           Array xp,
                                           Array a,
                                           int axis)
                                    throws InvalidRangeException
        Interpolates data with any shape over a specified axis.
        参数:
        x - Desired interpolated value
        xp - The x-coordinates of the data points.
        a - The data to be interpolated.
        axis - The axis to interpolate over.
        返回:
        Interpolated data
        抛出:
        InvalidRangeException
      • interpolate_1d

        public static Array interpolate_1d​(Array xa,
                                           Array xp,
                                           Array a,
                                           int axis)
                                    throws InvalidRangeException
        Interpolates data with any shape over a specified axis.
        参数:
        xa - Desired interpolated values
        xp - The x-coordinates of the data points.
        a - The data to be interpolated.
        axis - The axis to interpolate over.
        返回:
        Interpolated data
        抛出:
        InvalidRangeException
      • toStation

        public static double toStation​(Array data,
                                       java.util.List<java.lang.Number> xArray,
                                       java.util.List<java.lang.Number> yArray,
                                       double x,
                                       double y,
                                       double missingValue)
        Interpolate data to a station point
        参数:
        data - Data array
        xArray - X array
        yArray - Y array
        x - X coordinate of the station
        y - Y coordinate of the station
        missingValue - Missing value
        返回:
        Interpolated value
      • toStation

        public static double toStation​(Array data,
                                       java.util.List<java.lang.Number> xArray,
                                       java.util.List<java.lang.Number> yArray,
                                       double x,
                                       double y)
        Interpolate data to a station point
        参数:
        data - Data array
        xArray - X array
        yArray - Y array
        x - X coordinate of the station
        y - Y coordinate of the station
        返回:
        Interpolated value
      • getDimIndex

        public static int getDimIndex​(Array dim,
                                      java.lang.Number v)
        Get value index in a dimension array
        参数:
        dim - Dimension array
        v - The value
        返回:
        value index
      • gridIndex

        public static int[] gridIndex​(Array xdim,
                                      Array ydim,
                                      double x,
                                      double y)
        Get grid array x/y value index
        参数:
        xdim - X coordinate array
        ydim - Y coordinate array
        x - X value
        y - Y value
        返回:
        X/Y index
      • gridIndex

        public static int[] gridIndex​(double[][] xdim,
                                      double[][] ydim,
                                      double x,
                                      double y)
        Get grid array x/y value index
        参数:
        xdim - X coordinate array
        ydim - Y coordinate array
        x - X value
        y - Y value
        返回:
        X/Y index
      • toStation

        public static double toStation​(Array data,
                                       Array xArray,
                                       Array yArray,
                                       double x,
                                       double y)
        Interpolate data to a station point
        参数:
        data - Data array
        xArray - X array
        yArray - Y array
        x - X coordinate of the station
        y - Y coordinate of the station
        返回:
        Interpolated value
      • toStation_Neighbor

        public static double toStation_Neighbor​(Array data,
                                                java.util.List<java.lang.Number> xArray,
                                                java.util.List<java.lang.Number> yArray,
                                                double x,
                                                double y,
                                                double missingValue)
        Interpolate data to a station point
        参数:
        data - Data array
        xArray - X array
        yArray - Y array
        x - X coordinate of the station
        y - Y coordinate of the station
        missingValue - Missing value
        返回:
        Interpolated value
      • toStation_Neighbor

        public static double toStation_Neighbor​(Array data,
                                                java.util.List<java.lang.Number> xArray,
                                                java.util.List<java.lang.Number> yArray,
                                                double x,
                                                double y)
        Interpolate data to a station point
        参数:
        data - Data array
        xArray - X array
        yArray - Y array
        x - X coordinate of the station
        y - Y coordinate of the station
        返回:
        Interpolated value
      • toStation_Neighbor

        public static double toStation_Neighbor​(Array data,
                                                Array xArray,
                                                Array yArray,
                                                double x,
                                                double y)
        Interpolate data to a station point
        参数:
        data - Data array
        xArray - X array
        yArray - Y array
        x - X coordinate of the station
        y - Y coordinate of the station
        返回:
        Interpolated value