ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
ions_move_methods.h
Go to the documentation of this file.
1#ifndef IONS_MOVE_METHODS_H
2#define IONS_MOVE_METHODS_H
3
4#include "ions_move_basic.h"
5#include "ions_move_bfgs.h"
6#include "ions_move_cg.h"
7#include "ions_move_sd.h"
8#include "bfgs.h"
9#include "lbfgs.h"
12
14{
15 public:
18
19 void allocate(const int &natom);
20 // void cal_movement(const int &istep, const ModuleBase::matrix &f, const double &etot);
21 void cal_movement(const int &istep,
22 const int &force_step,
23 const ModuleBase::matrix &f,
24 const double &etot,
25 UnitCell &ucell);
26
27 bool get_converged() const
28 {
30 }
31 double get_ediff() const
32 {
34 }
35 double get_largest_grad() const
36 {
38 }
39 double get_trust_radius() const
40 {
42 }
43 double get_update_iter() const
44 {
46 }
47
48 private:
54};
55#endif
Definition bfgs.h:14
Definition ions_move_bfgs.h:8
Definition ions_move_cg.h:7
Definition ions_move_methods.h:14
LBFGS lbfgs
Definition ions_move_methods.h:53
bool get_converged() const
Definition ions_move_methods.h:27
Ions_Move_BFGS bfgs
Definition ions_move_methods.h:49
BFGS bfgs_trad
Definition ions_move_methods.h:52
double get_largest_grad() const
Definition ions_move_methods.h:35
double get_trust_radius() const
Definition ions_move_methods.h:39
Ions_Move_SD sd
Definition ions_move_methods.h:51
double get_update_iter() const
Definition ions_move_methods.h:43
~Ions_Move_Methods()
Definition ions_move_methods.cpp:11
Ions_Move_CG cg
Definition ions_move_methods.h:50
void cal_movement(const int &istep, const int &force_step, const ModuleBase::matrix &f, const double &etot, UnitCell &ucell)
Definition ions_move_methods.cpp:52
Ions_Move_Methods()
Definition ions_move_methods.cpp:8
double get_ediff() const
Definition ions_move_methods.h:31
void allocate(const int &natom)
Definition ions_move_methods.cpp:15
Definition ions_move_sd.h:7
Implements L-BFGS optimization algorithm for structural relaxation.
Definition lbfgs.h:21
Definition matrix.h:19
Definition unitcell.h:16
double trust_radius
Definition ions_move_basic.cpp:18
bool converged
Definition ions_move_basic.cpp:9
int update_iter
Definition ions_move_basic.cpp:11
double ediff
Definition ions_move_basic.cpp:14
double largest_grad
Definition ions_move_basic.cpp:10