类 ArrayMath


  • public class ArrayMath
    extends java.lang.Object
    作者:
    wyq
    • 字段概要

      字段 
      修饰符和类型 字段 说明
      static double fill_value  
    • 构造器概要

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

      所有方法 静态方法 具体方法 
      修饰符和类型 方法 说明
      static ucar.ma2.Array abs​(ucar.ma2.Array a)
      Array absolute
      static ucar.ma2.Array acos​(ucar.ma2.Array a)
      Arc cosine function
      static ucar.ma2.Array add​(ucar.ma2.Array a, java.lang.Number b)
      Array add
      static ucar.ma2.Array add​(ucar.ma2.Array a, Complex b)
      Array add
      static ucar.ma2.Array add​(ucar.ma2.Array a, org.python.core.PyComplex b)
      Array add
      static ucar.ma2.Array add​(ucar.ma2.Array a, ucar.ma2.Array b)
      Array add
      static boolean all​(ucar.ma2.Array a)
      Test whether all array element evaluates to True.
      static ucar.ma2.Array all​(ucar.ma2.Array a, int axis)
      Test whether all array element along a given axis evaluates to True.
      static boolean any​(ucar.ma2.Array a)
      Test whether any array element evaluates to True.
      static ucar.ma2.Array any​(ucar.ma2.Array a, int axis)
      Test whether any array element along a given axis evaluates to True.
      static int argMax​(ucar.ma2.Array a)
      Get the index of the maximum value into the flattened array.
      static ucar.ma2.Array argMax​(ucar.ma2.Array a, int axis)
      Get the indices of the maximum values along an axis.
      static int argMin​(ucar.ma2.Array a)
      Get the index of the minimum value into the flattened array.
      static ucar.ma2.Array argMin​(ucar.ma2.Array a, int axis)
      Get the indices of the minimum values along an axis.
      static ucar.ma2.Array asin​(ucar.ma2.Array a)
      Arc sine function
      static java.util.List<java.lang.Object> asList​(ucar.ma2.Array a)
      As number list
      static ucar.ma2.Array atan​(ucar.ma2.Array a)
      Arc tangen function
      static ucar.ma2.Array atan2​(ucar.ma2.Array a, ucar.ma2.Array b)
      Arc tangen function
      static double aveDouble​(ucar.ma2.Array a)
      Average array
      static double aveDouble​(ucar.ma2.Array a, double missingValue)
      Average array skip missing value
      static ucar.ma2.Array bitAnd​(ucar.ma2.Array a, java.lang.Number b)
      Bit and operation
      static ucar.ma2.Array bitAnd​(ucar.ma2.Array a, ucar.ma2.Array b)
      Bit and operation
      static ucar.ma2.Array bitInvert​(ucar.ma2.Array a)
      Bit inversion ~ operation
      static ucar.ma2.Array bitOr​(ucar.ma2.Array a, java.lang.Number b)
      Bit or | operation
      static ucar.ma2.Array bitOr​(ucar.ma2.Array a, ucar.ma2.Array b)
      Bit or | operation
      static ucar.ma2.Array bitXor​(ucar.ma2.Array a, java.lang.Number b)
      Bit exclusive or ^ operation
      static ucar.ma2.Array bitXor​(ucar.ma2.Array a, ucar.ma2.Array b)
      Bit exclusive or | operation
      static int[] broadcast​(ucar.ma2.Array a, ucar.ma2.Array b)
      Get broadcast shape from two arrays
      static int broadcastCheck​(ucar.ma2.Array a, ucar.ma2.Array b)
      Broadcast check for two arrays.
      static double[] cartesianToPolar​(double x, double y)
      Convert cartesian to polar coordinate
      static ucar.ma2.Array[] cartesianToPolar​(ucar.ma2.Array x, ucar.ma2.Array y)
      Convert cartesian to polar coordinate
      static ucar.ma2.Array cdiff​(ucar.ma2.Array data, int dimIdx)
      Performs a centered difference operation on a grid data along one dimension direction
      static ucar.ma2.Array cdiff_bak​(ucar.ma2.Array data, boolean isX)
      Performs a centered difference operation on a grid data in the x or y direction
      static boolean containsNaN​(ucar.ma2.Array a)
      Check if the array contains NaN value
      static ucar.ma2.Array copy​(ucar.ma2.Array a)
      Copy array
      static ucar.ma2.Array cos​(ucar.ma2.Array a)
      Cosine function
      static ucar.ma2.Array div​(java.lang.Number b, ucar.ma2.Array a)
      Array divide
      static ucar.ma2.Array div​(Complex b, ucar.ma2.Array a)
      Array divide
      static ucar.ma2.Array div​(org.python.core.PyComplex b, ucar.ma2.Array a)
      Array divide
      static ucar.ma2.Array div​(ucar.ma2.Array a, java.lang.Number b)
      Array divide
      static ucar.ma2.Array div​(ucar.ma2.Array a, Complex b)
      Array divide
      static ucar.ma2.Array div​(ucar.ma2.Array a, org.python.core.PyComplex b)
      Array divide
      static ucar.ma2.Array div​(ucar.ma2.Array a, ucar.ma2.Array b)
      Array divide
      static ucar.ma2.Array dot​(ucar.ma2.Array a, ucar.ma2.Array b)
      Matrix multiplication
      static double[] ds2uv​(double windDir, double windSpeed)
      Get wind U/V components from wind direction and speed
      static ucar.ma2.Array[] ds2uv​(ucar.ma2.Array windDir, ucar.ma2.Array windSpeed)
      Get wind U/V components from wind direction and speed
      static ucar.ma2.Array equal​(ucar.ma2.Array a, java.lang.Number b)
      Array equal
      static ucar.ma2.Array equal​(ucar.ma2.Array a, ucar.ma2.Array b)
      Array equal
      static ucar.ma2.Array exp​(ucar.ma2.Array a)
      Exponent function
      static ucar.ma2.Array flip​(ucar.ma2.Array a, int idx)
      Flip array
      static ucar.ma2.Array flip​(ucar.ma2.Array a, java.util.List<java.lang.Integer> idxs)
      Flip array
      static ucar.ma2.Array fmax​(ucar.ma2.Array x1, ucar.ma2.Array x2)
      Element-wise maximum of array elements, ignores NaNs.
      static ucar.ma2.Array fmin​(ucar.ma2.Array x1, ucar.ma2.Array x2)
      Element-wise minimum of array elements, ignores NaNs.
      static ucar.ma2.DataType getDataType​(java.lang.Object o)
      Get data type
      static double getMaximum​(ucar.ma2.Array a)
      Get maximum value
      static double getMaximum​(ucar.ma2.Array a, double missingv)
      Get maximum value
      static double getMinimum​(ucar.ma2.Array a)
      Get minimum value
      static double getMinimum​(ucar.ma2.Array a, double missingv)
      Get minimum value
      static float getR​(java.util.List<java.lang.Number> xData, java.util.List<java.lang.Number> yData)
      Get correlation coefficient How well did the forecast values correspond to the observed values?
      static float getR​(ucar.ma2.Array xData, ucar.ma2.Array yData)
      Get correlation coefficient How well did the forecast values correspond to the observed values?
      static ucar.ma2.Array greaterThan​(ucar.ma2.Array a, java.lang.Number b)
      Array greater than
      static ucar.ma2.Array greaterThan​(ucar.ma2.Array a, ucar.ma2.Array b)
      Array greater than
      static ucar.ma2.Array greaterThanOrEqual​(ucar.ma2.Array a, java.lang.Number b)
      Array greater than or equal
      static ucar.ma2.Array greaterThanOrEqual​(ucar.ma2.Array a, ucar.ma2.Array b)
      Array greater than or equal
      static ucar.ma2.Array hcurl​(ucar.ma2.Array uData, ucar.ma2.Array vData, java.util.List<java.lang.Number> xx, java.util.List<java.lang.Number> yy)
      Calculates the vertical component of the curl (ie, vorticity)
      static ucar.ma2.Array hdivg​(ucar.ma2.Array uData, ucar.ma2.Array vData, java.util.List<java.lang.Number> xx, java.util.List<java.lang.Number> yy)
      Calculates the horizontal divergence using finite differencing
      static ucar.ma2.Array height2Press​(ucar.ma2.Array height)
      Calculate pressure from height
      static ucar.ma2.Array inPolygon​(ucar.ma2.Array a, java.util.List<java.lang.Number> x, java.util.List<java.lang.Number> y, java.util.List<java.lang.Number> x_p, java.util.List<java.lang.Number> y_p)
      In polygon function
      static ucar.ma2.Array inPolygon​(ucar.ma2.Array a, java.util.List<java.lang.Number> x, java.util.List<java.lang.Number> y, java.util.List<PolygonShape> polygons)
      In polygon function
      static ucar.ma2.Array inPolygon​(ucar.ma2.Array a, java.util.List<java.lang.Number> x, java.util.List<java.lang.Number> y, VectorLayer layer)
      In polygon function
      static ucar.ma2.Array inPolygon​(ucar.ma2.Array a, java.util.List<java.lang.Number> x, java.util.List<java.lang.Number> y, PolygonShape ps)
      In polygon function
      static ucar.ma2.Array inPolygon​(ucar.ma2.Array x, ucar.ma2.Array y, java.util.List<PolygonShape> polygons)
      In polygon function
      static ucar.ma2.Array inPolygon​(ucar.ma2.Array x, ucar.ma2.Array y, ucar.ma2.Array x_p, ucar.ma2.Array y_p)
      In polygon function
      static ucar.ma2.Array inValues​(ucar.ma2.Array a, java.util.List b)
      Return the array with the value of 1 when the input array element value in the list b, otherwise set value as 0.
      static boolean isComplex​(ucar.ma2.Array a)
      Check if an array is complex data type
      static boolean isNumeric​(ucar.ma2.Array a)
      Check if an array is numeric array
      static ucar.ma2.Array join​(ucar.ma2.Array a, ucar.ma2.Array b, int dim)
      Join two arrays by a dimension
      static double[] leastSquareTrend​(java.util.List<java.lang.Number> xData, java.util.List<java.lang.Number> yData)
      Determine the least square trend equation - linear fitting
      static ucar.ma2.Array leftShift​(ucar.ma2.Array a, java.lang.Number b)
      Bit left shift operation
      static ucar.ma2.Array leftShift​(ucar.ma2.Array a, ucar.ma2.Array b)
      Bit left shift operation
      static ucar.ma2.Array lessThan​(ucar.ma2.Array a, java.lang.Number b)
      Array less than
      static ucar.ma2.Array lessThan​(ucar.ma2.Array a, ucar.ma2.Array b)
      Array less than
      static ucar.ma2.Array lessThanOrEqual​(ucar.ma2.Array a, java.lang.Number b)
      Array less than or equal
      static ucar.ma2.Array lessThanOrEqual​(ucar.ma2.Array a, ucar.ma2.Array b)
      Array less than or equal
      static double[] lineRegress​(java.util.List<java.lang.Number> xData, java.util.List<java.lang.Number> yData)
      Linear regress
      static double[] lineRegress​(ucar.ma2.Array xData, ucar.ma2.Array yData)
      Linear regress
      static ucar.ma2.Array log​(ucar.ma2.Array a)
      Log function
      static ucar.ma2.Array log10​(ucar.ma2.Array a)
      Log10 function
      static ucar.ma2.Array magnitude​(ucar.ma2.Array uData, ucar.ma2.Array vData)
      Take magnitude value from U/V grid data
      static ucar.ma2.Array maskin​(ucar.ma2.Array a, ucar.ma2.Array m)
      Maskin function
      static ucar.ma2.Array maskin​(ucar.ma2.Array a, ucar.ma2.Array x, ucar.ma2.Array y, java.util.List<PolygonShape> polygons)
      Maskin function
      static ucar.ma2.Array[] maskin_Remove​(ucar.ma2.Array a, ucar.ma2.Array x, ucar.ma2.Array y, java.util.List<PolygonShape> polygons)
      Maskin function
      static ucar.ma2.Array maskout​(ucar.ma2.Array a, java.util.List<java.lang.Number> x, java.util.List<java.lang.Number> y, java.util.List<PolygonShape> polygons)
      Maskout function
      static ucar.ma2.Array maskout​(ucar.ma2.Array a, java.util.List<java.lang.Number> x, java.util.List<java.lang.Number> y, java.util.List<PolygonShape> polygons, java.lang.Number missingValue)
      Maskout function
      static ucar.ma2.Array maskout​(ucar.ma2.Array a, java.util.List<java.lang.Number> x, java.util.List<java.lang.Number> y, VectorLayer layer, java.lang.Number missingValue)
      Maskout function
      static ucar.ma2.Array maskout​(ucar.ma2.Array a, java.util.List<java.lang.Number> x, java.util.List<java.lang.Number> y, PolygonShape polygon, java.lang.Number missingValue)
      Maskout function
      static ucar.ma2.Array maskout​(ucar.ma2.Array a, ucar.ma2.Array m)
      Maskout function
      static ucar.ma2.Array maskout​(ucar.ma2.Array a, ucar.ma2.Array m, java.lang.Number missingValue)
      Maskout function
      static ucar.ma2.Array maskout​(ucar.ma2.Array a, ucar.ma2.Array x, ucar.ma2.Array y, java.util.List<PolygonShape> polygons)
      Maskout function
      static ucar.ma2.Array[] maskout_Remove​(ucar.ma2.Array a, ucar.ma2.Array x, ucar.ma2.Array y, java.util.List<PolygonShape> polygons)
      Maskout function
      static double max​(ucar.ma2.Array a)
      Compute maximum value of an array
      static ucar.ma2.Array max​(ucar.ma2.Array a, int axis)
      Compute maximum value of an array along an axis (dimension)
      static double max​(ucar.ma2.Array a, java.util.List<ucar.ma2.Range> ranges)
      Compute maximum value of an array
      static ucar.ma2.Array maximum​(ucar.ma2.Array x1, ucar.ma2.Array x2)
      Element-wise maximum of array elements.
      static ucar.ma2.Array mean​(java.util.List<ucar.ma2.Array> alist)
      Compute the arithmetic mean arry from a list of arrays
      static double mean​(ucar.ma2.Array a)
      Compute mean value of an array
      static ucar.ma2.Array mean​(ucar.ma2.Array a, int axis)
      Compute mean value of an array along an axis (dimension)
      static double mean​(ucar.ma2.Array a, java.util.List<ucar.ma2.Range> ranges)
      Compute mean value of an array
      static double median​(ucar.ma2.Array a)
      Compute median value of an array
      static ucar.ma2.Array median​(ucar.ma2.Array a, int axis)
      Compute median value of an array along an axis (dimension)
      static double median​(ucar.ma2.Array a, java.util.List<ucar.ma2.Range> ranges)
      Compute median value of an array
      static double min​(ucar.ma2.Array a)
      Compute minimum value of an array
      static ucar.ma2.Array min​(ucar.ma2.Array a, int axis)
      Compute minimum value of an array along an axis (dimension)
      static double min​(ucar.ma2.Array a, java.util.List<ucar.ma2.Range> ranges)
      Compute minimum value of an array
      static ucar.ma2.Array minimum​(ucar.ma2.Array x1, ucar.ma2.Array x2)
      Element-wise minimum of array elements.
      static void missingToNaN​(ucar.ma2.Array a, java.lang.Number missingv)
      Set missing value to NaN
      static ucar.ma2.Array mul​(ucar.ma2.Array a, java.lang.Number b)
      Array multiply
      static ucar.ma2.Array mul​(ucar.ma2.Array a, Complex b)
      Array multiply
      static ucar.ma2.Array mul​(ucar.ma2.Array a, org.python.core.PyComplex b)
      Array multiply
      static ucar.ma2.Array mul​(ucar.ma2.Array a, ucar.ma2.Array b)
      Array mutiply
      static java.util.List<ucar.ma2.Array> nonzero​(ucar.ma2.Array a)
      Return the indices of the elements that are non-zero.
      static ucar.ma2.Array notEqual​(ucar.ma2.Array a, java.lang.Number b)
      Array not equal
      static ucar.ma2.Array notEqual​(ucar.ma2.Array a, ucar.ma2.Array b)
      Array not equal
      static double[] polarToCartesian​(double B, double r)
      Convert poar to cartesian coordinate
      static ucar.ma2.Array[] polarToCartesian​(ucar.ma2.Array B, ucar.ma2.Array r)
      Convert poar to cartesian coordinate
      static ucar.ma2.Array polyVal​(java.util.List<java.lang.Number> p, ucar.ma2.Array x)
      Evaluate a polynomial at specific values.
      static ucar.ma2.Array pow​(java.lang.Number a, ucar.ma2.Array b)
      Array pow function
      static ucar.ma2.Array pow​(Complex b, ucar.ma2.Array a)
      Array pow function
      static ucar.ma2.Array pow​(org.python.core.PyComplex b, ucar.ma2.Array a)
      Array pow function
      static ucar.ma2.Array pow​(ucar.ma2.Array a, java.lang.Number b)
      Array pow function
      static ucar.ma2.Array pow​(ucar.ma2.Array a, Complex b)
      Array pow function
      static ucar.ma2.Array pow​(ucar.ma2.Array a, org.python.core.PyComplex b)
      Array pow function
      static ucar.ma2.Array pow​(ucar.ma2.Array a, ucar.ma2.Array b)
      Array pow function
      static ucar.ma2.Array press2Height​(ucar.ma2.Array press)
      Calculate height from pressure
      static double prodDouble​(ucar.ma2.Array a)
      Produce array
      static ucar.ma2.Array qair2rh​(ucar.ma2.Array qair, ucar.ma2.Array temp, double press)
      Calculate relative humidity from specific humidity
      static ucar.ma2.Array qair2rh​(ucar.ma2.Array qair, ucar.ma2.Array temp, ucar.ma2.Array press)
      Calculate relative humidity
      static ucar.ma2.Array removeNaN​(ucar.ma2.Array a)
      Remove NaN values in an array
      static ucar.ma2.Array[] removeNaN​(ucar.ma2.Array... a)
      Remove NaN values in arrays
      static ucar.ma2.Array rightShift​(ucar.ma2.Array a, java.lang.Number b)
      Bit right shift operation
      static ucar.ma2.Array rightShift​(ucar.ma2.Array a, ucar.ma2.Array b)
      Bit right shift operation
      static ucar.ma2.Array rolling_mean​(ucar.ma2.Array x, int window, boolean center)
      Moving average function
      static ucar.ma2.Array rot90​(ucar.ma2.Array a, int k)
      Rotate an array by 90 degrees in counter-clockwise direction.
      static ucar.ma2.Array section​(ucar.ma2.Array a, int[] origin, int[] size, int[] stride)
      Section array
      static ucar.ma2.Array section​(ucar.ma2.Array a, java.util.List<ucar.ma2.Range> ranges)
      Section array
      static ucar.ma2.Array setSection​(ucar.ma2.Array a, java.util.List<ucar.ma2.Range> ranges, java.lang.Number v)
      Set section
      static ucar.ma2.Array setSection​(ucar.ma2.Array a, java.util.List<ucar.ma2.Range> ranges, ucar.ma2.Array v)
      Set section
      static ucar.ma2.Array setSection_List​(ucar.ma2.Array a, java.util.List<java.util.List<java.lang.Integer>> ranges, java.lang.Number v)
      Set section
      static ucar.ma2.Array setSection_List​(ucar.ma2.Array a, java.util.List<java.util.List<java.lang.Integer>> ranges, ucar.ma2.Array v)
      Set section
      static ucar.ma2.Array setSection_Mix​(ucar.ma2.Array a, java.util.List<java.lang.Object> ranges, java.lang.Number v)
      Set section
      static ucar.ma2.Array setSection_Mix​(ucar.ma2.Array a, java.util.List<java.lang.Object> ranges, ucar.ma2.Array v)
      Set section
      static void setValue​(ucar.ma2.Array a, ucar.ma2.Array b, java.lang.Number value)
      Set value
      static void setValue​(ucar.ma2.Array a, ucar.ma2.Array b, ucar.ma2.Array value)
      Set value
      static ucar.ma2.Array sign​(ucar.ma2.Array x)
      Returns an element-wise indication of the sign of a number.
      static ucar.ma2.Array sin​(ucar.ma2.Array a)
      Sine function
      static ucar.ma2.Array sqrt​(ucar.ma2.Array a)
      Sqrt function
      static double std​(ucar.ma2.Array a)
      Compute standard deviation value of an array
      static ucar.ma2.Array std​(ucar.ma2.Array a, int axis)
      Compute standard deviation value of an array along an axis (dimension)
      static double std​(ucar.ma2.Array a, java.util.List<ucar.ma2.Range> ranges)
      Compute standard deviation value of an array
      static ucar.ma2.Array sub​(java.lang.Number b, ucar.ma2.Array a)
      Array subtract
      static ucar.ma2.Array sub​(Complex b, ucar.ma2.Array a)
      Array subtract
      static ucar.ma2.Array sub​(org.python.core.PyComplex b, ucar.ma2.Array a)
      Array subtract
      static ucar.ma2.Array sub​(ucar.ma2.Array a, java.lang.Number b)
      Array subtract
      static ucar.ma2.Array sub​(ucar.ma2.Array a, Complex b)
      Array subtract
      static ucar.ma2.Array sub​(ucar.ma2.Array a, org.python.core.PyComplex b)
      Array subtract
      static ucar.ma2.Array sub​(ucar.ma2.Array a, ucar.ma2.Array b)
      Array subtract
      static ucar.ma2.Array sum​(java.util.List<ucar.ma2.Array> alist)
      Compute the sum arry from a list of arrays
      static double sum​(ucar.ma2.Array a)
      Summarize array
      static double sum​(ucar.ma2.Array a, double missingValue)
      Summarize array skip missing value
      static ucar.ma2.Array sum​(ucar.ma2.Array a, int axis)
      Compute sum value of an array along an axis (dimension)
      static double sum​(ucar.ma2.Array a, java.util.List<ucar.ma2.Range> ranges)
      Compute sum value of an array
      static ucar.ma2.Array take​(ucar.ma2.Array a, java.util.List<java.lang.Object> ranges)
      Take elements from an array along an axis.
      static ucar.ma2.Array takeValues​(ucar.ma2.Array a, java.util.List<java.util.List<java.lang.Integer>> ranges)
      Take elements from an array.
      static ucar.ma2.Array tan​(ucar.ma2.Array a)
      Tangent function
      static ucar.ma2.Array tc2tf​(ucar.ma2.Array tc)
      Calculate fahrenheit temperature from celsius temperature
      static ucar.ma2.Array tf2tc​(ucar.ma2.Array tf)
      Calculate celsius temperature from fahrenheit temperature
      static ucar.ma2.Array toDegrees​(ucar.ma2.Array a)
      Convert radians to degrees function
      static ucar.ma2.Array toRadians​(ucar.ma2.Array a)
      Convert radians to degrees function
      static ucar.ma2.Array transpose​(ucar.ma2.Array a, int dim1, int dim2)
      Transpose array
      static double trapz​(ucar.ma2.Array y, double dx)
      Integrate vector array using the composite trapezoidal rule.
      static ucar.ma2.Array trapz​(ucar.ma2.Array a, double dx, int axis)
      Integrate vector array using the composite trapezoidal rule.
      static double trapz​(ucar.ma2.Array y, double dx, java.util.List<ucar.ma2.Range> ranges)
      Integrate vector array using the composite trapezoidal rule.
      static double trapz​(ucar.ma2.Array y, ucar.ma2.Array x)
      Integrate vector array using the composite trapezoidal rule.
      static ucar.ma2.Array trapz​(ucar.ma2.Array a, ucar.ma2.Array x, int axis)
      Integrate vector array using the composite trapezoidal rule.
      static double trapz​(ucar.ma2.Array y, ucar.ma2.Array x, java.util.List<ucar.ma2.Range> ranges)
      Integrate vector array using the composite trapezoidal rule.
      static short typeToNBytes​(ucar.ma2.DataType dataType)
      Return the number of bytes per element for the given typecode.
      static double[] uv2ds​(double u, double v)
      Get wind direction and wind speed from U/V
      static ucar.ma2.Array[] uv2ds​(ucar.ma2.Array u, ucar.ma2.Array v)
      Get wind direction and wind speed from U/V
      static ucar.ma2.Array var​(ucar.ma2.Array a, int axis)
      Compute variance value of an array along an axis (dimension)
      static double var​(ucar.ma2.Array a, java.util.List<ucar.ma2.Range> ranges)
      Compute variance value of an array
      static double vdot​(ucar.ma2.Array a, ucar.ma2.Array b)
      Return the dot product of two vectors.
      • 从类继承的方法 java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • 字段详细资料

      • fill_value

        public static double fill_value
    • 构造器详细资料

      • ArrayMath

        public ArrayMath()
    • 方法详细资料

      • getDataType

        public static ucar.ma2.DataType getDataType​(java.lang.Object o)
        Get data type
        参数:
        o - Object
        返回:
        Data type
      • typeToNBytes

        public static short typeToNBytes​(ucar.ma2.DataType dataType)
        Return the number of bytes per element for the given typecode.
        参数:
        dataType - Data type
        返回:
        Bytes number
      • isComplex

        public static boolean isComplex​(ucar.ma2.Array a)
        Check if an array is complex data type
        参数:
        a - The array
        返回:
        Complex data type or not
      • isNumeric

        public static boolean isNumeric​(ucar.ma2.Array a)
        Check if an array is numeric array
        参数:
        a - The array
        返回:
        Numeric or not
      • broadcastCheck

        public static int broadcastCheck​(ucar.ma2.Array a,
                                         ucar.ma2.Array b)
        Broadcast check for two arrays.
        参数:
        a - Array a
        b - Array b
        返回:
        Can broadcast (1), can not broadcast (-1), same dimensions (0)
      • broadcast

        public static int[] broadcast​(ucar.ma2.Array a,
                                      ucar.ma2.Array b)
        Get broadcast shape from two arrays
        参数:
        a - Array a
        b - Array b
        返回:
        Broadcast shape
      • add

        public static ucar.ma2.Array add​(ucar.ma2.Array a,
                                         ucar.ma2.Array b)
        Array add
        参数:
        a - Array a
        b - Array b
        返回:
        Added array
      • add

        public static ucar.ma2.Array add​(ucar.ma2.Array a,
                                         java.lang.Number b)
        Array add
        参数:
        a - Array a
        b - Number b
        返回:
        Added array
      • add

        public static ucar.ma2.Array add​(ucar.ma2.Array a,
                                         Complex b)
        Array add
        参数:
        a - Array a
        b - Complex number b
        返回:
        Added array
      • add

        public static ucar.ma2.Array add​(ucar.ma2.Array a,
                                         org.python.core.PyComplex b)
        Array add
        参数:
        a - Array a
        b - Complex number b
        返回:
        Added array
      • sub

        public static ucar.ma2.Array sub​(ucar.ma2.Array a,
                                         ucar.ma2.Array b)
        Array subtract
        参数:
        a - Array a
        b - Array b
        返回:
        Result array
      • sub

        public static ucar.ma2.Array sub​(ucar.ma2.Array a,
                                         java.lang.Number b)
        Array subtract
        参数:
        a - Array a
        b - Number b
        返回:
        Result array
      • sub

        public static ucar.ma2.Array sub​(ucar.ma2.Array a,
                                         Complex b)
        Array subtract
        参数:
        a - Array a
        b - Complex number b
        返回:
        Result array
      • sub

        public static ucar.ma2.Array sub​(ucar.ma2.Array a,
                                         org.python.core.PyComplex b)
        Array subtract
        参数:
        a - Array a
        b - Complex number b
        返回:
        Result array
      • sub

        public static ucar.ma2.Array sub​(java.lang.Number b,
                                         ucar.ma2.Array a)
        Array subtract
        参数:
        a - Array a
        b - Number b
        返回:
        Result array
      • sub

        public static ucar.ma2.Array sub​(Complex b,
                                         ucar.ma2.Array a)
        Array subtract
        参数:
        a - Array a
        b - Complex number b
        返回:
        Result array
      • sub

        public static ucar.ma2.Array sub​(org.python.core.PyComplex b,
                                         ucar.ma2.Array a)
        Array subtract
        参数:
        a - Array a
        b - Complex number b
        返回:
        Result array
      • mul

        public static ucar.ma2.Array mul​(ucar.ma2.Array a,
                                         ucar.ma2.Array b)
        Array mutiply
        参数:
        a - Array a
        b - Array b
        返回:
        Result array
      • mul

        public static ucar.ma2.Array mul​(ucar.ma2.Array a,
                                         java.lang.Number b)
        Array multiply
        参数:
        a - Array a
        b - Number b
        返回:
        Result array
      • mul

        public static ucar.ma2.Array mul​(ucar.ma2.Array a,
                                         Complex b)
        Array multiply
        参数:
        a - Array a
        b - Complex number b
        返回:
        Result array
      • mul

        public static ucar.ma2.Array mul​(ucar.ma2.Array a,
                                         org.python.core.PyComplex b)
        Array multiply
        参数:
        a - Array a
        b - Complex number b
        返回:
        Result array
      • div

        public static ucar.ma2.Array div​(ucar.ma2.Array a,
                                         ucar.ma2.Array b)
        Array divide
        参数:
        a - Array a
        b - Array b
        返回:
        Result array
      • div

        public static ucar.ma2.Array div​(ucar.ma2.Array a,
                                         java.lang.Number b)
        Array divide
        参数:
        a - Array a
        b - Number b
        返回:
        Result array
      • div

        public static ucar.ma2.Array div​(ucar.ma2.Array a,
                                         Complex b)
        Array divide
        参数:
        a - Array a
        b - Complex number b
        返回:
        Result array
      • div

        public static ucar.ma2.Array div​(ucar.ma2.Array a,
                                         org.python.core.PyComplex b)
        Array divide
        参数:
        a - Array a
        b - Complex number b
        返回:
        Result array
      • div

        public static ucar.ma2.Array div​(java.lang.Number b,
                                         ucar.ma2.Array a)
        Array divide
        参数:
        a - Array a
        b - Number b
        返回:
        Result array
      • div

        public static ucar.ma2.Array div​(Complex b,
                                         ucar.ma2.Array a)
        Array divide
        参数:
        a - Array a
        b - Complex number b
        返回:
        Result array
      • div

        public static ucar.ma2.Array div​(org.python.core.PyComplex b,
                                         ucar.ma2.Array a)
        Array divide
        参数:
        a - Array a
        b - Complex number b
        返回:
        Result array
      • pow

        public static ucar.ma2.Array pow​(ucar.ma2.Array a,
                                         java.lang.Number b)
        Array pow function
        参数:
        a - Array a
        b - Number b
        返回:
        Result array
      • pow

        public static ucar.ma2.Array pow​(ucar.ma2.Array a,
                                         Complex b)
        Array pow function
        参数:
        a - Array a
        b - Complex number b
        返回:
        Result array
      • pow

        public static ucar.ma2.Array pow​(ucar.ma2.Array a,
                                         org.python.core.PyComplex b)
        Array pow function
        参数:
        a - Array a
        b - Complex number b
        返回:
        Result array
      • pow

        public static ucar.ma2.Array pow​(java.lang.Number a,
                                         ucar.ma2.Array b)
        Array pow function
        参数:
        a - Number a
        b - Array b
        返回:
        Result array
      • pow

        public static ucar.ma2.Array pow​(Complex b,
                                         ucar.ma2.Array a)
        Array pow function
        参数:
        a - Array a
        b - Complex number b
        返回:
        Result array
      • pow

        public static ucar.ma2.Array pow​(org.python.core.PyComplex b,
                                         ucar.ma2.Array a)
        Array pow function
        参数:
        a - Array a
        b - Complex number b
        返回:
        Result array
      • pow

        public static ucar.ma2.Array pow​(ucar.ma2.Array a,
                                         ucar.ma2.Array b)
        Array pow function
        参数:
        a - Number a
        b - Array b
        返回:
        Result array
      • sqrt

        public static ucar.ma2.Array sqrt​(ucar.ma2.Array a)
        Sqrt function
        参数:
        a - Array a
        返回:
        Result array
      • exp

        public static ucar.ma2.Array exp​(ucar.ma2.Array a)
        Exponent function
        参数:
        a - Array a
        返回:
        Result array
      • log

        public static ucar.ma2.Array log​(ucar.ma2.Array a)
        Log function
        参数:
        a - Array a
        返回:
        Result array
      • log10

        public static ucar.ma2.Array log10​(ucar.ma2.Array a)
        Log10 function
        参数:
        a - Array a
        返回:
        Result array
      • abs

        public static ucar.ma2.Array abs​(ucar.ma2.Array a)
        Array absolute
        参数:
        a - Array a
        返回:
        Result array
      • equal

        public static ucar.ma2.Array equal​(ucar.ma2.Array a,
                                           ucar.ma2.Array b)
        Array equal
        参数:
        a - Array a
        b - Array b
        返回:
        Result array
      • equal

        public static ucar.ma2.Array equal​(ucar.ma2.Array a,
                                           java.lang.Number b)
        Array equal
        参数:
        a - Array a
        b - Number b
        返回:
        Result array
      • lessThan

        public static ucar.ma2.Array lessThan​(ucar.ma2.Array a,
                                              ucar.ma2.Array b)
        Array less than
        参数:
        a - Array a
        b - Array b
        返回:
        Result array
      • lessThan

        public static ucar.ma2.Array lessThan​(ucar.ma2.Array a,
                                              java.lang.Number b)
        Array less than
        参数:
        a - Array a
        b - Number b
        返回:
        Result array
      • lessThanOrEqual

        public static ucar.ma2.Array lessThanOrEqual​(ucar.ma2.Array a,
                                                     ucar.ma2.Array b)
        Array less than or equal
        参数:
        a - Array a
        b - Array b
        返回:
        Result array
      • lessThanOrEqual

        public static ucar.ma2.Array lessThanOrEqual​(ucar.ma2.Array a,
                                                     java.lang.Number b)
        Array less than or equal
        参数:
        a - Array a
        b - Number b
        返回:
        Result array
      • greaterThan

        public static ucar.ma2.Array greaterThan​(ucar.ma2.Array a,
                                                 ucar.ma2.Array b)
        Array greater than
        参数:
        a - Array a
        b - Array b
        返回:
        Result array
      • greaterThan

        public static ucar.ma2.Array greaterThan​(ucar.ma2.Array a,
                                                 java.lang.Number b)
        Array greater than
        参数:
        a - Array a
        b - Number b
        返回:
        Result array
      • greaterThanOrEqual

        public static ucar.ma2.Array greaterThanOrEqual​(ucar.ma2.Array a,
                                                        ucar.ma2.Array b)
        Array greater than or equal
        参数:
        a - Array a
        b - Array b
        返回:
        Result array
      • greaterThanOrEqual

        public static ucar.ma2.Array greaterThanOrEqual​(ucar.ma2.Array a,
                                                        java.lang.Number b)
        Array greater than or equal
        参数:
        a - Array a
        b - Number b
        返回:
        Result array
      • notEqual

        public static ucar.ma2.Array notEqual​(ucar.ma2.Array a,
                                              ucar.ma2.Array b)
        Array not equal
        参数:
        a - Array a
        b - Array b
        返回:
        Result array
      • notEqual

        public static ucar.ma2.Array notEqual​(ucar.ma2.Array a,
                                              java.lang.Number b)
        Array not equal
        参数:
        a - Array a
        b - Number b
        返回:
        Result array
      • any

        public static boolean any​(ucar.ma2.Array a)
        Test whether any array element evaluates to True.
        参数:
        a - The array
        返回:
        Boolean
      • any

        public static ucar.ma2.Array any​(ucar.ma2.Array a,
                                         int axis)
                                  throws ucar.ma2.InvalidRangeException
        Test whether any array element along a given axis evaluates to True.
        参数:
        a - Array a
        axis - Axis
        返回:
        Boolean array
        抛出:
        ucar.ma2.InvalidRangeException
      • all

        public static boolean all​(ucar.ma2.Array a)
        Test whether all array element evaluates to True.
        参数:
        a - The array
        返回:
        Boolean
      • all

        public static ucar.ma2.Array all​(ucar.ma2.Array a,
                                         int axis)
                                  throws ucar.ma2.InvalidRangeException
        Test whether all array element along a given axis evaluates to True.
        参数:
        a - Array a
        axis - Axis
        返回:
        Boolean array
        抛出:
        ucar.ma2.InvalidRangeException
      • inValues

        public static ucar.ma2.Array inValues​(ucar.ma2.Array a,
                                              java.util.List b)
        Return the array with the value of 1 when the input array element value in the list b, otherwise set value as 0.
        参数:
        a - Array a
        b - List b
        返回:
        Result array
      • containsNaN

        public static boolean containsNaN​(ucar.ma2.Array a)
        Check if the array contains NaN value
        参数:
        a - Input array
        返回:
        Boolean
      • removeNaN

        public static ucar.ma2.Array removeNaN​(ucar.ma2.Array a)
        Remove NaN values in an array
        参数:
        a - The array
        返回:
        The array withou NaN values
      • removeNaN

        public static ucar.ma2.Array[] removeNaN​(ucar.ma2.Array... a)
        Remove NaN values in arrays
        参数:
        a - The arrays
        返回:
        The array withou NaN values
      • nonzero

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

        public static ucar.ma2.Array bitAnd​(ucar.ma2.Array a,
                                            java.lang.Number b)
        Bit and operation
        参数:
        a - Array a
        b - Number b
        返回:
        Result array
      • bitAnd

        public static ucar.ma2.Array bitAnd​(ucar.ma2.Array a,
                                            ucar.ma2.Array b)
        Bit and operation
        参数:
        a - Array a
        b - Array b
        返回:
        Result array
      • bitOr

        public static ucar.ma2.Array bitOr​(ucar.ma2.Array a,
                                           java.lang.Number b)
        Bit or | operation
        参数:
        a - Array a
        b - Number b
        返回:
        Result array
      • bitOr

        public static ucar.ma2.Array bitOr​(ucar.ma2.Array a,
                                           ucar.ma2.Array b)
        Bit or | operation
        参数:
        a - Array a
        b - Array b
        返回:
        Result array
      • bitXor

        public static ucar.ma2.Array bitXor​(ucar.ma2.Array a,
                                            java.lang.Number b)
        Bit exclusive or ^ operation
        参数:
        a - Array a
        b - Number b
        返回:
        Result array
      • bitXor

        public static ucar.ma2.Array bitXor​(ucar.ma2.Array a,
                                            ucar.ma2.Array b)
        Bit exclusive or | operation
        参数:
        a - Array a
        b - Array b
        返回:
        Result array
      • bitInvert

        public static ucar.ma2.Array bitInvert​(ucar.ma2.Array a)
        Bit inversion ~ operation
        参数:
        a - Array a
        返回:
        Result array
      • leftShift

        public static ucar.ma2.Array leftShift​(ucar.ma2.Array a,
                                               java.lang.Number b)
        Bit left shift operation
        参数:
        a - Array a
        b - Number b
        返回:
        Result array
      • leftShift

        public static ucar.ma2.Array leftShift​(ucar.ma2.Array a,
                                               ucar.ma2.Array b)
        Bit left shift operation
        参数:
        a - Array a
        b - Array b
        返回:
        Result array
      • rightShift

        public static ucar.ma2.Array rightShift​(ucar.ma2.Array a,
                                                java.lang.Number b)
        Bit right shift operation
        参数:
        a - Array a
        b - Number b
        返回:
        Result array
      • rightShift

        public static ucar.ma2.Array rightShift​(ucar.ma2.Array a,
                                                ucar.ma2.Array b)
        Bit right shift operation
        参数:
        a - Array a
        b - Array b
        返回:
        Result array
      • trapz

        public static double trapz​(ucar.ma2.Array y,
                                   double dx)
        Integrate vector array using the composite trapezoidal rule.
        参数:
        y - Vecotr array
        dx - Spacing between all y elements
        返回:
        Definite integral as approximated by trapezoidal rule
      • trapz

        public static double trapz​(ucar.ma2.Array y,
                                   double dx,
                                   java.util.List<ucar.ma2.Range> ranges)
                            throws ucar.ma2.InvalidRangeException
        Integrate vector array using the composite trapezoidal rule.
        参数:
        y - Vecotr array
        dx - Spacing between all y elements
        ranges -
        返回:
        Definite integral as approximated by trapezoidal rule
        抛出:
        ucar.ma2.InvalidRangeException
      • trapz

        public static double trapz​(ucar.ma2.Array y,
                                   ucar.ma2.Array x)
        Integrate vector array using the composite trapezoidal rule.
        参数:
        y - Vecotr array
        x - Spacing array between all y elements
        返回:
        Definite integral as approximated by trapezoidal rule
      • trapz

        public static double trapz​(ucar.ma2.Array y,
                                   ucar.ma2.Array x,
                                   java.util.List<ucar.ma2.Range> ranges)
                            throws ucar.ma2.InvalidRangeException
        Integrate vector array using the composite trapezoidal rule.
        参数:
        y - Vecotr array
        x - Spacing array between all y elements
        ranges - Ranges
        返回:
        Definite integral as approximated by trapezoidal rule
        抛出:
        ucar.ma2.InvalidRangeException
      • trapz

        public static ucar.ma2.Array trapz​(ucar.ma2.Array a,
                                           double dx,
                                           int axis)
                                    throws ucar.ma2.InvalidRangeException
        Integrate vector array using the composite trapezoidal rule.
        参数:
        a - Array a
        dx -
        axis - Axis
        返回:
        Mean value array
        抛出:
        ucar.ma2.InvalidRangeException
      • trapz

        public static ucar.ma2.Array trapz​(ucar.ma2.Array a,
                                           ucar.ma2.Array x,
                                           int axis)
                                    throws ucar.ma2.InvalidRangeException
        Integrate vector array using the composite trapezoidal rule.
        参数:
        a - Array a
        x - Array x
        axis - Axis
        返回:
        Mean value array
        抛出:
        ucar.ma2.InvalidRangeException
      • sign

        public static ucar.ma2.Array sign​(ucar.ma2.Array x)
        Returns an element-wise indication of the sign of a number. The sign function returns -1 if x less than 0, 0 if x==0, 1 if x bigger than 0. nan is returned for nan inputs.
        参数:
        x - Input array
        返回:
        The sign of x array
      • dot

        public static ucar.ma2.Array dot​(ucar.ma2.Array a,
                                         ucar.ma2.Array b)
        Matrix multiplication
        参数:
        a - Array a
        b - Array b
        返回:
        Result array
      • vdot

        public static double vdot​(ucar.ma2.Array a,
                                  ucar.ma2.Array b)
        Return the dot product of two vectors.
        参数:
        a - Vector a
        b - Vector b
        返回:
        Result
      • toDegrees

        public static ucar.ma2.Array toDegrees​(ucar.ma2.Array a)
        Convert radians to degrees function
        参数:
        a - Array a
        返回:
        Result array
      • toRadians

        public static ucar.ma2.Array toRadians​(ucar.ma2.Array a)
        Convert radians to degrees function
        参数:
        a - Array a
        返回:
        Result array
      • sin

        public static ucar.ma2.Array sin​(ucar.ma2.Array a)
        Sine function
        参数:
        a - Array a
        返回:
        Result array
      • cos

        public static ucar.ma2.Array cos​(ucar.ma2.Array a)
        Cosine function
        参数:
        a - Array a
        返回:
        Result array
      • tan

        public static ucar.ma2.Array tan​(ucar.ma2.Array a)
        Tangent function
        参数:
        a - Array a
        返回:
        Result array
      • asin

        public static ucar.ma2.Array asin​(ucar.ma2.Array a)
        Arc sine function
        参数:
        a - Array a
        返回:
        Result array
      • acos

        public static ucar.ma2.Array acos​(ucar.ma2.Array a)
        Arc cosine function
        参数:
        a - Array a
        返回:
        Result array
      • atan

        public static ucar.ma2.Array atan​(ucar.ma2.Array a)
        Arc tangen function
        参数:
        a - Array a
        返回:
        Result array
      • atan2

        public static ucar.ma2.Array atan2​(ucar.ma2.Array a,
                                           ucar.ma2.Array b)
        Arc tangen function
        参数:
        a - Array a
        b - Array b
        返回:
        Result array
      • cartesianToPolar

        public static ucar.ma2.Array[] cartesianToPolar​(ucar.ma2.Array x,
                                                        ucar.ma2.Array y)
        Convert cartesian to polar coordinate
        参数:
        x - X array
        y - Y array
        返回:
        Angle and radius
      • polarToCartesian

        public static ucar.ma2.Array[] polarToCartesian​(ucar.ma2.Array B,
                                                        ucar.ma2.Array r)
        Convert poar to cartesian coordinate
        参数:
        r - Radius
        B - Angle in radians
        返回:
        X and y in cartesian coordinate
      • cartesianToPolar

        public static double[] cartesianToPolar​(double x,
                                                double y)
        Convert cartesian to polar coordinate
        参数:
        x - X
        y - Y
        返回:
        Angle and radius
      • polarToCartesian

        public static double[] polarToCartesian​(double B,
                                                double r)
        Convert poar to cartesian coordinate
        参数:
        r - Radius
        B - Angle in radians
        返回:
        X and y in cartesian coordinate
      • copy

        public static ucar.ma2.Array copy​(ucar.ma2.Array a)
        Copy array
        参数:
        a - Input array
        返回:
        Copied array
      • section

        public static ucar.ma2.Array section​(ucar.ma2.Array a,
                                             int[] origin,
                                             int[] size,
                                             int[] stride)
                                      throws ucar.ma2.InvalidRangeException
        Section array
        参数:
        a - Array a
        origin - Origin array
        size - Size array
        stride - Stride array
        返回:
        Result array
        抛出:
        ucar.ma2.InvalidRangeException
      • section

        public static ucar.ma2.Array section​(ucar.ma2.Array a,
                                             java.util.List<ucar.ma2.Range> ranges)
                                      throws ucar.ma2.InvalidRangeException
        Section array
        参数:
        a - Array a
        ranges - Ranges
        返回:
        Result array
        抛出:
        ucar.ma2.InvalidRangeException
      • take

        public static ucar.ma2.Array take​(ucar.ma2.Array a,
                                          java.util.List<java.lang.Object> ranges)
        Take elements from an array along an axis.
        参数:
        a - The array
        ranges - The indices of the values to extract.
        返回:
        The returned array has the same type as a.
      • takeValues

        public static ucar.ma2.Array takeValues​(ucar.ma2.Array a,
                                                java.util.List<java.util.List<java.lang.Integer>> ranges)
        Take elements from an array.
        参数:
        a - The array
        ranges - The indices of the values to extract.
        返回:
        The returned array has the same type as a.
      • setSection

        public static ucar.ma2.Array setSection​(ucar.ma2.Array a,
                                                java.util.List<ucar.ma2.Range> ranges,
                                                java.lang.Number v)
                                         throws ucar.ma2.InvalidRangeException
        Set section
        参数:
        a - Array a
        ranges - Ranges
        v - Number value
        返回:
        Result array
        抛出:
        ucar.ma2.InvalidRangeException
      • setSection

        public static ucar.ma2.Array setSection​(ucar.ma2.Array a,
                                                java.util.List<ucar.ma2.Range> ranges,
                                                ucar.ma2.Array v)
                                         throws ucar.ma2.InvalidRangeException
        Set section
        参数:
        a - Array a
        ranges - Ranges
        v - Array value
        返回:
        Result array
        抛出:
        ucar.ma2.InvalidRangeException
      • setSection_Mix

        public static ucar.ma2.Array setSection_Mix​(ucar.ma2.Array a,
                                                    java.util.List<java.lang.Object> ranges,
                                                    java.lang.Number v)
        Set section
        参数:
        a - Array a
        ranges - Ranges
        v - Number value
        返回:
        Result array
      • setSection_Mix

        public static ucar.ma2.Array setSection_Mix​(ucar.ma2.Array a,
                                                    java.util.List<java.lang.Object> ranges,
                                                    ucar.ma2.Array v)
        Set section
        参数:
        a - Array a
        ranges - Ranges
        v - Array value
        返回:
        Result array
      • setSection_List

        public static ucar.ma2.Array setSection_List​(ucar.ma2.Array a,
                                                     java.util.List<java.util.List<java.lang.Integer>> ranges,
                                                     java.lang.Number v)
        Set section
        参数:
        a - Array a
        ranges - Ranges
        v - Number value
        返回:
        Result array
      • setSection_List

        public static ucar.ma2.Array setSection_List​(ucar.ma2.Array a,
                                                     java.util.List<java.util.List<java.lang.Integer>> ranges,
                                                     ucar.ma2.Array v)
        Set section
        参数:
        a - Array a
        ranges - Ranges
        v - Array value
        返回:
        Result array
      • flip

        public static ucar.ma2.Array flip​(ucar.ma2.Array a,
                                          java.util.List<java.lang.Integer> idxs)
        Flip array
        参数:
        a - Array a
        idxs - Dimension index list
        返回:
        Result array
      • flip

        public static ucar.ma2.Array flip​(ucar.ma2.Array a,
                                          int idx)
        Flip array
        参数:
        a - Array a
        idx - Dimension idex
        返回:
        Result array
      • transpose

        public static ucar.ma2.Array transpose​(ucar.ma2.Array a,
                                               int dim1,
                                               int dim2)
        Transpose array
        参数:
        a - Array a
        dim1 - Dimension index 1
        dim2 - Dimension index 2
        返回:
        Result array
      • rot90

        public static ucar.ma2.Array rot90​(ucar.ma2.Array a,
                                           int k)
        Rotate an array by 90 degrees in counter-clockwise direction.
        参数:
        a - The array
        k - Rotate times
        返回:
        Rotated array
      • join

        public static ucar.ma2.Array join​(ucar.ma2.Array a,
                                          ucar.ma2.Array b,
                                          int dim)
        Join two arrays by a dimension
        参数:
        a - Array a
        b - Array b
        dim - Dimension for join
        返回:
        Joined array
      • getMinimum

        public static double getMinimum​(ucar.ma2.Array a)
        Get minimum value
        参数:
        a - Array a
        返回:
        Minimum value
      • getMaximum

        public static double getMaximum​(ucar.ma2.Array a)
        Get maximum value
        参数:
        a - Array a
        返回:
        Maximum value
      • getMinimum

        public static double getMinimum​(ucar.ma2.Array a,
                                        double missingv)
        Get minimum value
        参数:
        a - Array a
        missingv - Missing value
        返回:
        Minimum value
      • getMaximum

        public static double getMaximum​(ucar.ma2.Array a,
                                        double missingv)
        Get maximum value
        参数:
        a - Array a
        missingv - Missing value
        返回:
        Maximum value
      • min

        public static double min​(ucar.ma2.Array a)
        Compute minimum value of an array
        参数:
        a - Array a
        返回:
        Minimum value
      • min

        public static ucar.ma2.Array min​(ucar.ma2.Array a,
                                         int axis)
                                  throws ucar.ma2.InvalidRangeException
        Compute minimum value of an array along an axis (dimension)
        参数:
        a - Array a
        axis - Axis
        返回:
        Minimum value array
        抛出:
        ucar.ma2.InvalidRangeException
      • min

        public static double min​(ucar.ma2.Array a,
                                 java.util.List<ucar.ma2.Range> ranges)
                          throws ucar.ma2.InvalidRangeException
        Compute minimum value of an array
        参数:
        a - Array a
        ranges - Range list
        返回:
        Minimum value
        抛出:
        ucar.ma2.InvalidRangeException
      • max

        public static double max​(ucar.ma2.Array a)
        Compute maximum value of an array
        参数:
        a - Array a
        返回:
        Maximum value
      • max

        public static ucar.ma2.Array max​(ucar.ma2.Array a,
                                         int axis)
                                  throws ucar.ma2.InvalidRangeException
        Compute maximum value of an array along an axis (dimension)
        参数:
        a - Array a
        axis - Axis
        返回:
        Maximum value array
        抛出:
        ucar.ma2.InvalidRangeException
      • max

        public static double max​(ucar.ma2.Array a,
                                 java.util.List<ucar.ma2.Range> ranges)
                          throws ucar.ma2.InvalidRangeException
        Compute maximum value of an array
        参数:
        a - Array a
        ranges - Range list
        返回:
        Maximum value
        抛出:
        ucar.ma2.InvalidRangeException
      • sum

        public static ucar.ma2.Array sum​(ucar.ma2.Array a,
                                         int axis)
                                  throws ucar.ma2.InvalidRangeException
        Compute sum value of an array along an axis (dimension)
        参数:
        a - Array a
        axis - Axis
        返回:
        Sum value array
        抛出:
        ucar.ma2.InvalidRangeException
      • sum

        public static double sum​(ucar.ma2.Array a,
                                 java.util.List<ucar.ma2.Range> ranges)
                          throws ucar.ma2.InvalidRangeException
        Compute sum value of an array
        参数:
        a - Array a
        ranges - Range list
        返回:
        Sum value
        抛出:
        ucar.ma2.InvalidRangeException
      • sum

        public static ucar.ma2.Array sum​(java.util.List<ucar.ma2.Array> alist)
        Compute the sum arry from a list of arrays
        参数:
        alist - list of arrays
        返回:
        Sum array
      • sum

        public static double sum​(ucar.ma2.Array a)
        Summarize array
        参数:
        a - Array a
        返回:
        Summarize value
      • sum

        public static double sum​(ucar.ma2.Array a,
                                 double missingValue)
        Summarize array skip missing value
        参数:
        a - Array a
        missingValue - Missing value
        返回:
        Summarize value
      • prodDouble

        public static double prodDouble​(ucar.ma2.Array a)
        Produce array
        参数:
        a - Array a
        返回:
        Produce value
      • aveDouble

        public static double aveDouble​(ucar.ma2.Array a)
        Average array
        参数:
        a - Array a
        返回:
        Average value
      • aveDouble

        public static double aveDouble​(ucar.ma2.Array a,
                                       double missingValue)
        Average array skip missing value
        参数:
        a - Array a
        missingValue - Missing value
        返回:
        Average value
      • argMin

        public static int argMin​(ucar.ma2.Array a)
                          throws ucar.ma2.InvalidRangeException
        Get the index of the minimum value into the flattened array.
        参数:
        a - Array a
        返回:
        Minimum value index
        抛出:
        ucar.ma2.InvalidRangeException
      • argMin

        public static ucar.ma2.Array argMin​(ucar.ma2.Array a,
                                            int axis)
                                     throws ucar.ma2.InvalidRangeException
        Get the indices of the minimum values along an axis.
        参数:
        a - Array a
        axis - Axis
        返回:
        Indices
        抛出:
        ucar.ma2.InvalidRangeException
      • argMax

        public static int argMax​(ucar.ma2.Array a)
                          throws ucar.ma2.InvalidRangeException
        Get the index of the maximum value into the flattened array.
        参数:
        a - Array a
        返回:
        Maximum value index
        抛出:
        ucar.ma2.InvalidRangeException
      • argMax

        public static ucar.ma2.Array argMax​(ucar.ma2.Array a,
                                            int axis)
                                     throws ucar.ma2.InvalidRangeException
        Get the indices of the maximum values along an axis.
        参数:
        a - Array a
        axis - Axis
        返回:
        Indices
        抛出:
        ucar.ma2.InvalidRangeException
      • mean

        public static ucar.ma2.Array mean​(ucar.ma2.Array a,
                                          int axis)
                                   throws ucar.ma2.InvalidRangeException
        Compute mean value of an array along an axis (dimension)
        参数:
        a - Array a
        axis - Axis
        返回:
        Mean value array
        抛出:
        ucar.ma2.InvalidRangeException
      • mean

        public static double mean​(ucar.ma2.Array a)
        Compute mean value of an array
        参数:
        a - Array a
        返回:
        Mean value
      • mean

        public static ucar.ma2.Array mean​(java.util.List<ucar.ma2.Array> alist)
        Compute the arithmetic mean arry from a list of arrays
        参数:
        alist - list of arrays
        返回:
        Mean array
      • mean

        public static double mean​(ucar.ma2.Array a,
                                  java.util.List<ucar.ma2.Range> ranges)
                           throws ucar.ma2.InvalidRangeException
        Compute mean value of an array
        参数:
        a - Array a
        ranges - Range list
        返回:
        Mean value
        抛出:
        ucar.ma2.InvalidRangeException
      • std

        public static ucar.ma2.Array std​(ucar.ma2.Array a,
                                         int axis)
                                  throws ucar.ma2.InvalidRangeException
        Compute standard deviation value of an array along an axis (dimension)
        参数:
        a - Array a
        axis - Axis
        返回:
        Standard deviation value array
        抛出:
        ucar.ma2.InvalidRangeException
      • std

        public static double std​(ucar.ma2.Array a,
                                 java.util.List<ucar.ma2.Range> ranges)
                          throws ucar.ma2.InvalidRangeException
        Compute standard deviation value of an array
        参数:
        a - Array a
        ranges - Range list
        返回:
        Standard deviation value
        抛出:
        ucar.ma2.InvalidRangeException
      • std

        public static double std​(ucar.ma2.Array a)
                          throws ucar.ma2.InvalidRangeException
        Compute standard deviation value of an array
        参数:
        a - Array a
        返回:
        Standard deviation value
        抛出:
        ucar.ma2.InvalidRangeException
      • var

        public static ucar.ma2.Array var​(ucar.ma2.Array a,
                                         int axis)
                                  throws ucar.ma2.InvalidRangeException
        Compute variance value of an array along an axis (dimension)
        参数:
        a - Array a
        axis - Axis
        返回:
        Variance value array
        抛出:
        ucar.ma2.InvalidRangeException
      • var

        public static double var​(ucar.ma2.Array a,
                                 java.util.List<ucar.ma2.Range> ranges)
                          throws ucar.ma2.InvalidRangeException
        Compute variance value of an array
        参数:
        a - Array a
        ranges - Range list
        返回:
        Variance value
        抛出:
        ucar.ma2.InvalidRangeException
      • median

        public static ucar.ma2.Array median​(ucar.ma2.Array a,
                                            int axis)
                                     throws ucar.ma2.InvalidRangeException
        Compute median value of an array along an axis (dimension)
        参数:
        a - Array a
        axis - Axis
        返回:
        Median value array
        抛出:
        ucar.ma2.InvalidRangeException
      • median

        public static double median​(ucar.ma2.Array a,
                                    java.util.List<ucar.ma2.Range> ranges)
                             throws ucar.ma2.InvalidRangeException
        Compute median value of an array
        参数:
        a - Array a
        ranges - Range list
        返回:
        Median value
        抛出:
        ucar.ma2.InvalidRangeException
      • median

        public static double median​(ucar.ma2.Array a)
        Compute median value of an array
        参数:
        a - Array a
        返回:
        Median value
      • maximum

        public static ucar.ma2.Array maximum​(ucar.ma2.Array x1,
                                             ucar.ma2.Array x2)
        Element-wise maximum of array elements.
        参数:
        x1 - Array 1
        x2 - Array 2
        返回:
        The maximum of x1 and x2, element-wise.
      • fmax

        public static ucar.ma2.Array fmax​(ucar.ma2.Array x1,
                                          ucar.ma2.Array x2)
        Element-wise maximum of array elements, ignores NaNs.
        参数:
        x1 - Array 1
        x2 - Array 2
        返回:
        The maximum of x1 and x2, element-wise.
      • minimum

        public static ucar.ma2.Array minimum​(ucar.ma2.Array x1,
                                             ucar.ma2.Array x2)
        Element-wise minimum of array elements.
        参数:
        x1 - Array 1
        x2 - Array 2
        返回:
        The minimum of x1 and x2, element-wise.
      • fmin

        public static ucar.ma2.Array fmin​(ucar.ma2.Array x1,
                                          ucar.ma2.Array x2)
        Element-wise minimum of array elements, ignores NaNs.
        参数:
        x1 - Array 1
        x2 - Array 2
        返回:
        The minimum of x1 and x2, element-wise.
      • rolling_mean

        public static ucar.ma2.Array rolling_mean​(ucar.ma2.Array x,
                                                  int window,
                                                  boolean center)
        Moving average function
        参数:
        x - The data array
        window - Size of moving window
        center - Set the data in center moving window
        返回:
        Moving averaged array
      • missingToNaN

        public static void missingToNaN​(ucar.ma2.Array a,
                                        java.lang.Number missingv)
        Set missing value to NaN
        参数:
        a - Array a
        missingv - Missing value
      • setValue

        public static void setValue​(ucar.ma2.Array a,
                                    ucar.ma2.Array b,
                                    java.lang.Number value)
        Set value
        参数:
        a - Array a
        b - Array b - 0/1 data
        value - Value
      • setValue

        public static void setValue​(ucar.ma2.Array a,
                                    ucar.ma2.Array b,
                                    ucar.ma2.Array value)
        Set value
        参数:
        a - Array a
        b - Array b - 0/1 data
        value - Value array
      • asList

        public static java.util.List<java.lang.Object> asList​(ucar.ma2.Array a)
        As number list
        参数:
        a - Array a
        返回:
        Result number list
      • uv2ds

        public static ucar.ma2.Array[] uv2ds​(ucar.ma2.Array u,
                                             ucar.ma2.Array v)
        Get wind direction and wind speed from U/V
        参数:
        u - U component
        v - V component
        返回:
        Wind direction and wind speed
      • uv2ds

        public static double[] uv2ds​(double u,
                                     double v)
        Get wind direction and wind speed from U/V
        参数:
        u - U component
        v - V component
        返回:
        Wind direction and wind speed
      • ds2uv

        public static ucar.ma2.Array[] ds2uv​(ucar.ma2.Array windDir,
                                             ucar.ma2.Array windSpeed)
        Get wind U/V components from wind direction and speed
        参数:
        windDir - Wind direction
        windSpeed - Wind speed
        返回:
        Wind U/V components
      • ds2uv

        public static double[] ds2uv​(double windDir,
                                     double windSpeed)
        Get wind U/V components from wind direction and speed
        参数:
        windDir - Wind direction
        windSpeed - Wind speed
        返回:
        Wind U/V components
      • inPolygon

        public static ucar.ma2.Array inPolygon​(ucar.ma2.Array a,
                                               java.util.List<java.lang.Number> x,
                                               java.util.List<java.lang.Number> y,
                                               VectorLayer layer)
        In polygon function
        参数:
        a - Array a
        x - X dimension values
        y - Y dimension values
        layer - Polygon vector layer
        返回:
        Result array with cell values of 1 inside polygons and -1 outside polygons
      • inPolygon

        public static ucar.ma2.Array inPolygon​(ucar.ma2.Array a,
                                               java.util.List<java.lang.Number> x,
                                               java.util.List<java.lang.Number> y,
                                               PolygonShape ps)
        In polygon function
        参数:
        a - Array a
        x - X dimension values
        y - Y dimension values
        ps - Polygon shape
        返回:
        Result array with cell values of 1 inside polygons and -1 outside polygons
      • inPolygon

        public static ucar.ma2.Array inPolygon​(ucar.ma2.Array a,
                                               java.util.List<java.lang.Number> x,
                                               java.util.List<java.lang.Number> y,
                                               java.util.List<PolygonShape> polygons)
        In polygon function
        参数:
        a - Array a
        x - X dimension values
        y - Y dimension values
        polygons - PolygonShape list
        返回:
        Result array with cell values of 1 inside polygons and -1 outside polygons
      • inPolygon

        public static ucar.ma2.Array inPolygon​(ucar.ma2.Array x,
                                               ucar.ma2.Array y,
                                               java.util.List<PolygonShape> polygons)
        In polygon function
        参数:
        x - X coordinates
        y - Y coordinates
        polygons - PolygonShape list
        返回:
        Result boolean array
      • inPolygon

        public static ucar.ma2.Array inPolygon​(ucar.ma2.Array a,
                                               java.util.List<java.lang.Number> x,
                                               java.util.List<java.lang.Number> y,
                                               java.util.List<java.lang.Number> x_p,
                                               java.util.List<java.lang.Number> y_p)
        In polygon function
        参数:
        a - Array a
        x - X dimension values
        y - Y dimension values
        x_p - X coordinate of the polygon
        y_p - Y coordinate of the polygon
        返回:
        Result array with cell values of 1 inside polygons and -1 outside polygons
      • inPolygon

        public static ucar.ma2.Array inPolygon​(ucar.ma2.Array x,
                                               ucar.ma2.Array y,
                                               ucar.ma2.Array x_p,
                                               ucar.ma2.Array y_p)
        In polygon function
        参数:
        x - X coordinates
        y - Y coordinates
        x_p - X coordinate of the polygon
        y_p - Y coordinate of the polygon
        返回:
        Result boolean array
      • maskout

        public static ucar.ma2.Array maskout​(ucar.ma2.Array a,
                                             java.util.List<java.lang.Number> x,
                                             java.util.List<java.lang.Number> y,
                                             VectorLayer layer,
                                             java.lang.Number missingValue)
        Maskout function
        参数:
        a - Array a
        x - X dimension values
        y - Y dimension values
        layer - VectorLayer
        missingValue - Missing value
        返回:
        Result array with cell values of missing outside polygons
      • maskout

        public static ucar.ma2.Array maskout​(ucar.ma2.Array a,
                                             java.util.List<java.lang.Number> x,
                                             java.util.List<java.lang.Number> y,
                                             PolygonShape polygon,
                                             java.lang.Number missingValue)
        Maskout function
        参数:
        a - Array a
        x - X dimension values
        y - Y dimension values
        polygon - Polygon shape
        missingValue - Missing value
        返回:
        Result array with cell values of missing outside polygons
      • maskout

        public static ucar.ma2.Array maskout​(ucar.ma2.Array a,
                                             ucar.ma2.Array x,
                                             ucar.ma2.Array y,
                                             java.util.List<PolygonShape> polygons)
        Maskout function
        参数:
        a - Array a
        x - X Array
        y - Y Array
        polygons - Polygons for maskout
        返回:
        Result array with cell values of missing outside polygons
      • maskin

        public static ucar.ma2.Array maskin​(ucar.ma2.Array a,
                                            ucar.ma2.Array x,
                                            ucar.ma2.Array y,
                                            java.util.List<PolygonShape> polygons)
        Maskin function
        参数:
        a - Array a
        x - X Array
        y - Y Array
        polygons - Polygons for maskin
        返回:
        Result array with cell values of missing inside polygons
      • maskout_Remove

        public static ucar.ma2.Array[] maskout_Remove​(ucar.ma2.Array a,
                                                      ucar.ma2.Array x,
                                                      ucar.ma2.Array y,
                                                      java.util.List<PolygonShape> polygons)
        Maskout function
        参数:
        a - Array a
        x - X Array
        y - Y Array
        polygons - Polygons for maskout
        返回:
        Result arrays removing cells outside polygons
      • maskin_Remove

        public static ucar.ma2.Array[] maskin_Remove​(ucar.ma2.Array a,
                                                     ucar.ma2.Array x,
                                                     ucar.ma2.Array y,
                                                     java.util.List<PolygonShape> polygons)
        Maskin function
        参数:
        a - Array a
        x - X Array
        y - Y Array
        polygons - Polygons for maskin
        返回:
        Result arrays removing cells inside polygons
      • maskout

        public static ucar.ma2.Array maskout​(ucar.ma2.Array a,
                                             java.util.List<java.lang.Number> x,
                                             java.util.List<java.lang.Number> y,
                                             java.util.List<PolygonShape> polygons)
        Maskout function
        参数:
        a - Array a
        x - X dimension values
        y - Y dimension values
        polygons - PolygonShape list
        返回:
        Result array with cell values of missing outside polygons
      • maskout

        public static ucar.ma2.Array maskout​(ucar.ma2.Array a,
                                             java.util.List<java.lang.Number> x,
                                             java.util.List<java.lang.Number> y,
                                             java.util.List<PolygonShape> polygons,
                                             java.lang.Number missingValue)
        Maskout function
        参数:
        a - Array a
        x - X dimension values
        y - Y dimension values
        polygons - PolygonShape list
        missingValue - Missing value
        返回:
        Result array with cell values of missing outside polygons
      • maskout

        public static ucar.ma2.Array maskout​(ucar.ma2.Array a,
                                             ucar.ma2.Array m,
                                             java.lang.Number missingValue)
        Maskout function
        参数:
        a - Array a
        m - Array mask
        missingValue - Missing value
        返回:
        Result array
      • maskout

        public static ucar.ma2.Array maskout​(ucar.ma2.Array a,
                                             ucar.ma2.Array m)
        Maskout function
        参数:
        a - Array a
        m - Array mask
        返回:
        Result array
      • maskin

        public static ucar.ma2.Array maskin​(ucar.ma2.Array a,
                                            ucar.ma2.Array m)
        Maskin function
        参数:
        a - Array a
        m - Array mask
        返回:
        Result array
      • getR

        public static float getR​(java.util.List<java.lang.Number> xData,
                                 java.util.List<java.lang.Number> yData)
        Get correlation coefficient How well did the forecast values correspond to the observed values? Range: -1 to 1. Perfect score: 1.
        参数:
        xData - X data array
        yData - Y data array
        返回:
        Correlation coefficent
      • getR

        public static float getR​(ucar.ma2.Array xData,
                                 ucar.ma2.Array yData)
        Get correlation coefficient How well did the forecast values correspond to the observed values? Range: -1 to 1. Perfect score: 1.
        参数:
        xData - X data array
        yData - Y data array
        返回:
        Correlation coefficent
      • leastSquareTrend

        public static double[] leastSquareTrend​(java.util.List<java.lang.Number> xData,
                                                java.util.List<java.lang.Number> yData)
        Determine the least square trend equation - linear fitting
        参数:
        xData - X data array
        yData - Y data array
        返回:
        Result array - y intercept and slope
      • lineRegress

        public static double[] lineRegress​(java.util.List<java.lang.Number> xData,
                                           java.util.List<java.lang.Number> yData)
        Linear regress
        参数:
        xData - X data array
        yData - Y data array
        返回:
        Result array - y intercept, slope and correlation coefficent
      • lineRegress

        public static double[] lineRegress​(ucar.ma2.Array xData,
                                           ucar.ma2.Array yData)
        Linear regress
        参数:
        xData - X data array
        yData - Y data array
        返回:
        Slope, intercept, correlation coefficent, two-sided p-value, the standard error of the estimate for the slope, valid data number
      • polyVal

        public static ucar.ma2.Array polyVal​(java.util.List<java.lang.Number> p,
                                             ucar.ma2.Array x)
        Evaluate a polynomial at specific values. If p is of length N, this function returns the value: p[0]*x**(N-1) + p[1]*x**(N-2) + ... + p[N-2]*x + p[N-1]
        参数:
        p - array_like or poly1d object
        x - array_like or poly1d object
        返回:
        ndarray or poly1d
      • cdiff

        public static ucar.ma2.Array cdiff​(ucar.ma2.Array data,
                                           int dimIdx)
        Performs a centered difference operation on a grid data along one dimension direction
        参数:
        data - The grid data
        dimIdx - Direction dimension index
        返回:
        Result grid data
      • cdiff_bak

        public static ucar.ma2.Array cdiff_bak​(ucar.ma2.Array data,
                                               boolean isX)
        Performs a centered difference operation on a grid data in the x or y direction
        参数:
        data - The grid data
        isX - If is x direction
        返回:
        Result grid data
      • hcurl

        public static ucar.ma2.Array hcurl​(ucar.ma2.Array uData,
                                           ucar.ma2.Array vData,
                                           java.util.List<java.lang.Number> xx,
                                           java.util.List<java.lang.Number> yy)
        Calculates the vertical component of the curl (ie, vorticity)
        参数:
        uData - U component
        vData - V component
        xx - X dimension value
        yy - Y dimension value
        返回:
        Curl
      • hdivg

        public static ucar.ma2.Array hdivg​(ucar.ma2.Array uData,
                                           ucar.ma2.Array vData,
                                           java.util.List<java.lang.Number> xx,
                                           java.util.List<java.lang.Number> yy)
        Calculates the horizontal divergence using finite differencing
        参数:
        uData - U component
        vData - V component
        xx - X dimension value
        yy - Y dimension value
        返回:
        Divergence
      • magnitude

        public static ucar.ma2.Array magnitude​(ucar.ma2.Array uData,
                                               ucar.ma2.Array vData)
        Take magnitude value from U/V grid data
        参数:
        uData - U grid data
        vData - V grid data
        返回:
        Magnitude grid data
      • tc2tf

        public static ucar.ma2.Array tc2tf​(ucar.ma2.Array tc)
        Calculate fahrenheit temperature from celsius temperature
        参数:
        tc - Celsius temperature
        返回:
        Fahrenheit temperature
      • tf2tc

        public static ucar.ma2.Array tf2tc​(ucar.ma2.Array tf)
        Calculate celsius temperature from fahrenheit temperature
        参数:
        tf - Fahrenheit temperature
        返回:
        Celsius temperature
      • qair2rh

        public static ucar.ma2.Array qair2rh​(ucar.ma2.Array qair,
                                             ucar.ma2.Array temp,
                                             double press)
        Calculate relative humidity from specific humidity
        参数:
        qair - Specific humidity, dimensionless (e.g. kg/kg) ratio of water mass / total air mass
        temp - Temperature - degree c
        press - Pressure - hPa (mb)
        返回:
        Relative humidity as percent (i.e. 80%)
      • qair2rh

        public static ucar.ma2.Array qair2rh​(ucar.ma2.Array qair,
                                             ucar.ma2.Array temp,
                                             ucar.ma2.Array press)
        Calculate relative humidity
        参数:
        qair - Specific humidity, dimensionless (e.g. kg/kg) ratio of water mass / total air mass
        temp - Temperature - degree c
        press - Pressure - hPa (mb)
        返回:
        Relative humidity as percent (i.e. 80%)
      • press2Height

        public static ucar.ma2.Array press2Height​(ucar.ma2.Array press)
        Calculate height from pressure
        参数:
        press - Pressure - hPa
        返回:
        Height - m
      • height2Press

        public static ucar.ma2.Array height2Press​(ucar.ma2.Array height)
        Calculate pressure from height
        参数:
        height - Height - m
        返回:
        Pressure - hPa