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"
10
12{
13 public:
16
17 void allocate(const int &natom);
18 // void cal_movement(const int &istep, const ModuleBase::matrix &f, const double &etot);
19 void cal_movement(const int &istep,
20 const int &force_step,
21 const ModuleBase::matrix &f,
22 const double &etot,
23 UnitCell &ucell);
24
25 bool get_converged() const
26 {
28 }
29 double get_ediff() const
30 {
32 }
33 double get_largest_grad() const
34 {
36 }
37 double get_trust_radius() const
38 {
40 }
41 double get_update_iter() const
42 {
44 }
45
46 private:
52};
53#endif
Definition bfgs.h:14
Definition ions_move_bfgs.h:8
Definition ions_move_cg.h:7
Definition ions_move_methods.h:12
LBFGS lbfgs
Definition ions_move_methods.h:51
bool get_converged() const
Definition ions_move_methods.h:25
Ions_Move_BFGS bfgs
Definition ions_move_methods.h:47
BFGS bfgs_trad
Definition ions_move_methods.h:50
double get_largest_grad() const
Definition ions_move_methods.h:33
double get_trust_radius() const
Definition ions_move_methods.h:37
Ions_Move_SD sd
Definition ions_move_methods.h:49
double get_update_iter() const
Definition ions_move_methods.h:41
~Ions_Move_Methods()
Definition ions_move_methods.cpp:11
Ions_Move_CG cg
Definition ions_move_methods.h:48
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:29
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:20
Definition matrix.h:18
Definition unitcell.h:15
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