Loading...
Searching...
No Matches
TestJob.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
14#include "ConjugateGradients.h"
15#include "Job.h"
16#include "Parameters.h"
17
18namespace eonc {
19
20class TestJob : public Job {
21public:
22 TestJob(std::unique_ptr<Parameters> params)
23 : Job(std::move(params)),
24 tolerance{0.01} {}
25 ~TestJob(void) = default;
26 std::vector<std::string> run(void);
27
28private:
29 double tolerance{0.0};
30 void checkFullSearch(void);
31 void checkPotentials(void);
32 double getEnergyDiff(std::string potTag, double refEnergy);
33 double getForceDiff(std::string potTag, double refForce);
34};
35
36} // namespace eonc
37
38using eonc::TestJob;
Direct optimization for energy minimization.
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
Parameters params
Definition Job.h:54
void checkFullSearch(void)
Definition TestJob.cpp:29
TestJob(std::unique_ptr< Parameters > params)
Definition TestJob.h:22
double tolerance
Definition TestJob.h:29
void checkPotentials(void)
Definition TestJob.cpp:155
double getEnergyDiff(std::string potTag, double refEnergy)
Definition TestJob.cpp:272
std::vector< std::string > run(void)
Virtual run; used solely for dynamic dispatch.
Definition TestJob.cpp:22
double getForceDiff(std::string potTag, double refForce)
Definition TestJob.cpp:282
~TestJob(void)=default
RAII resource manager for the ARTn C library with global synchronization.