Psi4
gridblock.h
Go to the documentation of this file.
1 /*
2  * @BEGIN LICENSE
3  *
4  * Psi4: an open-source quantum chemistry software package
5  *
6  * Copyright (c) 2007-2017 The Psi4 Developers.
7  *
8  * The copyrights for code used from other parties are included in
9  * the corresponding files.
10  *
11  * This file is part of Psi4.
12  *
13  * Psi4 is free software; you can redistribute it and/or modify
14  * it under the terms of the GNU Lesser General Public License as published by
15  * the Free Software Foundation, version 3.
16  *
17  * Psi4 is distributed in the hope that it will be useful,
18  * but WITHOUT ANY WARRANTY; without even the implied warranty of
19  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20  * GNU Lesser General Public License for more details.
21  *
22  * You should have received a copy of the GNU Lesser General Public License along
23  * with Psi4; if not, write to the Free Software Foundation, Inc.,
24  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
25  *
26  * @END LICENSE
27  */
28 
29 #ifndef libmints_gridblock_H
30 #define libmints_gridblock_H
31 /*
32 * gridblock.h
33 * Definition of class GridBlock for use with numerical integrators
34 * (as in KS-DFT) and the various point property calculators
35 *
36 * Created by Robert Parrish on 04/15/2010
37 */
38  #include "psi4/pragma.h"
39  PRAGMA_WARNING_PUSH
40  PRAGMA_WARNING_IGNORE_DEPRECATED_DECLARATIONS
41  #include <memory>
43 
44 namespace psi {
46 class GridBlock {
48 public:
50  double* w_;
52  double* x_;
54  double* y_;
56  double* z_;
61  GridBlock() {}
63 
64  int getMaxPoints() const {return max_points_; }
65  int getTruePoints() const {return true_points_; }
66  double* getWeights() const {return w_; }
67  double* getX() const {return x_; }
68  double* getY() const {return y_; }
69  double* getZ() const {return z_; }
70 
71  void setGrid(double* x, double* y, double* z, double* w) {
72  x_ = x;
73  y_ = y;
74  z_ = z;
75  w_ = w;
76  }
77 
78  void setTruePoints(int n) { true_points_ = n; }
79  void setMaxPoints(int n) { max_points_ = n; }
80 };
81 typedef std::shared_ptr<GridBlock> SharedGridBlock;
82 }
83 #endif
int true_points_
Actual number of valid points.
Definition: gridblock.h:60
int getMaxPoints() const
Definition: gridblock.h:64
void setGrid(double *x, double *y, double *z, double *w)
Definition: gridblock.h:71
double * z_
z vector
Definition: gridblock.h:56
double * x_
x vector
Definition: gridblock.h:52
void setTruePoints(int n)
Definition: gridblock.h:78
int max_points_
Maximum number of points in block at the moment.
Definition: gridblock.h:58
double * w_
Weight vector.
Definition: gridblock.h:50
~GridBlock()
Definition: gridblock.h:62
PRAGMA_WARNING_PUSH PRAGMA_WARNING_IGNORE_DEPRECATED_DECLARATIONS PRAGMA_WARNING_POP
Definition: integraliter.cc:43
double * getZ() const
Definition: gridblock.h:69
double * getX() const
Definition: gridblock.h:67
double * getY() const
Definition: gridblock.h:68
int getTruePoints() const
Definition: gridblock.h:65
double * getWeights() const
Definition: gridblock.h:66
std::shared_ptr< GridBlock > SharedGridBlock
Definition: gridblock.h:81
void setMaxPoints(int n)
Definition: gridblock.h:79
GridBlock()
Definition: gridblock.h:61
double * y_
y vector
Definition: gridblock.h:54