Loading...
Searching...
No Matches
ReplicaExchangeJob.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 "Dynamics.h"
16#include "Job.h"
17#include "Matter.h"
18#include "Parameters.h"
19
20namespace eonc {
21
22class ReplicaExchangeJob : public Job {
23public:
24 using Job::Job;
26 std::vector<std::string> run(void);
28 std::shared_ptr<Matter> runFromMatter(std::shared_ptr<Matter> initial);
29
30private:
31 void saveData();
32
33 size_t forceCalls{0};
34 // std::shared_ptr<Matter>*replica;
35 std::shared_ptr<Matter> pos;
36 // Dynamics **replicaDynamics;
37 // double *replicaTemperature;
38 std::vector<std::string> returnFiles;
40};
41
42} // namespace eonc
43
The job class is used to serve as an abstract class for all jobs, as well as to call a job at runtime...
Job(std::unique_ptr< Parameters > parameters)
Definition Job.h:58
std::vector< std::string > returnFiles
Job(std::unique_ptr< Parameters > parameters)
Definition Job.h:58
std::vector< std::string > run(void)
Virtual run; used solely for dynamic dispatch.
std::shared_ptr< Matter > runFromMatter(std::shared_ptr< Matter > initial)
Matter-first; returns replica-0 Matter after sampling.
std::shared_ptr< Matter > pos
RAII resource manager for the ARTn C library with global synchronization.
RAII helper for class-scoped logging.
Definition EonLogger.h:171