35 #ifndef CColMatrixHandler_hh
36 #define CColMatrixHandler_hh
49 void IsValid(
void)
const {
56 const std::vector<integer>& i,
57 const std::vector<integer>& p);
68 "Error in CColMatrixHandler::operator(), "
69 "row index out of range");
71 "Error in CColMatrixHandler::operator(), "
72 "col index out of range");
87 while (row_end >= row_begin) {
88 idx = (row_begin + row_end)/2;
92 }
else if (i_row > row) {
105 "Error in CColMatrixHandler::operator(), "
106 "row index out of range");
108 "Error in CColMatrixHandler::operator(), "
109 "col index out of range");
123 while (row_end >= row_begin) {
124 idx = (row_begin + row_end)/2;
128 }
else if (i_row > row) {
void Resize(integer ir, integer ic)
#define ASSERTMSGBREAK(expr, msg)
#define MBDYN_EXCEPT_ARGS
integer iGetNumRows(void) const
CColMatrixHandler(std::vector< doublereal > &x, const std::vector< integer > &i, const std::vector< integer > &p)
integer iGetNumCols(void) const
doublereal & operator()(integer i_row, integer i_col)
MatrixHandler & FakeThirdOrderMulAndSumWithShift(MatrixHandler &out, std::vector< bool > b, doublereal s=1., integer drow=0, integer dcol=0) const
virtual ~CColMatrixHandler()
VectorHandler & GetCol(integer icol, VectorHandler &out) const
CompactSparseMatrixHandler * Copy(void) const
MatrixHandler & MulAndSumWithShift(MatrixHandler &out, doublereal s=1., integer drow=0, integer dcol=0) const