R3BROOT
R3B analysis software
Loading...
Searching...
No Matches
LSQR.cxx File Reference
#include "LSQR.h"
#include "stdlib.h"
#include <iostream>
Include dependency graph for LSQR.cxx:

Go to the source code of this file.

Functions

void lsqr_error (const char *msg, int code)
 
lvecalloc_lvec (long lvec_size)
 
void free_lvec (lvec *lng_vec)
 
dvecalloc_dvec (long dvec_size)
 
void free_dvec (dvec *dbl_vec)
 
void alloc_lsqr_mem (lsqr_input **in_struct, lsqr_output **out_struct, lsqr_work **wrk_struct, long max_num_rows, long max_num_cols)
 
void free_lsqr_mem (lsqr_input *in_struct, lsqr_output *out_struct, lsqr_work *wrk_struct)
 
lsqr_inputalloc_lsqr_in (long max_num_rows, long max_num_cols)
 
void free_lsqr_in (lsqr_input *in_struct)
 
lsqr_outputalloc_lsqr_out (long __attribute__((unused)) max_num_rows, long max_num_cols)
 
void free_lsqr_out (lsqr_output *out_struct)
 
lsqr_workalloc_lsqr_wrk (long __attribute__((unused)) max_num_rows, long max_num_cols)
 
void free_lsqr_wrk (lsqr_work *wrk_struct)
 
void lsqr (lsqr_input *input, lsqr_output *output, lsqr_work *work, std::function< void(long, dvec *, dvec *, void *)> mat_vec_prod, void *prod)
 
double dvec_norm2 (dvec *vec)
 
void dvec_scale (double scal, dvec *vec)
 
void dvec_copy (dvec *orig, dvec *copy)
 

Function Documentation

◆ alloc_dvec()

dvec * alloc_dvec ( long dvec_size)

Definition at line 131 of file LSQR.cxx.

◆ alloc_lsqr_in()

lsqr_input * alloc_lsqr_in ( long max_num_rows,
long max_num_cols )

Definition at line 225 of file LSQR.cxx.

◆ alloc_lsqr_mem()

void alloc_lsqr_mem ( lsqr_input ** in_struct,
lsqr_output ** out_struct,
lsqr_work ** wrk_struct,
long max_num_rows,
long max_num_cols )

Definition at line 173 of file LSQR.cxx.

◆ alloc_lsqr_out()

lsqr_output * alloc_lsqr_out ( long __attribute__((unused)) max_num_rows,
long max_num_cols )

Definition at line 272 of file LSQR.cxx.

◆ alloc_lsqr_wrk()

lsqr_work * alloc_lsqr_wrk ( long __attribute__((unused)) max_num_rows,
long max_num_cols )

Definition at line 312 of file LSQR.cxx.

◆ alloc_lvec()

lvec * alloc_lvec ( long lvec_size)

Definition at line 90 of file LSQR.cxx.

◆ dvec_copy()

void dvec_copy ( dvec * orig,
dvec * copy )

Definition at line 862 of file LSQR.cxx.

◆ dvec_norm2()

double dvec_norm2 ( dvec * vec)

Definition at line 821 of file LSQR.cxx.

◆ dvec_scale()

void dvec_scale ( double scal,
dvec * vec )

Definition at line 843 of file LSQR.cxx.

◆ free_dvec()

void free_dvec ( dvec * dbl_vec)

Definition at line 159 of file LSQR.cxx.

◆ free_lsqr_in()

void free_lsqr_in ( lsqr_input * in_struct)

Definition at line 257 of file LSQR.cxx.

◆ free_lsqr_mem()

void free_lsqr_mem ( lsqr_input * in_struct,
lsqr_output * out_struct,
lsqr_work * wrk_struct )

Definition at line 210 of file LSQR.cxx.

◆ free_lsqr_out()

void free_lsqr_out ( lsqr_output * out_struct)

Definition at line 298 of file LSQR.cxx.

◆ free_lsqr_wrk()

void free_lsqr_wrk ( lsqr_work * wrk_struct)

Definition at line 344 of file LSQR.cxx.

◆ free_lvec()

void free_lvec ( lvec * lng_vec)

Definition at line 117 of file LSQR.cxx.

◆ lsqr()

void lsqr ( lsqr_input * input,
lsqr_output * output,
lsqr_work * work,
std::function< void(long, dvec *, dvec *, void *)> mat_vec_prod,
void * prod )

Definition at line 418 of file LSQR.cxx.

◆ lsqr_error()

void lsqr_error ( const char * msg,
int code )

Definition at line 77 of file LSQR.cxx.