eOn client
Long-timescale dynamics: aKMC, NEB, parallel replica
☾
Toggle main menu visibility
Loading...
Searching...
No Matches
ParallelReplicaJob.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
18
#include <memory>
19
#include <vector>
20
21
namespace
eonc
{
22
23
class
ParallelReplicaJob
:
public
Job
{
24
public
:
25
using
Job::Job
;
26
~ParallelReplicaJob
() =
default
;
27
std::vector<std::string>
run
()
override
;
29
std::shared_ptr<Matter>
runFromMatter
(std::shared_ptr<Matter> initial);
30
31
private
:
32
std::vector<std::string>
returnFiles
;
33
std::shared_ptr<Matter>
reactant
;
34
35
void
dephase
(
Matter
&trajectory);
36
int
refineTransition
(
const
std::vector<std::shared_ptr<Matter>> &snapshots,
37
bool
fake =
false
);
38
eonc::log::Scoped
log
;
39
};
40
41
}
// namespace eonc
42
43
using
eonc::ParallelReplicaJob
;
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
eonc::Job::Job
Job(std::unique_ptr< Parameters > parameters)
Definition
Job.h:58
eonc::Matter
Definition
Matter.h:92
eonc::ParallelReplicaJob
Definition
ParallelReplicaJob.h:23
eonc::ParallelReplicaJob::returnFiles
std::vector< std::string > returnFiles
Definition
ParallelReplicaJob.h:32
eonc::ParallelReplicaJob::log
eonc::log::Scoped log
Definition
ParallelReplicaJob.h:38
eonc::ParallelReplicaJob::reactant
std::shared_ptr< Matter > reactant
Definition
ParallelReplicaJob.h:33
eonc::ParallelReplicaJob::refineTransition
int refineTransition(const std::vector< std::shared_ptr< Matter > > &snapshots, bool fake=false)
Definition
ParallelReplicaJob.cpp:317
eonc::ParallelReplicaJob::Job
Job(std::unique_ptr< Parameters > parameters)
Definition
Job.h:58
eonc::ParallelReplicaJob::dephase
void dephase(Matter &trajectory)
Definition
ParallelReplicaJob.cpp:275
eonc::ParallelReplicaJob::run
std::vector< std::string > run() override
Virtual run; used solely for dynamic dispatch.
Definition
ParallelReplicaJob.cpp:25
eonc::ParallelReplicaJob::~ParallelReplicaJob
~ParallelReplicaJob()=default
eonc::ParallelReplicaJob::runFromMatter
std::shared_ptr< Matter > runFromMatter(std::shared_ptr< Matter > initial)
Matter-first entry; returns final trajectory Matter.
Definition
ParallelReplicaJob.cpp:40
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
ParallelReplicaJob.h
Generated by
1.17.0
Generated by
Doxygen 1.17.0
Analytics by
Antics
provided by
TurtleTech ehf