orgposada.nummethpos.vectorpos
Class VectorPos

java.lang.Object
  |
  +--orgposada.nummethpos.vectorpos.VectorPos

public class VectorPos
extends java.lang.Object

Libreria de metodos para arreglos unidimensionales (vectores) y entrada/salida de arreglos bidimensionales (matrices).

Version:
2.7, 14/01/2002 arrayToString(int[][]), vectorArrayToDoubleArray(), stringTableToVectorArray()
Author:
Omar Posada Villarreal

Constructor Summary
VectorPos()
           
 
Method Summary
static double absoluteNorm(double[] vectorX)
          Calcula la norma absoluta de un vector.
static double absoluteNorm(double[] vectorX, double[] vectorY)
          Calcula la norma absoluta de vectorX - vectorY.
static double[] add(double[] vectorX, double[] vectorY)
          Suma dos vectores.
static java.lang.String arrayToColumn(double[] theVector)
          Convierte un arreglo en una cadena (columna, vertical).
static java.lang.String arrayToRow(double[] theVector)
          Convierte un arreglo en una cadena (fila, horizontal).
static java.lang.String arrayToString(double[][] matrix)
          Representacion en cadena de una matriz.
static java.lang.String arrayToString(double[] theVector, java.lang.String separator)
          Convierte un arreglo en una cadena (columna, vertical).
static java.lang.String arrayToString(int[][] matrix)
          Representacion en cadena de una matriz.
static void clean(double[] vectorX)
          Inicializa a cero el vector.
static void copyVector(double[] source, double[] target)
          Asigna los valores de "source" a "target".
static double dotProduct(double[] vectorX, double[] vectorY)
          Deprecated. multiply
static double[] escalarVectorProduct(double escalar, double[] vectorX)
          Deprecated. multiply
static void fill(double[] vectorX, double value)
          Inicializa con el valor todo el vector.
static double[] getColumnAt(double[][] matrix, int column)
          Obtiene la columna de una matriz.
static int indexOfMaxAbs(double[] vectorX)
          Busca el primer elemento mas grande en valor absoluto del vector.
static double infiniteNorm(double[] vectorX)
          Regresa el valor del maximo elemento del vector.
static double multiply(double[] vectorRow, double[] vectorColumn)
          Producto punto (escalar) entre dos vectores.
static double[] multiply(double scalar, double[] vectorX)
          Multiplica un escalar por un vector.
static double[] parseDouble(java.lang.String strCoef)
          Parsea el texto en busca de coeficientes.
static double[][] parseMatrix(java.lang.String strMatrix, int rows, int columns)
          Parsea el texto en busca de una matriz bien formada.
static void print(double[][] matrix)
          Muestra la matriz en la consola.
static void printColumn(double[] vectorCol, java.lang.String message)
          Muestra la matriz de double en la consola.
static void printRow(double[] vectorRow)
          Muestra la matriz de double en la consola.
static void printRow(double[] vectorRow, java.lang.String message)
          Muestra la matriz de double en la consola.
static double rowColumnProduct(double[] vectorRow, double[] vectorColumn)
          Deprecated. multiply
static void sortAscendent(double[] vectorX)
          Ordena un arreglo de forma ascendente.
static void sortDescendent(double[] vectorX)
          Ordena un arreglo de forma descendente.
static java.util.Vector[] stringTableToVectorArray(java.lang.String str, int columns, java.lang.String[] headers)
          Parsea una cadena en forma de tabla, toma los encabezados almacenandolos y regresando los datos numericos por columnas.
static double[] substract(double[] vectorX, double[] vectorY)
          Al primer vector le resta el segundo.
static double[][] vectorArrayToDoubleArray(java.util.Vector[] vectArr)
          Convierte un arreglo de vectores en un arreglo bidimensional transpuesto de numeros.
static java.lang.String vectorToStringColumn(double[] vectorCol)
          Deprecated. Usar arrayToColumn() Revision 29/11/2001
static java.lang.String vectorToStringRow(double[] vectorRow)
          Deprecated. Usar arrayToRow() Revision 29/11/2001
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, toString, wait, wait, wait
 

Constructor Detail

VectorPos

public VectorPos()
Method Detail

absoluteNorm

public static double absoluteNorm(double[] vectorX)
                           throws java.lang.NullPointerException
Calcula la norma absoluta de un vector. Llamada "norma euclidiana".
Parameters:
vectorX - Vector a obtener la norma.
Throws:
java.lang.NullPointerException - El vector es null.

absoluteNorm

public static double absoluteNorm(double[] vectorX,
                                  double[] vectorY)
                           throws java.lang.NullPointerException,
                                  java.lang.IllegalArgumentException
