CheMPS2
Main Page
Related Pages
Classes
Files
File List
TensorL.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 TENSORL_CHEMPS2_H
21
#define TENSORL_CHEMPS2_H
22
23
#include "TensorT.h"
24
#include "TensorO.h"
25
26
namespace
CheMPS2
{
32
class
TensorL
:
public
TensorOperator
{
33
34
public
:
35
37
42
TensorL
(
const
int
boundary_index,
const
int
Idiff,
const
bool
moving_right
,
const
SyBookkeeper
* book_up,
const
SyBookkeeper
* book_down );
43
45
virtual
~TensorL
();
46
48
49
void
create
(
TensorT
* mps_tensor );
50
52
56
void
create
(
TensorT
* mps_tensor_up,
TensorT
* mps_tensor_down,
TensorO
* previous,
double
* workmem );
57
58
private
:
59
61
void
create_right(
const
int
ikappa,
TensorT
* mps_tensor_up,
TensorT
* mps_tensor_down,
TensorO
* previous,
double
* workmem );
62
64
void
create_left(
const
int
ikappa,
TensorT
* mps_tensor_up,
TensorT
* mps_tensor_down,
TensorO
* previous,
double
* workmem );
65
66
};
67
}
68
69
#endif
CheMPS2::TensorO
Definition:
TensorO.h:33
CheMPS2::TensorL
Definition:
TensorL.h:32
CheMPS2::TensorL::create
void create(TensorT *mps_tensor)
Create a new TensorL.
Definition:
TensorL.cpp:41
CheMPS2
Definition:
CASPT2.h:42
CheMPS2::TensorL::TensorL
TensorL(const int boundary_index, const int Idiff, const bool moving_right, const SyBookkeeper *book_up, const SyBookkeeper *book_down)
Constructor.
Definition:
TensorL.cpp:28
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::TensorL::~TensorL
virtual ~TensorL()
Destructor.
Definition:
TensorL.cpp:39
CheMPS2::TensorOperator
Definition:
TensorOperator.h:42
include
chemps2
TensorL.h
Generated on Wed Aug 24 2016 10:09:16 for CheMPS2 by
1.8.11