eOn 3.2.0
Long-timescale dynamics: aKMC, NEB, parallel replica
☾
Toggle main menu visibility
Loading...
Searching...
No Matches
SaddleSearchJob.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
#pragma once
13
#include "
EonLogger.h
"
14
15
#include "
HelperFunctions.h
"
16
#include "
Job.h
"
17
#include "
Matter.h
"
18
#include "
MinModeSaddleSearch.h
"
19
#include "
Parameters.h
"
20
#include "
SaddleSearchMethod.h
"
21
22
namespace
eonc
{
23
40
44
45
class
SaddleSearchJob
:
public
Job
{
46
public
:
48
51
SaddleSearchJob
(std::unique_ptr<Parameters> parameters,
Runtime
&rt)
52
:
Job
(std::move(parameters), rt),
53
fCallsSaddle
{0} {}
54
55
~SaddleSearchJob
(
void
) =
default
;
57
std::vector<std::string>
run
(
void
)
override
;
59
std::shared_ptr<Matter>
runFromMatter
(std::shared_ptr<Matter> seed);
60
61
private
:
62
std::shared_ptr<Matter>
runPrepared
(
const
AtomMatrix
&mode);
64
int
doSaddleSearch
();
66
void
printEndState
(
int
status);
68
void
saveData
(
int
status);
69
71
std::vector<std::string>
returnFiles
;
72
74
std::unique_ptr<SaddleSearchMethod>
saddleSearch
;
76
std::shared_ptr<Matter>
initial
;
78
std::shared_ptr<Matter>
saddle
;
80
std::shared_ptr<Matter>
displacement
;
81
83
int
fCallsSaddle
;
84
85
eonc::log::Scoped
log
;
86
};
87
88
}
// namespace eonc
AtomMatrix
Eigen::Matrix< double, Eigen::Dynamic, 3, eOnStorageOrder > AtomMatrix
Definition
Eigen.h:37
EonLogger.h
HelperFunctions.h
Job.h
The job class is used to serve as an abstract class for all jobs, as well as to call a job at runtime...
Matter.h
MinModeSaddleSearch.h
Parameters.h
SaddleSearchMethod.h
eonc::Job::Job
Job(std::unique_ptr< Parameters > parameters, Runtime &rt)
Borrow: caller keeps Runtime alive (CLI stack / Python Session).
Definition
Job.h:76
eonc::Runtime
Move-only composition root for process resources (dlopen loaders and the potential registry).
Definition
Runtime.h:27
eonc::SaddleSearchJob::saddleSearch
std::unique_ptr< SaddleSearchMethod > saddleSearch
Initializes a ref SaddleSearchMethod (base class for polymorphism).
Definition
SaddleSearchJob.h:74
eonc::SaddleSearchJob::returnFiles
std::vector< std::string > returnFiles
Container for the results of the run.
Definition
SaddleSearchJob.h:71
eonc::SaddleSearchJob::runFromMatter
std::shared_ptr< Matter > runFromMatter(std::shared_ptr< Matter > seed)
In-process entry: seed reactant Matter, no pos.con.
Definition
SaddleSearchJob.cpp:86
eonc::SaddleSearchJob::saddle
std::shared_ptr< Matter > saddle
Configuration used during the saddle point search.
Definition
SaddleSearchJob.h:78
eonc::SaddleSearchJob::log
eonc::log::Scoped log
Definition
SaddleSearchJob.h:85
eonc::SaddleSearchJob::SaddleSearchJob
SaddleSearchJob(std::unique_ptr< Parameters > parameters, Runtime &rt)
Saddle Search job constructor.
Definition
SaddleSearchJob.h:51
eonc::SaddleSearchJob::run
std::vector< std::string > run(void) override
Kicks off the Saddle Search.
Definition
SaddleSearchJob.cpp:29
eonc::SaddleSearchJob::doSaddleSearch
int doSaddleSearch()
Runs the correct saddle search; also checks if the run was successful.
Definition
SaddleSearchJob.cpp:139
eonc::SaddleSearchJob::fCallsSaddle
int fCallsSaddle
Force calls to find the saddle.
Definition
SaddleSearchJob.h:83
eonc::SaddleSearchJob::~SaddleSearchJob
~SaddleSearchJob(void)=default
Saddle Search Job Deconstructor.
eonc::SaddleSearchJob::displacement
std::shared_ptr< Matter > displacement
Configuration used during the saddle point search.
Definition
SaddleSearchJob.h:80
eonc::SaddleSearchJob::saveData
void saveData(int status)
Writes the results from the run to file.
Definition
SaddleSearchJob.cpp:170
eonc::SaddleSearchJob::printEndState
void printEndState(int status)
Logs the run status and makes sure the run was successful.
Definition
SaddleSearchJob.cpp:209
eonc::SaddleSearchJob::initial
std::shared_ptr< Matter > initial
Initial configuration.
Definition
SaddleSearchJob.h:76
eonc::SaddleSearchJob::runPrepared
std::shared_ptr< Matter > runPrepared(const AtomMatrix &mode)
Definition
SaddleSearchJob.cpp:103
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
SaddleSearchJob.h
Generated by
1.17.0
Generated by
Doxygen 1.17.0
Analytics by
Antics
provided by
TurtleTech ehf