Calcula la norma absoluta de vectorX - vectorY.
Parameters:
vectorX - Vector a obtener la norma.
vectorY - Vector a obtener la norma.
Returns:
0.0 Si no son del mismo taman~o o se anulan
Throws:
java.lang.NullPointerException - El vector es null.
java.lang.IllegalArgumentException - No son del mismo taman~o.

indexOfMaxAbs

public static int indexOfMaxAbs(double[] vectorX)
                         throws java.lang.NullPointerException
Busca el primer elemento mas grande en valor absoluto del vector. Abreviacion de "firstIndexOfMaximumAbsoluteValue".

infiniteNorm

public static double infiniteNorm(double[] vectorX)
                           throws java.lang.NullPointerException
Regresa el valor del maximo elemento del vector. Notacion: || x ||oo (infinite).

dotProduct

public static double dotProduct(double[] vectorX,
                                double[] vectorY)
                         throws java.lang.NullPointerException
Deprecated. multiply

Equivalente a multiply == dotProduct == rowColumnProduct

rowColumnProduct

public static double rowColumnProduct(double[] vectorRow,
                                      double[] vectorColumn)
                               throws java.lang.NullPointerException
Deprecated. multiply

Equivalente a multiply == dotProduct == rowColumnProduct

escalarVectorProduct

public static double[] escalarVectorProduct(double escalar,
                                            double[] vectorX)
Deprecated. multiply

Equivalente a multiply == escalarVectorProduct

multiply

public static double multiply(double[] vectorRow,
                              double[] vectorColumn)
                       throws java.lang.NullPointerException
Producto punto (escalar) entre dos vectores. Multiplica un vector renglon por uno columna.
Returns:
Escalar con el producto. Si no son del mismo taman~o, 0.0.

multiply

public static double[] multiply(double scalar,
                                double[] vectorX)
                         throws java.lang.NullPointerException
Multiplica un escalar por un vector. "cX".
Returns:
Escalar.

add

public static double[] add(double[] vectorX,
                           double[] vectorY)
                    throws java.lang.NullPointerException
Suma dos vectores.
Returns:
Vector con la suma.

substract

public static double[] substract(double[] vectorX,
                                 double[] vectorY)
                          throws java.lang.NullPointerException
Al primer vector le resta el segundo. v1 - v2
Returns:
Vector con la resta .

vectorArrayToDoubleArray

public static double[][] vectorArrayToDoubleArray(java.util.Vector[] vectArr)
Convierte un arreglo de vectores en un arreglo bidimensional transpuesto de numeros. Se recibe una tabla con p columnas y n renglones, y se convierte a un arreglo de p renglones y n columnas. Esto para facilitar el procesamiento por columnas como media y desv. estandar. Ejemplo: una tabla de 3 variables y 150 mediciones. La tabla sera de 150 x 3, y el arreglo de 3 x 150.
Parameters:
vectArr - Tabla con p variables y n mediciones.
Returns:
Arreglo de p renglones y n columnas.

stringTableToVectorArray

public static java.util.Vector[] stringTableToVectorArray(java.lang.String str,
                                                          int columns,
                                                          java.lang.String[] headers)
Parsea una cadena en forma de tabla, toma los encabezados almacenandolos y regresando los datos numericos por columnas.
Parameters:
str - Cadena a parsear.
headers - Donde se guardaran los encabezados. Se supone previamente creado con "columns" elementos.
columns - Numero de columnas en la tabla.
Returns:
Arreglo de vectores con numeros como los datos.

sortAscendent

public static void sortAscendent(double[] vectorX)
                          throws java.lang.NullPointerException
Ordena un arreglo de forma ascendente. Metodo bubble sort.
Parameters:
vectorX - Referencia del arreglo a ordenar.
Throws:
java.lang.NullPointerException - El vector es nulo.

sortDescendent

public static void sortDescendent(double[] vectorX)
                           throws java.lang.NullPointerException
Ordena un arreglo de forma descendente. Metodo bubble sort.
Parameters:
vectorX - Referencia del arreglo a ordenar.
Throws:
java.lang.NullPointerException - El vector es nulo.

clean

public static void clean(double[] vectorX)
                  throws java.lang.NullPointerException
Inicializa a cero el vector.
Parameters:
vectorX - Arreglo a limpiar.
Throws:
java.lang.NullPointerException - El vector es nulo.

fill

public static void fill(double[] vectorX,
                        double value)
                 throws java.lang.NullPointerException
Inicializa con el valor todo el vector. Se deprecate
 public static boolean copyVector (double[] source, double[] target) 
 
