CheMPS2
Main Page
Related Pages
Classes
Files
File List
TensorF0.h
1
/*
2
CheMPS2: a spin-adapted implementation of DMRG for ab initio quantum chemistry
3
Copyright (C) 2013-2016 Sebastian Wouters
4
5
This program is free software; you can redistribute it and/or modify
6
it under the terms of the GNU General Public License as published by
7
the Free Software Foundation; either version 2 of the License, or
8
(at your option) any later version.
9
10
This program is distributed in the hope that it will be useful,
11
but WITHOUT ANY WARRANTY; without even the implied warranty of
12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
GNU General Public License for more details.
14
15
You should have received a copy of the GNU General Public License along
16
with this program; if not, write to the Free Software Foundation, Inc.,
17
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
18
*/
19
20
#ifndef TENSORF0_CHEMPS2_H
21
#define TENSORF0_CHEMPS2_H
22
23
#include "Tensor.h"
24
#include "TensorT.h"
25
#include "TensorL.h"
26
#include "TensorOperator.h"
27
#include "SyBookkeeper.h"
28
29
namespace
CheMPS2
{
35
class
TensorF0
:
public
TensorOperator
{
36
37
public
:
38
40
44
TensorF0
(
const
int
boundary_index,
const
int
Idiff,
const
bool
moving_right
,
const
SyBookkeeper
* denBK );
45
47
virtual
~TensorF0
();
48
49
//Make new TensorF0 (vs update)
51
void
makenew
(
TensorT
* denT);
52
53
//Make new TensorF0 (vs update)
57
void
makenew
(
TensorL
* denL,
TensorT
* denT,
double
* workmem);
58
59
private
:
60
61
//makenew when movingright
62
void
makenewRight(
TensorL
* denL,
TensorT
* denT,
double
* workmem);
63
64
//makenew when movingleft
65
void
makenewLeft(
TensorL
* denL,
TensorT
* denT,
double
* workmem);
66
67
//makenew when movingright
68
void
makenewRight(
TensorT
* denT);
69
70
//makenew when movingleft
71
void
makenewLeft(
TensorT
* denT);
72
73
};
74
}
75
76
#endif
CheMPS2::TensorL
Definition:
TensorL.h:32
CheMPS2::TensorF0::~TensorF0
virtual ~TensorF0()
Destructor.
Definition:
TensorF0.cpp:37
CheMPS2
Definition:
CASPT2.h:42
CheMPS2::SyBookkeeper
Definition:
SyBookkeeper.h:34
CheMPS2::TensorT
Definition:
TensorT.h:32
CheMPS2::TensorOperator::moving_right
bool moving_right
Whether or not moving right.
Definition:
TensorOperator.h:154
CheMPS2::TensorF0::TensorF0
TensorF0(const int boundary_index, const int Idiff, const bool moving_right, const SyBookkeeper *denBK)
Constructor.
Definition:
TensorF0.cpp:26
CheMPS2::TensorF0::makenew
void makenew(TensorT *denT)
Definition:
TensorF0.cpp:39
CheMPS2::TensorOperator
Definition:
TensorOperator.h:42
CheMPS2::TensorF0
Definition:
TensorF0.h:35
include
chemps2
TensorF0.h
Generated on Wed Aug 24 2016 10:09:16 for CheMPS2 by
1.8.11