sc::SCElementSumAbs(3)
π NAME π
sc::SCElementSumAbs β hey bestie, you're on the MPQC manual page for the sc::SCElementSumAbs class, and it's lowkey iconic β¨. This is the whole vibe: a sum-abs element operation thing with every signature and virtual exactly where it belongs. No cap, we're keeping all the details π.
β¨ SYNOPSIS β¨
Inherits sc::SCElementOp.
π«Ά Public Member Functions π«Ά
SCElementSumAbs (StateIn &)β the signature from the page, bestie; no extra blurb here.void save_data_state (StateOut &)β saves the base classes viasave_data_stateplus the members, in the exact same order that theStateInCTOR initializes them. Very "keep it in order or it's not the same" energy π.void process (SCMatrixBlockIter &)β this is the fallback routine to process blocks, and it gets called byprocess_specmembers that are not overridden. Fallback queen behavior π .int has_collect ()β if duplicates of theSCElementOpexist (that is, there is more than one node), then ifhas_collectreturns nonzero,collectis called with aMessageGrpreference after all of the blocks have been processed. Big "check first, then collect" energy β¨.void defer_collect (int)β no extra blurb on the page for this one, just the signature, bestie π«Ά.void collect (const Ref< MessageGrp > &)β signature only on the page, no extra description here πΈ.void collect (const Ref< SCElementOp > &)β multithreaded use of cloneableSCElementOpobjects requires that data from cloned objects be collected. Clone-collect realness π.double result ()β signature only on the page, no extra description here β.void init ()β signature only on the page, no extra description here π¦.
π¦ Additional Inherited Members π¦
The original page has this heading right here, and it doesn't add extra bullet points beyond what's already listed above. That's the whole section, bestie π.
π Member Function Documentation π
π§ void sc::SCElementSumAbs::collect (const Ref< SCElementOp > &) [virtual]
Multithreaded use of cloneable SCElementOp objects requires that data from cloned objects be collected.
π¨ Heads up: the default implementation will throw an exception.
Reimplemented from sc::SCElementOp.
π₯ int sc::SCElementSumAbs::has_collect () [virtual]
If duplicates of the SCElementOp exist (that is, there is more than one node), then if has_collect returns nonzero then collect is called with a MessageGrp reference after all of the blocks have been processed.
The default return value of has_collect is 0 and collect's default action is do nothing. If defer_collect member is called with nonzero, collect will do nothing (this is only used by the blocked matrices).
Reimplemented from sc::SCElementOp.
π void sc::SCElementSumAbs::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.
π Important: this must be implemented by the derived class if the class has data.
Reimplemented from sc::SavableState.
π Author π
Generated automatically by Doxygen for MPQC from the source code. So nobody hand-wrote this bit, bestie β it's giving documentation machine energy π€β¨.
π Version 2.3.1, dated Sun Oct 4 2020, page sc::SCElementSumAbs(3) β that's the whole MPQC source-code-generated situation, bestie. Slay and bye! ππ
π¦ 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