41 const MPI_Comm &mpi_comm_parent,
42 const bool restart =
false);
49 init(
const std::string &restartPath);
96 const bool computeStress =
true,
97 const bool useSingleAtomSolutionsInitialGuess =
false);
118 value(std::vector<double> &functionValue);
129 std::vector<unsigned int>
abstract base class for dft
Definition dftBase.h:34
bool d_solverRestart
Definition geoOptCell.h:142
void solution(std::vector< double > &solution)
Not implemented.
double d_domainVolumeInitial
Definition geoOptCell.h:147
bool d_isScfRestart
Definition geoOptCell.h:143
std::vector< unsigned int > d_relaxationFlags
Definition geoOptCell.h:137
void value(std::vector< double > &functionValue)
Not implemented.
int run()
calls the cell stress relaxation solver.
dftBase * d_dftPtr
pointer to dft class
Definition geoOptCell.h:152
std::string d_solverRestartPath
Definition geoOptCell.h:140
int d_solver
Definition geoOptCell.h:144
bool d_isRestart
Definition geoOptCell.h:141
bool isConverged() const
check for convergence.
void save()
create checkpoint file for current domain bounding vectors and atomic coordinates.
dealii::Tensor< 2, 3, double > d_strainEpsilon
current strain tensor applied on the domain
Definition geoOptCell.h:149
geoOptCell(dftBase *dftPtr, const MPI_Comm &mpi_comm_parent, const bool restart=false)
Constructor.
dealii::ConditionalOStream pcout
conditional stream object
Definition geoOptCell.h:161
std::vector< unsigned int > getUnknownCountFlag() const
Not implemented.
const MPI_Comm & getMPICommunicator()
get MPI communicator.
std::string d_restartPath
Definition geoOptCell.h:139
int d_totalUpdateCalls
total number of calls to update()
Definition geoOptCell.h:146
unsigned int getNumberUnknowns() const
Obtain number of unknowns (depends on the stress relaxation constraint type).
void precondition(std::vector< double > &s, const std::vector< double > &gradient)
Not implemented.
void writeMesh(std::string meshFileName)
writes the current fem mesh.
std::unique_ptr< nonLinearSolver > d_nonLinearSolverPtr
Definition geoOptCell.h:153
const MPI_Comm mpi_communicator
parallel communication objects
Definition geoOptCell.h:156
void gradient(std::vector< double > &gradient)
Compute function gradient (stress).
void init(const std::string &restartPath)
initializes the data member d_relaxationFlags.
void update(const std::vector< double > &solution, const bool computeStress=true, const bool useSingleAtomSolutionsInitialGuess=false)
Update the strain tensor epsilon.
const unsigned int this_mpi_process
Definition geoOptCell.h:158
const unsigned int n_mpi_processes
Definition geoOptCell.h:157
nonlinearSolverProblem()
Constructor.
Definition pseudoPotentialToDftfeConverter.cc:34