A c++ sparse block matrix library aimed at Second Order cone problems
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Pages
bogus::Scaling< MatrixT > Struct Template Reference
Inheritance diagram for bogus::Scaling< MatrixT >:
bogus::BlockObjectBase< Scaling< MatrixT > >

Public Types

enum  { transposeOperand = Operand::do_transpose }
typedef BlockOperand< MatrixT > Operand
typedef Operand::PlainObjectType PlainOperandMatrixType
typedef BlockObjectBase< ScalingBase
typedef Base::Scalar Scalar
typedef Base::Index Index
typedef BlockMatrixTraits
< Scaling< MatrixT > > 
typedef Traits::TransposeObjectType TransposeObjectType
typedef Traits::PlainObjectType PlainObjectType

Public Member Functions

 Scaling (const MatrixT &object, const typename MatrixT::Scalar scaling)
Base::ConstTransposeReturnType transpose () const
template<bool DoTranspose, typename RhsT , typename ResT >
void multiply (const RhsT &rhs, ResT &res, Scalar alpha=1, Scalar beta=0) const
Base::Index rows () const
Base::Index cols () const
Index rowsOfBlocks () const
Index colsOfBlocks () const
Index blockRows (Index row) const
Index blockCols (Index col) const
const Index * rowOffsets () const
const Index * colOffsets () const
const Scaling< MatrixT > & derived () const
 Returns a const reference to the implementation.
Scaling< MatrixT > & derived ()
 Returns a reference to the implementation.
Index rowOffset (Index row) const
 Returns an array containing the first index of a given row.
Index colOffset (Index col) const
 Returns an array containing the first index of a given columns.
void multiply (const RhsT &rhs, ResT &res, Scalar alpha=1, Scalar beta=0) const
 Performs a matrix vector multiplication. More...

Public Attributes

Operand operand

Member Function Documentation

void bogus::BlockObjectBase< Scaling< MatrixT > >::multiply ( const RhsT &  rhs,
ResT &  res,
Scalar  alpha = 1,
Scalar  beta = 0 
) const

Performs a matrix vector multiplication.

Template Parameters
DoTransposeIf true, performs res = alpha * M' * rhs + beta * res, otherwise res = alpha * M * rhs + beta * res

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