Overview   Project   Class   Tree   Deprecated   Index 
Optimización Mínimos Cuadrados de la Ecuación Logística con Quasi Newton modificado y Double dogleg step
FRAMES    NO FRAMES
SUMMARY:  INNER | FIELD | CONSTR | METHOD

matrixdouble
Class VectorDouble

   in vectordouble.h
   in vectordouble.cpp

class VectorDouble

Representacion de un vector. Caso: Logica uno. La primera fila y columna si se usan. La memoria solicitada es de (nr x nc).


Constructor Summary
VectorDouble( VectorDouble& source )
          Constructor de copia.
VectorDouble( int theSize = 1, int theLogic = 0, bool clean = true )
          Construye un vector.
~VectorDouble()
          Libera memoria.
 
Method Summary
 void clean()
          Limpia el vector con 0.0.
 void copyFrom( VectorDouble& source )
          Asume dimensiones y logica iguales.
 void deleteArray()
          Usado por RectangularMatrix::deleteRectangular.
 VectorDouble diagonalProduct( VectorDouble& right )
          Toma el vector actual como si fuera una matriz diagonal.
 void fill( double value )
          Llena el vector con el valor indicado.
 double generalNorm( double p )
          Calcula la norma del minimo residuo absoluto || v ||p lp General norm * @param p p=[1, infinity) No lo checa.
 int getLogic() const
          
Returns:
Logica del vector.
 int getSize() const
          
Returns:
El taman~o del vector.
 bool hasAlmostZeros()
          
Returns:
true: Hay al menos un cero (menor que MACHEPS).
 double infinityNorm()
          Calcula la norma superior o infinita.
 VectorDouble inverse()
          Calcula la inversa.
 void multiply( double escalar, VectorDouble& product )
          Multiplica un vector por un escalar.
 double norm1()
          Calcula la norma del minimo residuo absoluto * || v ||1 l1 LAR norm (Least Absolute Residual)
 double norm2()
          Calcula la norma del minimo residuo absoluto * || v ||2 l2 Euclidean or least-squares norm
 const double& operator()( int index ) const
          Permite asignacion (operator=).
 VectorDouble operator*( double right )
          Multiplica un vector por un escalar.
 double operator*( VectorDouble& right )
          Multiplica un vector por otro vector.
 VectorDouble operator+( VectorDouble& right )
          No checa dimensiones, ni logica.
 VectorDouble operator-( VectorDouble& right )
          No checa dimensiones, ni logica.
 const VectorDouble& operator=( const VectorDouble& right )
          Redimensiona el vector, copia los datos de right y las caracteristicas.
 const double& operator[]( int index ) const
          No hay necesidad se sobrecargar operator=
Parameters:
index - Indice del elemento a obtener.
 void print( int digits )
          
Parameters:
digits - Precision.
 static void read2ColumnsFromFile( string pathFile, VectorDouble& v1, VectorDouble& v2 )
          Lee de un archivo dos columnas.
 void readElements()
          Solo lee los elementos sin la dimension desde consola.
 void resize( int theSize, int theLogic, bool cleanMe )
          Para ser usado por RectangularMatrix.
 void setLogic( int theLogic )
          
Parameters:
theLogic - Nueva logica del vector.
 string toString( int digits = 6, char separator ='\t' )
          
Parameters:
digits - Precision.
 

Constructor Detail

VectorDouble

public VectorDouble( VectorDouble& source );
Constructor de copia. Copia dimension, logica y valores.

VectorDouble

public VectorDouble( int theSize = 1, int theLogic = 0, bool clean = true );
Construye un vector. Necesario un constructor sin parametros para crear arreglo de VectorDouble.
Parameters:
theSize - Taman~o del vector. Min: 1.
theLogic - 0: Logica 0. 1: Otro numero. * @param cleanMe true: Limpia el vector con 0.0. false: no inicializa.

~VectorDouble

public ~VectorDouble();
Libera memoria. Para funciones fuera de clases, usar deleteArray(). * Para llamar al destructor theObject = NULL;


Method Detail

clean

public void clean();
Limpia el vector con 0.0.

copyFrom

public void copyFrom( VectorDouble& source );
Asume dimensiones y logica iguales.

deleteArray

