|
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 | DETAIL: FIELD | CONSTR | METHOD |
MatrixDouble | +--RectangularMatrixin rectangularmatrix.h
Caso: Logica uno. La memoria solicitada es de (nr x nc). No necesita desperdicio de memoria para funcionar con Numerical Recipes.
Field Summary | |
protected VectorDouble* |
m
No debe ser publico. |
Fields inherited from class MatrixDouble |
rows, columns, logic |
Constructor Summary | |
RectangularMatrix( int theRows, int theColumns, int theLogic, bool cleanMe = true )
Construye una matrix rectangular de nr x nc. |
|
~RectangularMatrix()
Libera recursos. |
Method Summary | |
static void |
add( RectangularMatrix& right, RectangularMatrix& left, RectangularMatrix& res )
Suma las matrices, regresa una nueva matriz con el resultado. |
void |
clean()
Limpia la matriz. |
void |
copyFrom( RectangularMatrix& matrix )
Copia los datos a la matriz actual. |
void |
deleteRectangular()
Usado por destructor y resize. |
void |
fill( double value )
Llena la matriz con el valor indicado. |
static void |
multiply( RectangularMatrix& right, RectangularMatrix& left, RectangularMatrix& res )
Multiplica la matriz actual por la del argumento. |
static void |
multiply( RectangularMatrix& right, double left, RectangularMatrix& res )
Multiplica la matriz actual por un escalar y crea una matriz cuadrada del mismo taman~o Ejemplo: No checa dimensiones, ni logica Logica cero. |
const double& |
operator()( int row, int column ) const
Permite asignacion (operator=). |
VectorDouble |
operator*( VectorDouble& left )
Multiplica la matriz actual por un vector columna (arreglo unidimensional de "double") y crea un vector columna "b" de taman~o m para almacenar el resultado a partir de la dimension de A. |
const RectangularMatrix& |
operator=( const RectangularMatrix& right )
Protege de no usarlo. |
const VectorDouble& |
operator[]( int row ) const
Proteger a la matriz de reasignacion de memoria. |
void |
print( int digits ) const
Muestra la matriz en la consola con un cierto numero de digitos. |
void |
print() const
Muestra la matriz en la consola. |
void |
readElements()
Entrada de la matriz sin las dimensiones en la consola. |
void |
resize( int theRows, int theColumns, int theLogic, bool cleanMe )
Reconstruye todos los parametros de la matriz. |
void |
setLogic( int theLogic )
Cambia la logica de la matriz. |
static void |
substract( RectangularMatrix& right, RectangularMatrix& left, RectangularMatrix& res )
Resta las matrices, regresa una nueva matriz con el resultado. |
VectorDouble |
takeDiagonal()
|
void |
transpose( RectangularMatrix& matrix )
Transpone una matriz. |
Methods inherited from class MatrixDouble |
getLogic, setLogic, getRows, getColumns |
Field Detail |
protected VectorDouble* m;
Constructor Detail |
public RectangularMatrix( int theRows, int theColumns, int theLogic, bool cleanMe = true );
cleanMe
- true: Limpia la matriz con 0.0. false: no inicializa.public ~RectangularMatrix();
Method Detail |
public static void add( RectangularMatrix& right, RectangularMatrix& left, RectangularMatrix& res );
public void clean();
public void copyFrom( RectangularMatrix& matrix );
public void deleteRectangular();
public void fill( double value );
value
- Cada elemento valdra este numero.public static void multiply( RectangularMatrix& right, RectangularMatrix& left, RectangularMatrix& res );
public static void multiply( RectangularMatrix& right, double left, RectangularMatrix& res ) throw( runtime_error );
public const double& operator()( int row, int column ) const throw( invalid_argument );
row
- Logica cero: [0, row -1]. Logica uno: [1, row]
column
- Logica cero: [0, col -1]. Logica uno: [1, col]public VectorDouble operator*( VectorDouble& left );
arrDoubC = mdA.multiplyBy(arrDoubB)
premultiply
public const RectangularMatrix& operator=( const RectangularMatrix& right ) throw( runtime_error );
public const VectorDouble& operator[]( int row ) const;
row
- Logica cero: [0, row -1]. Logica uno: [1, row]
column
- Logica cero: [0, col -1]. Logica uno: [1, col]public void print( int digits ) const;
digits
- Numero de digitos a mostra (fixed).public void print() const;
public void readElements();
public void resize( int theRows, int theColumns, int theLogic, bool cleanMe );
public void setLogic( int theLogic );
theLogica
- 0: Logica cero. !=0: Logica 1.public static void substract( RectangularMatrix& right, RectangularMatrix& left, RectangularMatrix& res );
public VectorDouble takeDiagonal();
public void transpose( RectangularMatrix& matrix );
|
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 | DETAIL: FIELD | CONSTR | METHOD |