File numerics/src/tools/lumod_wrapper.h#

Go to the source code of this file

Wrapper around lumod.

Defines

SN_LUMOD_NEED_REFACTORIZATION#

Functions

static inline unsigned SN_lumod_need_refactorization(int info)#
static inline unsigned SN_lumod_find_arg_var(int *array, int p, unsigned n)#
SN_lumod_dense_data *SN_lumod_dense_allocate(unsigned n, unsigned maxmod)#
void SM_lumod_dense_free(SN_lumod_dense_data *lumod_data)#
int SN_lumod_dense_solve(SN_lumod_dense_data *lumod_data, double *x, double *col_tilde)#
void SN_lumod_add_row_col(SN_lumod_dense_data *lumod_data, unsigned leaving_indx, double *col)#
void SN_lumod_replace_col(SN_lumod_dense_data *lumod_data, unsigned index_col, double *col)#
void SN_lumod_replace_row(SN_lumod_dense_data *lumod_data, unsigned index_row, unsigned leaving_indx)#
void SN_lumod_delete_row_col(SN_lumod_dense_data *lumod_data, unsigned index_row, unsigned index_col)#
int SN_lumod_factorize(SN_lumod_dense_data *lumod_data, unsigned *basis, NumericsMatrix *M, double *covering_vector)#
struct SN_lumod_dense_data#
#include <lumod_wrapper.h>

Data structure for the LUMOD (successive rank-one update of a matrix)

Public Members

unsigned n#

size of the matrix H

unsigned maxmod#

maximum number of changes

unsigned k#

number of rows (or columns) of C

double *LU_H#

LU factors of the initial matrix H.

lapack_int *ipiv_LU_H#

pivot for the LU factorization of H

unsigned *factorized_basis#

basis when H was factorized and storing for the info where the columns of the non basic variables are in U and when a basic variable exited

int *row_col_indx#

Store the information to which column or row the variable correspond.

double *Uk#

matrix which keeps track of modified columns in Hk

double *Yk#

matrix of changed columns in Hk (row major)

double *L_C#

L matrix of the LU factorization for Ck.

double *U_C#

U matrix of the LU factorization for Ck.

double *y#

y vector for LUMOD

double *z#

z vector for LUMOD

double *w#

work vector for LUMOD