Ensign
Low-rank framework for multi-core CPUs and GPUs
Loading...
Searching...
No Matches
Ensign::orthogonalize Struct Reference

Orthogonalizes Q and returns the corresponding upper triangular matrix R. More...

#include <lr.hpp>

Public Member Functions

 orthogonalize (const Ensign::Matrix::blas_ops *_blas)
 
 ~orthogonalize ()
 
void operator() (multi_array< double, 2 > &Q, multi_array< double, 2 > &R, std::function< double(double *, double *)> inner_product)
 
void operator() (multi_array< double, 2 > &Q, multi_array< double, 2 > &R, double w)
 
void operator() (multi_array< double, 2 > &Q, multi_array< double, 2 > &R, double *w)
 
void gram_schmidt (multi_array< double, 2 > &Q, multi_array< double, 2 > &R, std::function< double(double *, double *)> inner_product)
 
void gram_schmidt (multi_array< double, 2 > &Q, multi_array< double, 2 > &R, double w)
 

Detailed Description

Orthogonalizes Q and returns the corresponding upper triangular matrix R.

Note that the inputs are overwritten.

Definition at line 164 of file lr.hpp.

Constructor & Destructor Documentation

◆ orthogonalize()

Ensign::orthogonalize::orthogonalize ( const Ensign::Matrix::blas_ops *  _blas)

◆ ~orthogonalize()

Ensign::orthogonalize::~orthogonalize ( )

Member Function Documentation

◆ gram_schmidt() [1/2]

void Ensign::orthogonalize::gram_schmidt ( multi_array< double, 2 > &  Q,
multi_array< double, 2 > &  R,
double  w 
)

◆ gram_schmidt() [2/2]

void Ensign::orthogonalize::gram_schmidt ( multi_array< double, 2 > &  Q,
multi_array< double, 2 > &  R,
std::function< double(double *, double *)>  inner_product 
)

◆ operator()() [1/3]

void Ensign::orthogonalize::operator() ( multi_array< double, 2 > &  Q,
multi_array< double, 2 > &  R,
double *  w 
)

◆ operator()() [2/3]

void Ensign::orthogonalize::operator() ( multi_array< double, 2 > &  Q,
multi_array< double, 2 > &  R,
double  w 
)

◆ operator()() [3/3]

void Ensign::orthogonalize::operator() ( multi_array< double, 2 > &  Q,
multi_array< double, 2 > &  R,
std::function< double(double *, double *)>  inner_product 
)

The documentation for this struct was generated from the following file: