MADNESS  version 0.9
molsys.h
Go to the documentation of this file.
1 /*
2  This file is part of MADNESS.
3 
4  Copyright (C) 2007,2010 Oak Ridge National Laboratory
5 
6  This program is free software; you can redistribute it and/or modify
7  it under the terms of the GNU General Public License as published by
8  the Free Software Foundation; either version 2 of the License, or
9  (at your option) any later version.
10 
11  This program is distributed in the hope that it will be useful,
12  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  GNU General Public License for more details.
15 
16  You should have received a copy of the GNU General Public License
17  along with this program; if not, write to the Free Software
18  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 
20  For more information please contact:
21 
22  Robert J. Harrison
23  Oak Ridge National Laboratory
24  One Bethel Valley Road
25  P.O. Box 2008, MS-6367
26 
27 email: harrisonrj@ornl.gov
28 tel: 865-241-3937
29 fax: 865-572-0680
30 
31 
32 $Id$
33 */
34 
38 
39 #ifndef MADNESS_MOLSYS_H
40 #define MADNESS_MOLSYS_H
41 
42 #include <madness/mra/mra.h>
43 #include <moldft/molecule.h>
44 #include <moldft/molecularbasis.h>
45 
47  // typedefs
49  typedef std::vector<functionT> vecfuncT;
50  typedef madness::Tensor<double> tensorT;
51 
52  // fields
53  bool spin_restricted; // true if restricted, and information of beta orbitals are not keeped
54  vecfuncT amo, bmo; // Molecular orbitals (alpha/beta)
55  std::vector<int> aset, bset; // degenerate (or same principal quantum number?) set identifier (alpha/beta)
56  tensorT aocc, bocc; // occupation number of electron of orbitals (alpha/beta)
57  tensorT aeps, beps; // eigenvalues (alpha/beta)
58  int nio; // Number of Archive I/O
59 
60 
61  // member functions
62 
63  // constructor
65 
66  // save/load with restartdata
67  void save (World & world, const char * filename);
68  void load (World & world, const char * filename, unsigned int naplha, unsigned int nvalpha, unsigned int nbeta, unsigned int nvbeta, unsigned int n_core);
69 };
70 
71 #endif
72 
Main include file for MADNESS and defines Function interface.
tensorT aocc
Definition: molsys.h:56
madness::Tensor< double > tensorT
Definition: molsys.h:50
std::vector< functionT > vecfuncT
Definition: molsys.h:49
bool spin_restricted
Definition: molsys.h:53
vecfuncT bmo
Definition: molsys.h:54
std::vector< int > aset
Definition: molsys.h:55
tensorT aeps
Definition: molsys.h:57
Definition: molsys.h:46
tensorT bocc
Definition: molsys.h:56
tensorT beps
Definition: molsys.h:57
MolecularSystem()
Definition: molsys.h:64
void save(World &world, const char *filename)
Definition: molsys.cc:5
madness::Function< double, 3 > functionT
Definition: molsys.h:48
vecfuncT amo
Definition: molsys.h:54
int nio
Definition: molsys.h:58
void load(World &world, const char *filename, unsigned int naplha, unsigned int nvalpha, unsigned int nbeta, unsigned int nvbeta, unsigned int n_core)
Definition: molsys.cc:19
std::vector< int > bset
Definition: molsys.h:55