28#ifndef _chemistry_qc_wfn_orbital_h
29#define _chemistry_qc_wfn_orbital_h
31#include <math/isosurf/volume.h>
32#include <chemistry/qc/wfn/obwfn.h>
33#include <chemistry/qc/wfn/orbitalspace.h>
34#include <math/mmisc/grid.h>
48 virtual void boundingbox(
double valuemin,
95 double resolution = 0.2,
105 std::vector<int> map;
106 int operator()(
int o)
const {
return map[o]; }
107 std::size_t ndim()
const {
return map.size(); }
118 std::size_t
ndim()
const {
return omap_.ndim(); }
151 std::string gridformat, std::string gridfile);
virtual void compute()
Recompute at least the results that have compute true and are not already computed.
A template class that maintains references counts.
Definition ref.h:361
a 3-element version of SCVector
Definition vector3.h:44
A Volume is a Function of three variables.
Definition volume.h:38
The abstract WriteGrid class provides an interface for writing the value of a scalar function evaluat...
Definition grid.h:85
The WriteOrbital class writes an orbital at user defined grid points to the standard output or to a s...
Definition orbital.h:55
static Ref< KeyVal > process_keyval_for_base_class(const Ref< KeyVal > kv)
if needed, creates default grid for the base class using the molecule of obwfn
void initialize()
Prepares some pre-caculated values before the repetitive grid calculations are perfomed.
void label(char *buffer)
A label that identifies the scalar function evaluated at the grid points, is written to the buffer ar...
double calculate_value(SCVector3 point)
Returns the value of the scalar function at the given coordinate.
static Ref< Grid > make_default_grid(const Ref< Molecule > &mol, double resolution=0.2, double margin=1.0)
constructs a default grid for the given molecule, using VDWShape for mol.
Ref< Molecule > get_molecule()
Returns the molecule around which the grid values are calculated.
WriteOrbital(const Ref< KeyVal > &)
The KeyVal constructor uses all keywords of WriteGrid, plus the following additional keywords:
The WriteOrbitals class writes orbitals at user defined grid points to the standard output or to a se...
Definition orbital.h:102
WriteOrbitals(const Ref< OrbitalSpace > &orbs, const std::vector< int > &labels, const Ref< sc::Grid > &grig, std::string gridformat, std::string gridfile)
Evaluates orbitals orbs on grid and writes them to gridfile in format gridformat.
Ref< Molecule > get_molecule()
Returns the molecule around which the grid values are calculated.
WriteOrbitals(const Ref< KeyVal > &)
The KeyVal constructor accepts keywords of WriteVectorGrid and the following additional keywords.
void label(char *buffer)
A label that identifies the scalar function evaluated at the grid points, is written to the buffer ar...
const DimensionMap & dimension_map() const
dimension map
Definition orbital.h:119
void initialize()
Prepares some pre-calculated values before the repetitive grid calculations are perfomed.
std::size_t ndim() const
number of dimensions of the vector
Definition orbital.h:118
void calculate_values(const std::vector< SCVector3 > &Points, std::vector< double > &Values)
Returns the value of the vector function at the given coordinate.
WriteVectorGrid provides an interface for writing the value of a vector function evaluated at a given...
Definition grid.h:145
std::vector< int > map(const GaussianBasisSet &B, const GaussianBasisSet &A)
same as operator<<, except A does not have to be contained in B, map[a] = -1 if function a is not in ...
Contains all MPQC code up to version 3.
Definition mpqcin.h:14