42 const MPI_Comm &mpi_comm_parent,
43 const bool restart =
false);
50 init(
const std::string &restartPath);
88 const bool computeForces =
true,
89 const bool useSingleAtomSolutionsInitialGuess =
false);
110 value(std::vector<double> &functionValue);
121 std::vector<unsigned int>
abstract base class for dft
Definition dftBase.h:34
bool d_solverRestart
Definition geoOptIon.h:134
void precondition(std::vector< double > &s, const std::vector< double > &gradient)
not implemented
std::vector< double > d_externalForceOnAtom
Definition geoOptIon.h:129
std::vector< std::vector< double > > d_atomLocationsInitial
Definition geoOptIon.h:130
bool isConverged() const
check for convergence.
bool d_isScfRestart
Definition geoOptIon.h:135
int d_totalUpdateCalls
total number of calls to update()
Definition geoOptIon.h:141
void gradient(std::vector< double > &gradient)
Compute function gradient (aka forces).
void solution(std::vector< double > &solution)
not implemented
const MPI_Comm & getMPICommunicator()
get MPI communicator.
std::unique_ptr< nonLinearSolver > d_nonLinearSolverPtr
Definition geoOptIon.h:145
int d_solver
Definition geoOptIon.h:136
const MPI_Comm mpi_communicator
parallel communication objects
Definition geoOptIon.h:148
const unsigned int this_mpi_process
Definition geoOptIon.h:150
bool d_isRestart
Definition geoOptIon.h:133
int run()
calls the atomic force relaxation solver.
dealii::ConditionalOStream pcout
conditional stream object
Definition geoOptIon.h:153
unsigned int getNumberUnknowns() const
Obtain number of unknowns (total number of force components to be relaxed).
std::string d_solverRestartPath
Definition geoOptIon.h:132
std::vector< unsigned int > getUnknownCountFlag() const
not implemented
dftBase * d_dftPtr
pointer to dft class
Definition geoOptIon.h:144
double d_maximumAtomForceToBeRelaxed
maximum force component to be relaxed
Definition geoOptIon.h:138
const unsigned int n_mpi_processes
Definition geoOptIon.h:149
void init(const std::string &restartPath)
initializes the data member d_relaxationFlags.
void update(const std::vector< double > &solution, const bool computeForces=true, const bool useSingleAtomSolutionsInitialGuess=false)
Update atomic positions.
geoOptIon(dftBase *dftPtr, const MPI_Comm &mpi_comm_parent, const bool restart=false)
Constructor.
std::string d_restartPath
Definition geoOptIon.h:131
std::vector< unsigned int > d_relaxationFlags
Definition geoOptIon.h:128
void save()
create checkpoint file for current domain bounding vectors and atomic coordinates.
void value(std::vector< double > &functionValue)
not implemented
nonlinearSolverProblem()
Constructor.
Definition pseudoPotentialToDftfeConverter.cc:34