/* SCCS @(#)NslGetRow.java 1.4 ---09/01/99 --00:18:24 */
// Copyright: Copyright (c) 1997 University of Southern California Brain Project.
// Copyright: This software may be freely copied provided the toplevel
// Copyright: COPYRIGHT file is included with each such copy.
// Copyright: Email nsl@java.usc.edu.
////////////////////////////////////////////////////////////
//
// NslGetRow routines
//
//
/**
NslGetRow
There are two basic format for the evaluation method in
this routine:
1, eval(a) -> c
a is the parameter to evaluate the Get of
a pointwise and the result is passed out as c
2. eval(dest, a) -> c
a is the parameter of the evaluation function and
dest is the temporary space to hold the result.
The method returns the reference to dest.
NslGetRow always returns what was passed in.
*/
package nslj.src.math;
//import java.util.Arrays;
import nslj.src.lang.*;
public final class NslGetRow {
//-----------------------------------------------
//native 0d double
public static double eval(double a) {
return a;
}
//native 1d double
public static double[] eval(double[] dest, double[]_data,int i) {
int size1 = _data.length;
System.arraycopy(_data,0,dest,0,size1);
return dest;
}
public static double[] eval(double[] _data, int i) {
int size1 = _data.length;
double[] dest=new double[size1];
return (eval(dest,_data, i));
}
//native 2d double
public static double[] eval(double[] dest, double[][] _data, int i) {
int j;
int size1 = _data.length;
int size2 = _data[0].length;
if (dest.length != size2) {
dest = new double[size2];
}
for(j=0; j