DFT-FE 1.1.0-pre
Density Functional Theory With Finite-Elements
Loading...
Searching...
No Matches
geometryOptimizationClass.h
Go to the documentation of this file.
1// ---------------------------------------------------------------------
2//
3// Copyright (c) 2017-2025 The Regents of the University of Michigan and DFT-FE
4// authors.
5//
6// This file is part of the DFT-FE code.
7//
8// The DFT-FE code is free software; you can use it, redistribute
9// it, and/or modify it under the terms of the GNU Lesser General
10// Public License as published by the Free Software Foundation; either
11// version 2.1 of the License, or (at your option) any later version.
12// The full text of the license can be found in the file LICENSE at
13// the top level of the DFT-FE distribution.
14//
15// ---------------------------------------------------------------------
16//
17// @author Nikhil Kodali
18//
19
20#ifndef geometryOptimizationClass_H_
21#define geometryOptimizationClass_H_
22#include "constants.h"
23#include "headers.h"
24#include "dftBase.h"
25#include "dftfeWrapper.h"
26#include <geoOptCell.h>
27#include <geoOptIon.h>
28
29namespace dftfe
30{
32 {
33 public:
34 /**
35 * @brief geometryOptimizationClass constructor: copy data from dftparameters to the memebrs of molecularDynamicsClass
36 *
37 *
38 * @param[in] dftBase *_dftBasePtr pointer to base class of dftClass
39 * @param[in] mpi_comm_parent parent mpi communicator
40 */
41 geometryOptimizationClass(const std::string parameter_file,
42 const std::string restartFilesPath,
43 const MPI_Comm & mpi_comm_parent,
44 const bool restart,
45 const int verbosity,
46 const bool useDevice);
47
48
49 void
50 init(const std::string parameter_file, const bool useDevice);
51
52 /**
53 * @brief runOpt:
54 *
55 *
56 */
57 void
59
60 private:
61 // pointers to dft class and optimization classes
62 std::unique_ptr<dftfeWrapper> d_dftfeWrapper;
63 std::unique_ptr<geoOptIon> d_geoOptIonPtr;
64 std::unique_ptr<geoOptCell> d_geoOptCellPtr;
66
67 // restart parameters
68 const bool d_isRestart;
69 const std::string d_restartFilesPath;
70 const int d_verbosity;
71 // status parameters
73 // parallel communication objects
74 const MPI_Comm d_mpiCommParent;
75
76 // conditional stream object
77 dealii::ConditionalOStream pcout;
78 };
79} // namespace dftfe
80#endif
abstract base class for dft
Definition dftBase.h:34
geometryOptimizationClass(const std::string parameter_file, const std::string restartFilesPath, const MPI_Comm &mpi_comm_parent, const bool restart, const int verbosity, const bool useDevice)
geometryOptimizationClass constructor: copy data from dftparameters to the memebrs of molecularDynami...
const MPI_Comm d_mpiCommParent
Definition geometryOptimizationClass.h:74
std::unique_ptr< dftfeWrapper > d_dftfeWrapper
Definition geometryOptimizationClass.h:62
int d_cycle
Definition geometryOptimizationClass.h:72
const bool d_isRestart
Definition geometryOptimizationClass.h:68
const int d_verbosity
Definition geometryOptimizationClass.h:70
void init(const std::string parameter_file, const bool useDevice)
const std::string d_restartFilesPath
Definition geometryOptimizationClass.h:69
std::unique_ptr< geoOptCell > d_geoOptCellPtr
Definition geometryOptimizationClass.h:64
int d_status
Definition geometryOptimizationClass.h:72
dealii::ConditionalOStream pcout
Definition geometryOptimizationClass.h:77
int d_optMode
Definition geometryOptimizationClass.h:72
std::unique_ptr< geoOptIon > d_geoOptIonPtr
Definition geometryOptimizationClass.h:63
dftBase * d_dftPtr
Definition geometryOptimizationClass.h:65
Definition pseudoPotentialToDftfeConverter.cc:34