MPQC  3.0.0-alpha
sc::WriteGrid Class Referenceabstract

The abstract WriteGrid class provides an interface for writing the value of a scalar function evaluated at a given set of grid points to a file. More...

#include <math/mmisc/grid.h>

Inheritance diagram for sc::WriteGrid:
sc::Runnable sc::DescribedClass sc::RefCount sc::WriteElectronDensity sc::WriteElectrostaticPotential sc::WriteOrbital

Public Member Functions

 WriteGrid (const Ref< KeyVal > &)
 The KeyVal constructor. More...
 
void run ()
 Writes the grid data.
 
- Public Member Functions inherited from sc::DescribedClass
 DescribedClass (const DescribedClass &)
 
DescribedClassoperator= (const DescribedClass &)
 
ClassDescclass_desc () const MPQC__NOEXCEPT
 This returns the unique pointer to the ClassDesc corresponding to the given type_info object. More...
 
const char * class_name () const
 Return the name of the object's exact type.
 
int class_version () const
 Return the version of the class.
 
virtual void print (std::ostream &=ExEnv::out0()) const
 Print the object.
 
Ref< DescribedClassref ()
 Return this object wrapped up in a Ref smart pointer. More...
 
- Public Member Functions inherited from sc::RefCount
size_t identifier () const
 Return the unique identifier for this object that can be compared for different objects of different types. More...
 
int lock_ptr () const
 Lock this object.
 
int unlock_ptr () const
 Unlock this object.
 
void use_locks (bool inVal)
 start and stop using locks on this object
 
refcount_t nreference () const
 Return the reference count.
 
refcount_t reference ()
 Increment the reference count and return the new count.
 
refcount_t dereference ()
 Decrement the reference count and return the new count.
 
int managed () const
 
void unmanage ()
 Turn off the reference counting mechanism for this object. More...
 

Protected Member Functions

virtual void initialize ()=0
 Prepares some pre-caculated values before the repetitive grid calculations are perfomed.
 
virtual void label (char *buffer)=0
 A label that identifies the scalar function evaluated at the grid points, is written to the buffer argument. More...
 
virtual Ref< Moleculeget_molecule ()=0
 Returns the molecule around which the grid values are calculated.
 
virtual double calculate_value (SCVector3 point)=0
 Returns the value of the scalar function at the given coordinate.
 
- Protected Member Functions inherited from sc::RefCount
 RefCount (const RefCount &)
 
RefCountoperator= (const RefCount &)
 

Protected Attributes

std::string filename_
 
Ref< Gridgrid_
 
std::string format_
 
void(WriteGrid::* write_format_ )(std::ostream &out)
 

Detailed Description

The abstract WriteGrid class provides an interface for writing the value of a scalar function evaluated at a given set of grid points to a file.

Constructor & Destructor Documentation

◆ WriteGrid()

sc::WriteGrid::WriteGrid ( const Ref< KeyVal > &  )

The KeyVal constructor.

grid

A Grid that specifies the grid points at which the scalar function should be calculated.

filename

Specifies the filename of the file to write the output to. If "-" is given, the output will be written to the standard output. The default is "-".

format
The format in which the grid data is to be written. Currently four formats have been implemented:
  • mpqc: A very comprehensive format.
  • gaussian_cube: The format used by Gaussian.
  • vtk2: This format is usefull for vizualizing the grid data with the vtk library. (http://www.vtk.org/)
  • mpqc_raw: A very simple format that contains both the coordinates of the grid points and the value of the scalar function at each point.

Member Function Documentation

◆ label()

virtual void sc::WriteGrid::label ( char *  buffer)
protectedpure virtual

A label that identifies the scalar function evaluated at the grid points, is written to the buffer argument.

The classname, concatenated with some important properties should be sufficient. No whitespace allowed, length of the string is limited to 256 characters.

Implemented in sc::WriteElectronDensity, sc::WriteOrbital, and sc::WriteElectrostaticPotential.


The documentation for this class was generated from the following file:

Generated at Sun Jan 26 2020 23:24:14 for MPQC 3.0.0-alpha using the documentation package Doxygen 1.8.16.