00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #if !defined (octave_sparse_CHOL_h)
00025 #define octave_sparse_CHOL_h 1
00026
00027 #include "sparse-base-chol.h"
00028 #include "dSparse.h"
00029
00030 class
00031 OCTAVE_API
00032 SparseCHOL : public sparse_base_chol <SparseMatrix, double, SparseMatrix>
00033 {
00034 public:
00035
00036 SparseCHOL (void) : sparse_base_chol<SparseMatrix, double, SparseMatrix> () { }
00037
00038 SparseCHOL (const SparseMatrix& a, bool natural = true) :
00039 sparse_base_chol<SparseMatrix, double, SparseMatrix> (a, natural) { }
00040
00041 SparseCHOL (const SparseMatrix& a, octave_idx_type& info,
00042 bool natural = true) :
00043 sparse_base_chol<SparseMatrix, double, SparseMatrix> (a, info, natural) { }
00044
00045 SparseCHOL (const SparseCHOL& a) :
00046 sparse_base_chol<SparseMatrix, double, SparseMatrix> (a) { }
00047
00048 ~SparseCHOL (void) { }
00049
00050 SparseCHOL& operator = (const SparseCHOL& a)
00051 {
00052 if (this != &a)
00053 sparse_base_chol <SparseMatrix, double, SparseMatrix> :: operator = (a);
00054
00055 return *this;
00056 }
00057
00058 SparseMatrix chol_matrix (void) const { return R(); }
00059
00060 SparseMatrix L (void) const
00061 { return sparse_base_chol<SparseMatrix, double, SparseMatrix>:: L (); }
00062
00063 SparseMatrix R (void) const
00064 { return sparse_base_chol<SparseMatrix, double, SparseMatrix>:: R (); }
00065
00066 octave_idx_type P (void) const
00067 { return sparse_base_chol<SparseMatrix, double, SparseMatrix>:: P (); }
00068
00069 ColumnVector perm (void) const
00070 { return sparse_base_chol<SparseMatrix, double, SparseMatrix>:: perm (); }
00071
00072 SparseMatrix Q (void) const
00073 { return sparse_base_chol<SparseMatrix, double, SparseMatrix>:: Q (); }
00074
00075 double rcond (void) const
00076 { return sparse_base_chol<SparseMatrix, double, SparseMatrix>:: rcond (); }
00077
00078
00079 SparseMatrix inverse (void) const
00080 { return sparse_base_chol<SparseMatrix, double, SparseMatrix>::
00081 inverse (); }
00082 };
00083
00084 SparseMatrix OCTAVE_API chol2inv (const SparseMatrix& r);
00085
00086 #endif
00087
00088
00089
00090
00091
00092