/*******************************************************************************
*
* Copyright 2010 Alexandru Craciun, and individual contributors as indicated
* by the @authors tag.
*
* This is free software; you can redistribute it and/or modify it
* under the terms of the GNU Lesser General Public License as
* published by the Free Software Foundation; either version 3 of
* the License, or (at your option) any later version.
*
* This software is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this software; if not, write to the Free
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
******************************************************************************/
package org.netxilia.functions;
import org.netxilia.spi.formula.Functions;
/*
*
*/
@Functions
public class ArrayFunctions {
/**
* Calculates the frequency distribution in a one-column-array. The default value supply and the number of intervals
* or classes are used to count how many values are omitted on the single intervals. Data is the array of, or
* reference to, the set of values to be counted. Classes is the array of the class set.
*/
// public int[] FREQUENCY(Iterator<Double> data, Iterator<Double>classes ){
//
// }
// public double[] GROWTH(data_Y, data_X, new_data_X, function_type) {
//
// }
//
// public double[] LINEST(data_Y, data_X, linear_type, stats){
//
// }
// public double[] LOGEST(data_Y, data_X, function_type, stats){
//
// }
/**
* Returns the array determinant of an array. This function returns a value in the current cell, it is not necessary
* to define a range for the results. Array is a square array in which the determinants are defined.
*/
// public double MDETERM(array){
//
// }
// public double [][] MINVERSE(array){
//
// }
//
// public double[][] MMULT(array, array){
//
// }
/**
* Multiplies corresponding elements in the given arrays, and returns the sum of those products. Array 1, array
* 2,...array 30 are arrays whose corresponding elements are to be multiplied. At least one array must be part of
* the argument list. If only one array is given, all array elements are summed.
*
* @return
*/
// public double SUMPRODUCT(array 1, array 2, ...array 30){
//
// }
/**
* Returns the sum of the difference of squares of corresponding values in two arrays. Array_X is the first array
* whose elements are to be squared and added. Array_Y is the second array whose elements are to be squared and
* subtracted.
*
* @return
*/
// public double SUMX2MY2(array_X, array_Y){
//
// }
/**
* Returns the sum of the sum of squares of corresponding values in two arrays. Array_X is the first array whose
* arguments are to be squared and added. Array_Y is the second array, whose elements are to be added and squared.
*/
// public double SUMX2PY2(array_X, array_Y){
//
// }
// public double SUMXMY2(array_X, array_Y){
//
// }
// public double [][] TRANSPOSE(array){
//
// }
// public double [] TREND(data_Y, data_X, new_data_X, linear_Type){
//
// }
}