sc::PointInputData(3)

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

πŸŽ€ sc::PointInputData β€” the little data bucket every point in space gets πŸ’…

ok so bestie, welcome to sc::PointInputData, which lives in the MPQC manual, section 3. The whole vibe of this one is: it's a struct that contains data needed at each point by a DenFunctional. That's it, that's the job. It's giving "humble little container with main character energy." ✨

To use it you #include <functional.h> β€” yes, that's the header, write it down 🫢


🌸 SYNOPSIS 🌸

πŸ¦‹ Classes

  • struct SpinData β€” a nested struct hanging out inside PointInputData. She's part of the family.

⭐ Public Types

Two anonymous enums, both just re-exporting constants from BatchElectronDensity so you don't have to type the long names. Icons only, no cap πŸ‘‘

enum { X = BatchElectronDensity::X, Y = BatchElectronDensity::Y,
       Z = BatchElectronDensity::Z }
enum { XX = BatchElectronDensity::XX, YX = BatchElectronDensity::YX,
       YY = BatchElectronDensity::YY, ZX = BatchElectronDensity::ZX,
       ZY = BatchElectronDensity::ZY, ZZ = BatchElectronDensity::ZZ }

So X, Y, Z are literally just BatchElectronDensity::X, BatchElectronDensity::Y, BatchElectronDensity::Z β€” and the six second-derivative ones XX, YX, YY, ZX, ZY, ZZ map straight onto their BatchElectronDensity counterparts. Same values, shorter spelling, we love convenience πŸ’–

πŸ’œ Public Member Functions

  • void compute_derived (int spin_polarized, int need_gradient, int need_hessian) β€” the method that fills in the derived quantities. You tell it whether you're spin_polarized, whether you need_gradient, and whether you need_hessian. Three int flags, three little yes/nos 🌈
  • PointInputData (const SCVector3 &r_) β€” the constructor, takes a reference to an SCVector3 named r_. That's the point in space, bestie πŸ“

πŸ“ Public Attributes

  • SpinData a β€” spin data numero uno.
  • SpinData b β€” spin data numero dos. Two spins, two structs, balanced as all things should be βš–οΈ
  • double gamma_ab β€” a double called gamma_ab. It's there. It's a double. Slay.
  • const SCVector3 & r β€” a reference to a const SCVector3 called r. Note the & and the const, they are not decorative, they're the whole point πŸŽ€

✨ Detailed Description ✨

Contains data needed at each point by a DenFunctional.

That's the entire description and honestly? Iconic. Short, sweet, does exactly what it says on the tin. Every point gets one of these little bundles of density goodness πŸ’«


πŸ‘‘ Author πŸ‘‘

Generated automatically by Doxygen for MPQC from the source code. So no human to thank here β€” the robots did this one, and honestly they ate πŸ€–πŸ’…


ngl bestie, remember: r is a reference and it's const β€” don't go trying to reassign it, that's not the vibe and the compiler will absolutely call you out 😭

πŸ’– and that's the whole page! brought to you by MPQC version 2.3.1, dated Sun Oct 4 2020 β€” mwah, go compute some functionals bestie πŸ§šβ€β™€οΈ

πŸ“¦ where this page comes from