votca
2024.2-dev
Loading...
Searching...
No Matches
xtp
include
votca
xtp
fcddiabatization.h
Go to the documentation of this file.
1
/*
2
* Copyright 2009-2020 The VOTCA Development Team
3
* (http://www.votca.org)
4
*
5
* Licensed under the Apache License, Version 2.0 (the "License")
6
*
7
* You may not use this file except in compliance with the License.
8
* You may obtain a copy of the License at
9
*
10
* http://www.apache.org/licenses/LICENSE-2.0
11
*
12
* Unless required by applicable law or agreed to in writing, software
13
* distributed under the License is distributed on an "AS IS" BASIS,
14
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
* See the License for the specific language governing permissions and
16
* limitations under the License.
17
*
18
*/
19
20
#pragma once
21
#ifndef VOTCA_XTP_FCDDIABATIZATION_H
22
#define VOTCA_XTP_FCDDIABATIZATION_H
23
24
#include "
logger.h
"
25
#include "
votca/xtp/orbitals.h
"
26
#include "
votca/xtp/qmfragment.h
"
27
#include "
votca/xtp/qmtool.h
"
28
#include <cstdio>
29
#include <
votca/tools/property.h
>
30
#include <
votca/tools/types.h
>
31
#include <
votca/xtp/aobasis.h
>
32
33
namespace
votca
{
34
namespace
xtp {
35
36
class
FCDDiabatization
{
37
public
:
38
FCDDiabatization
();
39
40
FCDDiabatization
(
Orbitals
& orbitals1,
Orbitals
& orbitals2,
Logger
* log,
41
Index
state_idx_1,
Index
state_idx_2, std::string qmstate,
42
std::vector<
QMFragment<BSE_Population>
> fragments)
43
:
orbitals1_
(orbitals1),
44
orbitals2_
(orbitals2),
45
pLog_
(log),
46
state_idx_1_
(state_idx_1),
47
state_idx_2_
(state_idx_2),
48
qmstate_str_
(qmstate),
49
fragments_
(fragments) {};
50
51
void
configure
();
52
53
double
calculate_coupling
();
54
const
std::pair<double, double>
adiabatic_energies
() {
55
return
std::pair<double, double>(
E1_
,
E2_
);
56
};
57
58
private
:
59
Orbitals
&
orbitals1_
;
60
Orbitals
&
orbitals2_
;
61
QMStateType
qmtype_
;
62
Logger
*
pLog_
;
63
64
AOBasis
dftbasis_
;
65
66
Index
state_idx_1_
;
67
Index
state_idx_2_
;
68
std::string
qmstate_str_
;
69
70
double
E1_
;
71
double
E2_
;
72
73
std::vector<QMFragment<BSE_Population> >
fragments_
;
74
};
75
}
// namespace xtp
76
}
// namespace votca
77
78
#endif
// VOTCA_XTP_FCDDIABATIZATION_H
aobasis.h
votca::xtp::AOBasis
Container to hold Basisfunctions for all atoms.
Definition
aobasis.h:42
votca::xtp::FCDDiabatization
Definition
fcddiabatization.h:36
votca::xtp::FCDDiabatization::pLog_
Logger * pLog_
Definition
fcddiabatization.h:62
votca::xtp::FCDDiabatization::adiabatic_energies
const std::pair< double, double > adiabatic_energies()
Definition
fcddiabatization.h:54
votca::xtp::FCDDiabatization::orbitals2_
Orbitals & orbitals2_
Definition
fcddiabatization.h:60
votca::xtp::FCDDiabatization::FCDDiabatization
FCDDiabatization()
votca::xtp::FCDDiabatization::E1_
double E1_
Definition
fcddiabatization.h:70
votca::xtp::FCDDiabatization::FCDDiabatization
FCDDiabatization(Orbitals &orbitals1, Orbitals &orbitals2, Logger *log, Index state_idx_1, Index state_idx_2, std::string qmstate, std::vector< QMFragment< BSE_Population > > fragments)
Definition
fcddiabatization.h:40
votca::xtp::FCDDiabatization::fragments_
std::vector< QMFragment< BSE_Population > > fragments_
Definition
fcddiabatization.h:73
votca::xtp::FCDDiabatization::E2_
double E2_
Definition
fcddiabatization.h:71
votca::xtp::FCDDiabatization::qmstate_str_
std::string qmstate_str_
Definition
fcddiabatization.h:68
votca::xtp::FCDDiabatization::dftbasis_
AOBasis dftbasis_
Definition
fcddiabatization.h:64
votca::xtp::FCDDiabatization::state_idx_1_
Index state_idx_1_
Definition
fcddiabatization.h:66
votca::xtp::FCDDiabatization::state_idx_2_
Index state_idx_2_
Definition
fcddiabatization.h:67
votca::xtp::FCDDiabatization::qmtype_
QMStateType qmtype_
Definition
fcddiabatization.h:61
votca::xtp::FCDDiabatization::calculate_coupling
double calculate_coupling()
Definition
fcddiabatization.cc:66
votca::xtp::FCDDiabatization::configure
void configure()
Definition
fcddiabatization.cc:31
votca::xtp::FCDDiabatization::orbitals1_
Orbitals & orbitals1_
Definition
fcddiabatization.h:59
votca::xtp::Logger
Logger is used for thread-safe output of messages.
Definition
logger.h:164
votca::xtp::Orbitals
container for molecular orbitals
Definition
orbitals.h:46
votca::xtp::QMFragment
Definition
qmfragment.h:41
votca::xtp::QMStateType
Definition
qmstate.h:33
logger.h
votca
base class for all analysis tools
Definition
basebead.h:33
votca::Index
Eigen::Index Index
Definition
types.h:26
orbitals.h
property.h
qmfragment.h
qmtool.h
types.h
Generated by
1.12.0