// LAPACK++ (V. 1.1) // (C) 1992-1996 All Rights Reserved. #ifndef _LA_BAND_FACT_DOUBLE_H #define _LA_BAND_FACT_DOUBLE_H /** @file Deprecated. Class for the LU factorization of a matrix. Note: This class is probably broken by design, because the matrices L and U do not exist separately in the internal lapack but they are part of the modified input matrix A. Do not use this unless you are really sure you understand what this class does. */ #include "lafnames.h" #include LA_VECTOR_LONG_INT_H #include LA_BAND_MAT_DOUBLE_H #include "lapack.h" /** Class for the LU factorization of a matrix. Note: This class is probably broken by design, because the matrices L and U do not exist separately in the internal lapack but they are part of the modified input matrix A. Do not use this unless you are really sure you understand what this class does. */ class LaBandFactDouble { LaBandMatDouble B_; LaVectorLongInt pivot_; int info_; public: // constructor inline LaBandFactDouble(); inline LaBandFactDouble(int,int,int); inline LaBandFactDouble(LaBandMatDouble &); inline LaBandFactDouble(LaBandFactDouble &); inline ~LaBandFactDouble(); // extraction functions for components inline LaBandMatDouble& B(); inline LaVectorLongInt& pivot(); inline int& info(); // operators inline LaBandFactDouble& ref(LaBandFactDouble &); inline LaBandFactDouble& ref(LaBandMatDouble &); }; // constructor/destructor functions inline LaBandFactDouble::LaBandFactDouble():B_(),pivot_() { #ifdef BandFactDouble_DEBUG std::cout << " called LaBandFactDouble::LaBandFactDouble() " << std::endl; #endif info_ = 0; } inline LaBandFactDouble::LaBandFactDouble(int N, int kl, int ku) : B_(N,kl,ku),pivot_(kl+ku+1) { #ifdef BandFactDouble_DEBUG std::cout << " called LaBandFactDouble::LaBandFactDouble(int,int,int) " << std::endl; #endif info_ = 0; } inline LaBandFactDouble::LaBandFactDouble(LaBandMatDouble &G):pivot_() { #ifdef BandFactDouble_DEBUG std::cout << " called LaBandFactDouble::LaBandFactDouble(LaBandMatDouble &)" <