public void deleteArray();
Usado por RectangularMatrix::deleteRectangular. * Cuando no funciona el destructor (~).

diagonalProduct

public VectorDouble diagonalProduct( VectorDouble& right );
Toma el vector actual como si fuera una matriz diagonal. [ v[0] 0 ][r[0]] [ v[2] ][r[1]] [ ... ][...] [ 0 v[n] ][r[n]] Se multiplica la matriz diagonal por un vector columna, resultando un vector columna.

fill

public void fill( double value );
Llena el vector con el valor indicado. Logica cero.
Parameters:
value - Cada elemento valdra este numero.

generalNorm

public double generalNorm( double p );
Calcula la norma del minimo residuo absoluto || v ||p lp General norm * @param p p=[1, infinity) No lo checa.

getLogic

public int getLogic() const;
Returns:
Logica del vector.

getSize

public int getSize() const;
Returns:
El taman~o del vector.

hasAlmostZeros

public bool hasAlmostZeros();
Returns:
true: Hay al menos un cero (menor que MACHEPS). * false: todos los elementos distintos de cero.

infinityNorm

public double infinityNorm();
Calcula la norma superior o infinita. * || v ||oo l(infinity) sup norm

inverse

public VectorDouble inverse();
Calcula la inversa. 1/v[i].

multiply

public void multiply( double escalar, VectorDouble& product ) throw( invalid_argument );
Multiplica un vector por un escalar. Logica cero.
Parameters:
product - Donde se almacenara el resultado

norm1

public double norm1();
Calcula la norma del minimo residuo absoluto * || v ||1 l1 LAR norm (Least Absolute Residual)

norm2

public double norm2();
Calcula la norma del minimo residuo absoluto * || v ||2 l2 Euclidean or least-squares norm

operator()

public const double& operator()( int index ) const throw( invalid_argument );
Permite asignacion (operator=). Logica 0, (0, 0) apunta al matematico A 1,1 esq sup izq
Parameters:
row - Logica cero: [0, row -1]. Logica uno: [1, row]
column - Logica cero: [0, col -1]. Logica uno: [1, col]

operator*

public VectorDouble operator*( double right );
Multiplica un vector por un escalar. Logica cero. * @return Nuevo Vector multiplicado.

operator*

public double operator*( VectorDouble& right ) throw( invalid_argument );
Multiplica un vector por otro vector. Producto interno. Checa dimensiones. Logica cero.
Parameters:
y - Segundo operador.

operator+

public VectorDouble operator+( VectorDouble& right );
No checa dimensiones, ni logica.

operator-

public VectorDouble operator-( VectorDouble& right );
No checa dimensiones, ni logica.

operator=

public const VectorDouble& operator=( const VectorDouble& right );
Redimensiona el vector, copia los datos de right y las caracteristicas.

operator[]

public const double& operator[]( int index ) const;
No hay necesidad se sobrecargar operator=
Parameters:
index - Indice del elemento a obtener.
Returns:
El elemento del indice.

print

public void print( int digits );
Parameters:
digits - Precision. Numero de digitos. Logica cero.

read2ColumnsFromFile

public static void read2ColumnsFromFile( string pathFile, VectorDouble& v1, VectorDouble& v2 ) throw( runtime_error );
Lee de un archivo dos columnas. Ignora las cadenas. Ejemplo:
Dim	3
Tiempo	Poblacion
0.00	2.50000000000
0.25	4.46185192849
0.50	7.09001693225

readElements

public void readElements();
Solo lee los elementos sin la dimension desde consola. Logica cero.

resize

public void resize( int theSize, int theLogic, bool cleanMe );
Para ser usado por RectangularMatrix. Libera y asigna memoria. Se pierden los datos. Si es del mismo taman~o, no hace nada. * Logica cero.

setLogic

public void setLogic( int theLogic );
Parameters:
theLogic - Nueva logica del vector.

toString

public string toString( int digits = 6, char separator ='\t' );
Parameters:
digits - Precision. Numero de digitos. Logica cero.

 Overview   Project   Class   Tree   Deprecated   Index 
Optimización Mínimos Cuadrados de la Ecuación Logística con Quasi Newton modificado y Double dogleg step
FRAMES    NO FRAMES
SUMMARY:  INNER | FIELD | CONSTR | METHOD