sc::Volume(3)

πŸ“¦
version 2.3.1 Β· 5 versions
, in ubuntu jammy

πŸ’… sc::Volume β€” okay so bestie, let me put you ON πŸ’…

welcome to the sc::Volume(3) page, part of the MPQC manual, and honestly? this one's giving lowkey iconic energy. no cap. it's a whole class in the world of MPQC and once you get the vibe you're gonna slay. ✨


🌸 NAME 🌸

sc::Volume β€” a Volume is a Function of three variables. periodt. that's the whole assignment, and it ate. πŸ’–


πŸ¦‹ SYNOPSIS πŸ¦‹

okay so first things first, you gotta bring in the header:

#include <volume.h>

and here's the family tree moment β€” it inherits from sc::Function, and it's inherited by sc::BatchElectronDensity, sc::ElectronDensity, sc::Orbital, and sc::Shape. it's giving main character with a whole extended family. πŸ‘‘


πŸ’… Public Member Functions πŸ’…

bestie these are the public ones, the ones you can literally just call, no gatekeeping:

  • Volume (const Ref< KeyVal > &) β€” the constructor, iconic, does exactly what it says on the tin.
  • void set_gradient (const SCVector3 &g) β€” sets the gradient, fr fr.
  • void set_gradient (RefSCVector &g) β€” same vibe, different argument type, she contains multitudes.
  • void get_gradient (SCVector3 &g) β€” retrieves the gradient, no cap.
  • void set_x (const SCVector3 &x) β€” set and retrieve the coordinate values. 🫢
  • void set_x (const RefSCVector &x) β€” also set and retrieve the coordinate values.
  • void get_x (SCVector3 &x) β€” retrieves the coordinate values.
  • virtual void boundingbox (double valuemin, double valuemax, SCVector3 &p1, SCVector3 &p2)=0 β€” pure virtual, so like… she's abstract and you can't instantiate her directly, iykyk.
  • virtual void interpolate (const SCVector3 &p1, const SCVector3 &p2, double value, SCVector3 &result) β€” interpolation behavior, as the name suggests. πŸ’«
  • virtual void solve (const SCVector3 &p, const SCVector3 &grad, double value, SCVector3 &result) β€” solves the thing, you guessed it.

πŸŽ€ Protected Member Functions πŸŽ€

these are the more lowkey members, protected so only the inner circle can access them:

  • double & interpolation_accuracy () β€” returns a reference to the interpolation accuracy value. very demure.
  • virtual void compute ()=0 β€” ✨ the star of the show ✨ recompute at least the results that have compute true and are not already computed. she's pure virtual, so the subclasses have to bring their own implementation. periodt.
  • virtual void failure (const char *) β€” handles failure, which we don't talk about at parties. 😭

🌈 Additional Inherited Members 🌈

there are more members inherited from the base classes, but like… that's a whole other manpage. this section is literally just here so you know they exist. don't be nosey. πŸ™ˆ


πŸ“ Detailed Description πŸ“

okay so the whole thing in a nutshell: A Volume is a Function of three variables. that's it. that's the description. she's simple, she's elegant, she's everything. πŸ’–


πŸ’œ Member Function Documentation πŸ’œ

🧚 virtual void sc::Volume::compute () [protected], [pure virtual] 🧚

okay so this one is protected and pure virtual, which means the base class is basically saying "bestie you handle this one, I'm not doing it."

what it does: recompute at least the results that have compute true and are not already computed. and like, this should only be called by Result's members β€” so don't go calling it willy-nilly, there's a whole protocol here. πŸ’…

  • Implements: sc::Compute
  • Implemented in: sc::BatchElectronDensity, sc::Shape, sc::ElectronDensity, and sc::Orbital

so these four subclasses all said "yes I'll do the compute, I'll be the main character." and they ate. πŸ”₯πŸ‘‘


🫢 Author 🫢

Generated automatically by Doxygen for MPQC from the source code. so like… nobody hand-wrote this, the robots did it. and honestly? they understood the assignment. πŸ€–βœ¨


⭐ cute little sign-off ⭐

and that's the whole page bestie!! this was MPQC manual page for sc::Volume(3), version 2.3.1, dated Sun Oct 4 2020. so like… it's vintage, it's classic, it's giving old money aesthetic. πŸŽ€

you understood it, you slayed it, and now you can go forth and compute those volumes. mwah. πŸ’‹ πŸŒˆπŸ¦‹βœ¨

πŸ“¦ where this page comes from