eOn client
Long-timescale dynamics: aKMC, NEB, parallel replica
☾
Toggle main menu visibility
Loading...
Searching...
No Matches
ProcessSearchJob.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 "
Job.h
"
16
#include "
Matter.h
"
17
#include "
MinModeSaddleSearch.h
"
18
#include "
Parameters.h
"
19
20
namespace
eonc
{
21
40
44
45
class
ProcessSearchJob
:
public
Job
{
46
public
:
48
51
ProcessSearchJob
(std::unique_ptr<Parameters> parameters)
52
:
Job
(std::move(parameters)),
53
fCallsSaddle
{0},
54
fCallsMin
{0},
55
fCallsPrefactors
{0} {}
56
57
~ProcessSearchJob
() =
default
;
59
std::vector<std::string>
run
(
void
)
override
;
60
61
private
:
62
eonc::log::Scoped
log
;
64
int
doProcessSearch
(
void
);
66
void
printEndState
(
int
status);
68
void
saveData
(
int
status);
69
71
std::vector<std::string>
returnFiles
;
72
74
78
std::unique_ptr<SaddleSearchMethod>
saddleSearch
;
80
std::shared_ptr<Matter>
initial
;
82
std::shared_ptr<Matter>
saddle
;
84
std::shared_ptr<Matter>
displacement
;
86
std::shared_ptr<Matter>
min1
;
88
std::shared_ptr<Matter>
min2
;
89
92
double
barriersValues
[2]{0.0, 0.0};
95
double
prefactorsValues
[2]{0.0, 0.0};
96
98
size_t
fCallsSaddle
{0};
100
size_t
fCallsMin
{0};
102
size_t
fCallsPrefactors
{0};
103
};
104
105
}
// namespace eonc
106
107
using
eonc::ProcessSearchJob
;
EonLogger.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
eonc::Job::Job
Job(std::unique_ptr< Parameters > parameters)
Definition
Job.h:58
eonc::ProcessSearchJob
Declaration of the Process Search job.
Definition
ProcessSearchJob.h:45
eonc::ProcessSearchJob::displacement
std::shared_ptr< Matter > displacement
Configuration used during the saddle point search.
Definition
ProcessSearchJob.h:84
eonc::ProcessSearchJob::fCallsPrefactors
size_t fCallsPrefactors
Force calls to find the prefactors.
Definition
ProcessSearchJob.h:102
eonc::ProcessSearchJob::log
eonc::log::Scoped log
Definition
ProcessSearchJob.h:62
eonc::ProcessSearchJob::fCallsMin
size_t fCallsMin
Force calls to minimize.
Definition
ProcessSearchJob.h:100
eonc::ProcessSearchJob::min1
std::shared_ptr< Matter > min1
First minimum from the saddle.
Definition
ProcessSearchJob.h:86
eonc::ProcessSearchJob::ProcessSearchJob
ProcessSearchJob(std::unique_ptr< Parameters > parameters)
Process Search job Constructor.
Definition
ProcessSearchJob.h:51
eonc::ProcessSearchJob::run
std::vector< std::string > run(void) override
Kicks off the Process Search.
Definition
ProcessSearchJob.cpp:34
eonc::ProcessSearchJob::returnFiles
std::vector< std::string > returnFiles
Container for the results of the run.
Definition
ProcessSearchJob.h:71
eonc::ProcessSearchJob::~ProcessSearchJob
~ProcessSearchJob()=default
Process Search job De-constructor.
eonc::ProcessSearchJob::barriersValues
double barriersValues[2]
Definition
ProcessSearchJob.h:92
eonc::ProcessSearchJob::prefactorsValues
double prefactorsValues[2]
Definition
ProcessSearchJob.h:95
eonc::ProcessSearchJob::min2
std::shared_ptr< Matter > min2
Second minimum from the saddle.
Definition
ProcessSearchJob.h:88
eonc::ProcessSearchJob::saddle
std::shared_ptr< Matter > saddle
Configuration used during the saddle point search.
Definition
ProcessSearchJob.h:82
eonc::ProcessSearchJob::doProcessSearch
int doProcessSearch(void)
Runs the correct saddle search; also checks if the run was successful.
Definition
ProcessSearchJob.cpp:165
eonc::ProcessSearchJob::initial
std::shared_ptr< Matter > initial
Initial configuration.
Definition
ProcessSearchJob.h:80
eonc::ProcessSearchJob::saddleSearch
std::unique_ptr< SaddleSearchMethod > saddleSearch
Pulled from parameters.
Definition
ProcessSearchJob.h:78
eonc::ProcessSearchJob::fCallsSaddle
size_t fCallsSaddle
Force calls to find the saddle.
Definition
ProcessSearchJob.h:98
eonc::ProcessSearchJob::saveData
void saveData(int status)
Writes the results from the run to file.
Definition
ProcessSearchJob.cpp:323
eonc::ProcessSearchJob::printEndState
void printEndState(int status)
Logs the run status and makes sure the run was successful.
Definition
ProcessSearchJob.cpp:393
eonc
RAII resource manager for the ARTn C library with global synchronization.
Definition
ARTnSaddleSearch.cpp:19
eonc::log::Scoped
RAII helper for class-scoped logging.
Definition
EonLogger.h:171
include
eon
ProcessSearchJob.h
Generated by
1.17.0
Generated by
Doxygen 1.17.0
Analytics by
Antics
provided by
TurtleTech ehf