sc::SCBlockInfo(3)
π¦ sc::SCBlockInfo(3) β MPQC manual, bestie π¦
Okay so this is the MPQC page for sc::SCBlockInfo(3), and itβs lowkey giving dimension-blocking main character energy. Letβs get into it. β¨
πΈ NAME πΈ
sc::SCBlockInfo β SCBlockInfo contains blocking information for the SCDimension class. Thatβs the whole name vibe: itβs the blocking-info bestie for dimensions. π«Ά
β¨ SYNOPSIS β¨
#include <dim.h>
Inherits sc::SavableState.
π Public Member Functions
SCBlockInfo (int n, int nblocks=0, const int *blocksizes=0)β Create aSCBlockInfoobject. iconic constructor behavior. πSCBlockInfo (StateIn &)β the constructor that takesStateIn &; no extra blurb on this page. πSCBlockInfo (const Ref< KeyVal > &keyval)β TheKeyValconstructor. Full details are in the constructor section below. β¨void save_data_state (StateOut &)β Save the base classes (withsave_data_state) and the members in the same order that theStateInCTOR initializes them. More tea below. πint equiv (SCBlockInfo *bi)β Return nonzero if this is equivalent tobi.int nelem () constβ Return the total number of elements, periodt. π₯int nblock () constβ Return the number of blocks.int start (int i) constβ Return the starting index for blocki.int size (int i) constβ Return the size of blocki.int fence (int i) constβ Return the last index + 1 for blocki.void elem_to_block (int i, int &block, int &offset)β no extra description here, just the signature doing its thing. π«ΆRefSCDimension subdim (int i)β Retrieve subdimension information.void set_subdim (int i, const RefSCDimension &dim)β Set subdimension information.void print (std::ostream &o=ExEnv::out0()) constβ Print the object to the streamo.
π§ Protected Member Functions
void init_start ()β no extra description here, just the protected helper signature. β¨
π Protected Attributes
int n_int nblocks_int * start_int * size_RefSCDimension * subdims_
π Additional Inherited Members
This heading is here, but no extra inherited members are listed under it. Soβ¦ empty, but iconic. Keeping the spot anyway. π
π Detailed Description π
SCBlockInfo contains blocking information for the SCDimension class.
Okay so there are literally two ways it can contain blocking information. In the first way, a vector of block offsets and block sizes is stored. The second method is only used by those specializations created by the BlockedSCMatrixKit class. In this method the blocking information is stored as subdimensions of type SCDimension.
Important vibe check: if both methods are used, they must be used consistently. That is, the number, sizes, and order of the blocks must match the number, sizes, and order of the SCDimension objects. No cap. π¨
π Constructor & Destructor Documentation π
sc::SCBlockInfo::SCBlockInfo (const Ref< KeyVal > & keyval)
The KeyVal constructor. Hereβs what it reads:
sizesβ This is a vector giving the size of each subblock. There is no default. πsubdimsβ If this vector is given, there must be an entry for each entry in thesizesvector. Each entry is anSCDimensionobject. The default is to not store subdimension information. π¦
β¨ Member Function Documentation β¨
void sc::SCBlockInfo::save_data_state (StateOut &) [virtual]
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::SavableState.
void sc::SCBlockInfo::set_subdim (int i, const RefSCDimension & dim)
Set subdimension information. The dimension dim and index i must be consistent with the nblocks and blocksizes information given to the constructor.
π Author π
Generated automatically by Doxygen for MPQC from the source code.
Catch you later, bestie β this is MPQC Version 2.3.1, dated Sun Oct 4 2020. πβ¨π¦
π¦ where this page comes from
- ubuntu jammy: libsc-doc 2.3.1-21
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms