1 #include <../../nrnconf.h> 34 static char rcsid[] =
"hessen.c,v 1.1 1997/12/04 17:55:23 hines Exp";
52 if ( !
A || ! diag || ! beta )
54 if ( diag->
dim <
A->m - 1 || beta->
dim <
A->m - 1 )
63 for ( k = 0; k < limit; k++ )
67 hhvec(tmp1,k+1,&beta->
ve[k],tmp1,&
A->me[k+1][k]);
96 if ( diag->
dim < limit || beta->
dim < limit )
107 for ( i = 0; i < H->m; i++ )
110 for ( j = 0; j < H->m; j++ )
117 for ( j = limit-1; j >= 0; j-- )
146 for ( i = 1; i < limit; i++ )
147 for ( j = 0; j < i-1; j++ )
MAT * makeH(MAT *H, MAT *Hout)
MAT * Hfactor(MAT *A, VEC *diag, VEC *beta)
static Object ** v_resize(void *v)
#define m_set_val(A, i, j, val)
MAT * makeHQ(MAT *H, VEC *diag, VEC *beta, MAT *Qout)
static philox4x32_key_t k
VEC * hhtrvec(VEC *hh, double beta, u_int i0, VEC *in, VEC *out)
MAT * hhtrcols(MAT *M, u_int i0, u_int j0, VEC *hh, double beta)
#define v_set_val(x, i, val)
#define set_col(mat, col, vec)
VEC * hhvec(VEC *vec, u_int i0, Real *beta, VEC *out, Real *newval)
static Object ** m_resize(void *v)
#define MEM_STAT_REG(var, type)
VEC * get_col(MAT *, u_int, VEC *)
#define error(err_num, fn_name)
MAT * hhtrrows(MAT *M, u_int i0, u_int j0, VEC *hh, double beta)