sc::SCElementRandomize(3)
π sc::SCElementRandomize β the MPQC manual page, but make it make sense β¨
okay so bestie, welcome to sc::SCElementRandomize π this is a page from the MPQC manual (that's version 2.3.1, for the record β more on that at the end π). It's a C++ class page, so buckle up, we're doing object-oriented realness today π¦
πΈ NAME πΈ
sc::SCElementRandomize β no cap, that's the whole name, that's the vibe β¨
π SYNOPSIS π
She inherits from sc::SCElementOp π
so everything SCElementOp has going on, she's got too. Iconic inheritance behaviour, we love to see it.
Inherits sc::SCElementOp.
π Public Member Functions π
SCElementRandomize(StateIn &)β the constructor that takes aStateIn &. That's it, that's the whole signature, and yes you need to give it thatStateInreference, no shortcuts πint has_side_effects()β by default this returns nonzero. (More on this in the member function docs down below, keep reading bestie π)void save_data_state(StateOut &)β save the base classes (withsave_data_state) and the members in the same order that theStateInCTOR initializes them π«Άvoid process(SCMatrixBlockIter &)β this is the fallback routine to process blocks, and it gets called byprocess_specmembers that are not overridden π₯
π Additional Inherited Members π
yes, there are more goodies she got from her parent class, they're inherited, they're additional, they're lowkey just there for you π (the original page points you at these, so consider this your shoutout β¨)
π Member Function Documentation π
β int sc::SCElementRandomize::has_side_effects() [virtual] β
okay so this one matters β by default this returns nonzero π If the ElementOp specialization is gonna change any elements of the matrix, then this must be overridden to return nonzero. So like. if you're mutating matrix elements, do not leave this on the default, override it, periodt π
π«Ά Reimplemented from sc::SCElementOp.
π¦ void sc::SCElementRandomize::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 π And this is a whole thing: this must be implemented by the derived class if the class has data. no data? you're off the hook. data? bestie you're writing this function, sorry not sorry π
π§ Reimplemented from sc::SavableState.
π Author π
Straight up: generated automatically by Doxygen for MPQC from the source code π€β¨ nobody hand-wrote this bad boy, the robot did it and honestly? slay.
sign-off time π so this page is from Version 2.3.1, dated Sun Oct 4 2020, and it lives under the name sc::SCElementRandomize(3) in the MPQC manual. that's the whole footer, delivered with love π bye bestie, go randomize some elements responsibly πΈπ¦π
π¦ 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