DOKK / manpages / debian 12 / libsc-doc / sc_SCMatrixRectBlock.3.en
sc::SCMatrixRectBlock(3) MPQC sc::SCMatrixRectBlock(3)

sc::SCMatrixRectBlock - The SCMatrixRectBlock describes a rectangular piece of a matrix.

#include <block.h>

Inherits sc::SCMatrixBlock.


SCMatrixRectBlock (int is, int ie, int js, int je)
SCMatrixRectBlock (StateIn &)
void save_data_state (StateOut &)
Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR initializes them. SCMatrixBlock * deepcopy () const
Return of copy of this. void process (SCElementOp *)
void process (SCElementOp2 *, SCMatrixBlock *)
void process (SCElementOp3 *, SCMatrixBlock *, SCMatrixBlock *)
double * dat ()
Return a pointer to the block's data and the number of elements in the block. int ndat () const


int istart
int jstart
int iend
int jend
double * data

The SCMatrixRectBlock describes a rectangular piece of a matrix.

The following bit of code illustrates the data layout: fill(double **matrix, SCMatrixRectBlock &b) { int offset=0; for (int i=b.istart; i<b.iend; i++) { for (int j=b.jstart; j<b.jend; j++,offset++) { matrix[i][j] = b.data[offset]; } } }

Return a pointer to the block's data and the number of elements in the block. Some blocks cannot provide this information and a runtime error will be generated if these members are called. These routines are only used internally in the matrix library.

Reimplemented from sc::SCMatrixBlock.

SCMatrixBlock * sc::SCMatrixRectBlock::deepcopy () const [virtual]

Return of copy of this. A runtime error will be generated for blocks that cannot do a deepcopy. These routines are only used internally in the matrix library.

Reimplemented from sc::SCMatrixBlock.

Reimplemented from sc::SCMatrixBlock.

void sc::SCMatrixRectBlock::process (SCElementOp *) [virtual]

Implements sc::SCMatrixBlock.

void sc::SCMatrixRectBlock::process (SCElementOp2 *, SCMatrixBlock *) [virtual]

Implements sc::SCMatrixBlock.

void sc::SCMatrixRectBlock::process (SCElementOp3 *, SCMatrixBlock *, SCMatrixBlock *) [virtual]

Implements sc::SCMatrixBlock.

Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR initializes them. This must be implemented by the derived class if the class has data.

Reimplemented from sc::SCMatrixBlock.

Generated automatically by Doxygen for MPQC from the source code.

Fri Dec 2 2022 Version 2.3.1