eOn 3.2.0
Long-timescale dynamics: aKMC, NEB, parallel replica
☾
Toggle main menu visibility
Loading...
Searching...
No Matches
ARTnSaddleSearch.h
Go to the documentation of this file.
1
/*
2
* This file is part of eOn.
3
*
4
* SPDX-License-Identifier: BSD-3-Clause
5
*
6
* Copyright (c) 2010--present, eOn Development Team
7
* All rights reserved.
8
*
9
* Repo:
10
* https://github.com/TheochemUI/eOn
11
*/
12
13
#pragma once
14
15
#include "
EonLogger.h
"
16
#include "
Matter.h
"
17
#include "
MinModeSaddleSearch.h
"
18
#include "
Parameters.h
"
19
#include "
SaddleSearchMethod.h
"
20
#include <limits>
21
22
namespace
eonc
{
23
24
class
IARTnResource
;
25
28
class
ARTnSaddleSearch
:
public
SaddleSearchMethod
{
29
public
:
30
static
constexpr
int
STATUS_GOOD
= 0;
31
static
constexpr
int
STATUS_BAD_MAX_ITERATIONS
=
32
MinModeSaddleSearch::STATUS_BAD_MAX_ITERATIONS
;
33
static
constexpr
int
STATUS_BAD_ARTN_ERROR
= 22;
34
35
ARTnSaddleSearch
(std::shared_ptr<Matter> matterPassed,
36
std::shared_ptr<Potential> potPassed,
AtomMatrix
modeInitial,
37
const
Parameters
¶msPassed);
38
~ARTnSaddleSearch
()
override
;
39
41
int
run
()
override
;
43
int
run
(
IARTnResource
&res);
44
double
getEigenvalue
()
override
;
45
AtomMatrix
getEigenvector
()
override
;
46
std::string_view
describeStatus
(
int
status
)
const override
;
47
int
getStatus
()
const override
{
return
status
; }
48
int
getIterationCount
()
const override
{
return
iteration
; }
49
int
getForceCalls
()
const override
{
return
forcecalls
; }
50
51
private
:
52
std::shared_ptr<Matter>
matter
;
53
double
eigenvalue
{std::numeric_limits<double>::quiet_NaN()};
54
AtomMatrix
eigenvector
,
mode
;
55
int
status
{0};
56
int
iteration
{0};
57
int
forcecalls
{0};
58
eonc::log::Scoped
log
;
59
};
60
61
}
// namespace eonc
AtomMatrix
Eigen::Matrix< double, Eigen::Dynamic, 3, eOnStorageOrder > AtomMatrix
Definition
Eigen.h:37
EonLogger.h
Matter.h
MinModeSaddleSearch.h
Parameters.h
SaddleSearchMethod.h
eonc::ARTnSaddleSearch::~ARTnSaddleSearch
~ARTnSaddleSearch() override
Definition
ARTnSaddleSearch.cpp:69
eonc::ARTnSaddleSearch::eigenvector
AtomMatrix eigenvector
Definition
ARTnSaddleSearch.h:54
eonc::ARTnSaddleSearch::getEigenvalue
double getEigenvalue() override
Definition
ARTnSaddleSearch.cpp:460
eonc::ARTnSaddleSearch::eigenvalue
double eigenvalue
Definition
ARTnSaddleSearch.h:53
eonc::ARTnSaddleSearch::ARTnSaddleSearch
ARTnSaddleSearch(std::shared_ptr< Matter > matterPassed, std::shared_ptr< Potential > potPassed, AtomMatrix modeInitial, const Parameters ¶msPassed)
Definition
ARTnSaddleSearch.cpp:55
eonc::ARTnSaddleSearch::forcecalls
int forcecalls
Definition
ARTnSaddleSearch.h:57
eonc::ARTnSaddleSearch::run
int run() override
Production path loads the process ARTn library when that library is linked.
Definition
ARTnSaddleSearch.cpp:75
eonc::ARTnSaddleSearch::status
int status
Definition
ARTnSaddleSearch.h:55
eonc::ARTnSaddleSearch::log
eonc::log::Scoped log
Definition
ARTnSaddleSearch.h:58
eonc::ARTnSaddleSearch::describeStatus
std::string_view describeStatus(int status) const override
Definition
ARTnSaddleSearch.cpp:474
eonc::ARTnSaddleSearch::iteration
int iteration
Definition
ARTnSaddleSearch.h:56
eonc::ARTnSaddleSearch::mode
AtomMatrix mode
Definition
ARTnSaddleSearch.h:54
eonc::ARTnSaddleSearch::getEigenvector
AtomMatrix getEigenvector() override
Definition
ARTnSaddleSearch.cpp:467
eonc::ARTnSaddleSearch::getForceCalls
int getForceCalls() const override
Definition
ARTnSaddleSearch.h:49
eonc::ARTnSaddleSearch::STATUS_GOOD
static constexpr int STATUS_GOOD
Definition
ARTnSaddleSearch.h:30
eonc::ARTnSaddleSearch::STATUS_BAD_ARTN_ERROR
static constexpr int STATUS_BAD_ARTN_ERROR
Definition
ARTnSaddleSearch.h:33
eonc::ARTnSaddleSearch::getStatus
int getStatus() const override
Definition
ARTnSaddleSearch.h:47
eonc::ARTnSaddleSearch::matter
std::shared_ptr< Matter > matter
Definition
ARTnSaddleSearch.h:52
eonc::ARTnSaddleSearch::STATUS_BAD_MAX_ITERATIONS
static constexpr int STATUS_BAD_MAX_ITERATIONS
Definition
ARTnSaddleSearch.h:31
eonc::ARTnSaddleSearch::getIterationCount
int getIterationCount() const override
Definition
ARTnSaddleSearch.h:48
eonc::IARTnResource
Definition
ARTnResource.h:37
eonc::MinModeSaddleSearch::STATUS_BAD_MAX_ITERATIONS
@ STATUS_BAD_MAX_ITERATIONS
Definition
MinModeSaddleSearch.h:36
eonc::Parameters
Definition
Parameters.h:35
eonc::SaddleSearchMethod::SaddleSearchMethod
SaddleSearchMethod(std::shared_ptr< Potential > potPassed, const Parameters ¶msPassed)
Definition
SaddleSearchMethod.h:27
eonc
RAII resource manager for the ARTn C library with global synchronization.
Definition
ARTnSaddleSearch.cpp:23
eonc::log::Scoped
RAII helper for class-scoped logging.
Definition
EonLogger.h:171
include
eon
ARTnSaddleSearch.h
Generated by
1.17.0
Generated by
Doxygen 1.17.0
Analytics by
Antics
provided by
TurtleTech ehf