KIDS  ver-0.0.1
KIDS : Kernel Integrated Dynamics Simulator
Loading...
Searching...
No Matches
Kernel_Elec_Switch.h
Go to the documentation of this file.
1
12#ifndef Kernel_Elec_Switch_H
13#define Kernel_Elec_Switch_H
14
15#include "kids/Kernel.h"
16#include "kids/Kernel_Elec.h"
18#include "kids/Policy.h"
19
20namespace PROJECT_NS {
21
25class Kernel_Elec_Switch final : public Kernel {
26 public:
27 virtual const std::string getName();
28
29 virtual int getType() const;
30
31 Kernel_Elec_Switch(double scale = 1.0e0) : Kernel(), scale{scale} {
32 appendChild(std::shared_ptr<Kernel_Elec>(new Kernel_Elec())); //
33 }
34
35 private:
36 NADPolicy::_type cmsh_type;
37
39 bool use_focus = false;
40 bool use_cv = true; // adapt cv in rho_nuc
41 bool use_wmm = false; // in this case, gamma1 will be used as delta in wMM
42 bool use_fall = false;
43 bool use_gdtwa = false;
44 bool use_sum = false;
45
46 bool cread_from_ds = false;
47
48 bool reflect = true; // treatment in hopping
51
53
54 double scale;
55 double dt;
63 kids_real * vpes, *V, *E, *dE, *T;
69
71
72 //
73 bool use_sqc;
77
80
81 virtual void setInputParam_impl(std::shared_ptr<Param>& PM);
82
83 virtual void setInputDataSet_impl(std::shared_ptr<DataSet>& DS);
84
85 virtual Status& initializeKernel_impl(Status& stat);
86
87 virtual Status& executeKernel_impl(Status& stat);
88};
89
90}; // namespace PROJECT_NS
91
92#endif // Kernel_Elec_Switch_H
this file provide Kernel class
initialization kernels for electonic DOFs
this file provides Kernel_Elec_NAD class for electronic dynamics and properties in nonadiabatic traje...
initialization kernel for electonic DOFs in NAD
virtual const std::string getName()
Get the name of the kernel.
virtual void setInputDataSet_impl(std::shared_ptr< DataSet > &DS)
Virtual function to set input data set for the kernel implementation.
virtual Status & initializeKernel_impl(Status &stat)
Virtual function to initialize the kernel implementation.
virtual int getType() const
Get the type of the kernel.
Kernel_Elec_Switch(double scale=1.0e0)
virtual void setInputParam_impl(std::shared_ptr< Param > &PM)
Virtual function to set input parameters for the kernel implementation.
virtual Status & executeKernel_impl(Status &stat)
Virtual function to execute the kernel implementation.
this class implements calculation/utils for electronic DOFs:
Definition Kernel_Elec.h:11
this class provides the container and implementation of algorithms
Definition Kernel.h:60
Kernel & appendChild(std::shared_ptr< Kernel > ker)
Append a kernel as the last child of the current tree node.
Definition Kernel.cpp:78
< http://warp.povusers.org/FunctionParser/fparser.html
Definition Context.h:39
double kids_real
Alias for real number type.
Definition Types.h:59
std::complex< double > kids_complex
Alias for complex number type.
Definition Types.h:60
int kids_bint
Alias for integer type.
Definition Types.h:58