FEBio  1.5.0
FECore/SkylineSolver.h
00001 #pragma once
00002 
00003 #include "LinearSolver.h"
00004 #include "SkylineMatrix.h"
00005 
00006 namespace FECore {
00007 
00008 //-----------------------------------------------------------------------------
00010 
00011 class SkylineSolver : public LinearSolver
00012 {
00013 public:
00014         bool PreProcess();
00015         bool Factor();
00016         bool BackSolve(vector<double>& x, vector<double>& b);
00017         void Destroy();
00018 
00019         SparseMatrix* CreateSparseMatrix(Matrix_Type ntype) { return (m_pA = (ntype == SPARSE_SYMMETRIC? new SkylineMatrix() : 0)); }
00020 };
00021 
00022 } // namespace FECore