KIDS  ver-0.0.1
KIDS : Kernel Integrated Dynamics Simulator
Loading...
Searching...
No Matches
Kernel_NADForce.h
Go to the documentation of this file.
1
27#ifndef Kernel_NADForce_H
28#define Kernel_NADForce_H
29
30#include "kids/Kernel.h"
31#include "kids/Policy.h"
32
33namespace PROJECT_NS {
34
35DEFINE_POLICY(NADForcePolicy, //
36 EHR, //
37 BO, //
38 CV, //
39 BOSD, //
40 CVSD, //
41 ELSE); //
42
43namespace FORCE_OPT {
44extern bool BATH_FORCE_BILINEAR;
45extern int nbath;
46extern int Nb;
47}; // namespace FORCE_OPT
48
52class Kernel_NADForce : public Kernel {
53 public:
54 static NADForcePolicy::_type NADForce_type;
55
56 virtual const std::string getName();
57
58 virtual int getType() const;
59
60 private:
62
63 kids_real *f, *grad, *dV, *dE, *Force, *T;
66
68
69 virtual void setInputParam_impl(std::shared_ptr<Param>& PM);
70
71 virtual void setInputDataSet_impl(std::shared_ptr<DataSet>& DS);
72
73 virtual Status& initializeKernel_impl(Status& stat);
74
75 virtual Status& executeKernel_impl(Status& stat);
76};
77
78}; // namespace PROJECT_NS
79
80#endif // Kernel_NADForce_H
this file provide Kernel class
#define DEFINE_POLICY(Policy,...)
Definition Policy.h:83
this class implements process of calculation of nuclear force for nonadiabatic dynamics
virtual Status & executeKernel_impl(Status &stat)
Virtual function to execute the kernel implementation.
virtual void setInputParam_impl(std::shared_ptr< Param > &PM)
Virtual function to set input parameters for the kernel implementation.
static NADForcePolicy::_type NADForce_type
virtual Status & initializeKernel_impl(Status &stat)
Virtual function to initialize the kernel implementation.
virtual void setInputDataSet_impl(std::shared_ptr< DataSet > &DS)
Virtual function to set input data set for the kernel implementation.
virtual int getType() const
Get the type of the kernel.
virtual const std::string getName()
Get the name of the kernel.
this class provides the container and implementation of algorithms
Definition Kernel.h:60
< http://warp.povusers.org/FunctionParser/fparser.html
Definition Context.h:39
double kids_real
Alias for real number type.
Definition Types.h:59
int kids_bint
Alias for integer type.
Definition Types.h:58