Throws:
java.lang.NullPointerException - El vector es nulo.

copyVector

public static void copyVector(double[] source,
                              double[] target)
                       throws java.lang.NullPointerException
Asigna los valores de "source" a "target". No crea una nueva copia. Se deprecate copyArray() y boolean copyVector()
Throws:
java.lang.NullPointerException - El vector fue null.
java.lang.IllegalArgumentException - Los vectores no son del mismo taman~o.

printColumn

public static void printColumn(double[] vectorCol,
                               java.lang.String message)
                        throws java.lang.NullPointerException
Muestra la matriz de double en la consola.

printRow

public static void printRow(double[] vectorRow,
                            java.lang.String message)
                     throws java.lang.NullPointerException
Muestra la matriz de double en la consola.

printRow

public static void printRow(double[] vectorRow)
                     throws java.lang.NullPointerException
Muestra la matriz de double en la consola.

print

public static void print(double[][] matrix)
                  throws java.lang.NullPointerException
Muestra la matriz en la consola.

arrayToString

public static java.lang.String arrayToString(double[][] matrix)
Representacion en cadena de una matriz. Las columnas se separan con tabulado "\t". Los renglones se separan con otra linea "\n".
Parameters:
matrix - Arreglo bidimensional.
Returns:
Regresa una cadena con la matriz de doubles.

arrayToString

public static java.lang.String arrayToString(int[][] matrix)
Representacion en cadena de una matriz. Las columnas se separan con tabulado "\t". Los renglones se separan con otra linea "\n".
Parameters:
matrix - Arreglo bidimensional de int.
Returns:
Regresa una cadena con la matriz de doubles.

arrayToString

public static java.lang.String arrayToString(double[] theVector,
                                             java.lang.String separator)
                                      throws java.lang.NullPointerException
Convierte un arreglo en una cadena (columna, vertical). Los separa con el "separator".
Parameters:
theVector - Numeros a concatenar.
Returns:
Cadena con numeros.
Throws:
java.lang.NullPointerException - El vector fue null.

arrayToRow

public static java.lang.String arrayToRow(double[] theVector)
                                   throws java.lang.NullPointerException
Convierte un arreglo en una cadena (fila, horizontal). Los separa con un espacio. Llama a "arrayToString(double[], String)"
Parameters:
vectorRow - Numeros a concatenar.
Returns:
Cadena con numeros.
Throws:
java.lang.NullPointerException - El vector fue null.

arrayToColumn

public static java.lang.String arrayToColumn(double[] theVector)
                                      throws java.lang.NullPointerException
Convierte un arreglo en una cadena (columna, vertical). Los separa con una nueva linea.
Parameters:
vectorCol - Numeros a concatenar.
Returns:
Cadena con numeros.
Throws:
java.lang.NullPointerException - El vector fue null.

vectorToStringColumn

public static java.lang.String vectorToStringColumn(double[] vectorCol)
                                             throws java.lang.NullPointerException
Deprecated. Usar arrayToColumn() Revision 29/11/2001

Regresa el vector columna en una cadena vertical.
Returns:
Cadena con el vector columna.

vectorToStringRow

public static java.lang.String vectorToStringRow(double[] vectorRow)
                                          throws java.lang.NullPointerException
Deprecated. Usar arrayToRow() Revision 29/11/2001

Regresa el vector renglon columna en una cadena horizontal.
Returns:
Cadena con el vector renglon.

parseMatrix

public static double[][] parseMatrix(java.lang.String strMatrix,
                                     int rows,
                                     int columns)
                              throws java.io.IOException,
                                     java.lang.IllegalArgumentException
Parsea el texto en busca de una matriz bien formada.
Throws:
java.io.IOException - Problemas en la lectura de la cadena.
java.lang.IllegalArgumentException - Los renglones y columnas no son positivos, o el numero de elementos encontrados es menor del esperado (numero de elementos < (rows * columns) ).

getColumnAt

public static double[] getColumnAt(double[][] matrix,
                                   int column)
Obtiene la columna de una matriz.
Parameters:
matrix - Arreglo de numeros.
Numero - de columna a extraer (inicia en 0).

parseDouble

public static double[] parseDouble(java.lang.String strCoef)
                            throws java.lang.IllegalArgumentException,
                                   java.lang.NumberFormatException
Parsea el texto en busca de coeficientes. Si es una palabra asigna 0.0
Parameters:
strCoef - Cadena con los coeficientes.
Throws:
java.lang.IllegalArgumentException - El numero de coeficientes es menor que uno.
java.lang.NumberFormatException - Hay un elemento no numerico.