Giter Site home page Giter Site logo

dftfedevelopers / dftfe Goto Github PK

View Code? Open in Web Editor NEW
118.0 14.0 34.0 90.65 MB

DFT-FE: Real-space DFT calculations using Finite Elements

Home Page: https://sites.google.com/umich.edu/dftfe

License: Other

CMake 0.54% Shell 1.60% C++ 97.49% C 0.13% Python 0.24%
density-functional-theory finite-elements material-science cplusplus high-performance-computing cuda hip

dftfe's People

Contributors

bikashkanungo avatar bssw-codetest avatar davydden avatar dsambit avatar frobnitzem avatar gourabp7 avatar iancclin avatar kartickr avatar knikhil1995 avatar krisghos avatar manassharma07 avatar nandis99 avatar paavaipari avatar phanimotamarri avatar rudraa avatar rudraauw avatar vikramgavini avatar vishal-subbu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

dftfe's Issues

Trying to build dft-fe with PetSC on CPU's (intel/2023.1 + gcc/9.2.0)

Attempting to build separate real and complex versions - and everything is working up to the final linking. Both the real and complex versions fail with similar linking errors.

I am using

dftfe - release1.0
dealiiCustomizedCUDARelease
petsc/3.17.5
intel/2023.1 (with gcc/9.2.0)
mpiicc and mpiicpc compilers

I noticed (after getting this far) in the user guide it mentions that intel compilers are not supported - and I'm wondering if this is the issue? Or is there something about using the dealiiCustomizedCUDARelease branch but building without cuda support?

$ make VERBOSE=1
/cm/shared/software/cmake/3.20.0/bin/cmake -S/cm/shared/software/dft-fe/1.0.2/b1/src/dftfe -B/cm/shared/software/dft-fe/1.0.2/b1/src/dftfe/build/release/real --check-build-system CMakeFiles/Makefile.cmake 0
/cm/shared/software/cmake/3.20.0/bin/cmake -E cmake_progress_start /cm/shared/software/dft-fe/1.0.2/b1/src/dftfe/build/release/real/CMakeFiles /cm/shared/software/dft-fe/1.0.2/b1/src/dftfe/build/release/real//CMakeFiles/progress.marks
make -f CMakeFiles/Makefile2 all
make[1]: Entering directory /cm/shared/software/dft-fe/1.0.2/b1/src/dftfe/build/release/real' make -f CMakeFiles/dftfem.dir/build.make CMakeFiles/dftfem.dir/depend make[2]: Entering directory /cm/shared/software/dft-fe/1.0.2/b1/src/dftfe/build/release/real'
cd /cm/shared/software/dft-fe/1.0.2/b1/src/dftfe/build/release/real && /cm/shared/software/cmake/3.20.0/bin/cmake -E cmake_depends "Unix Makefiles" /cm/shared/software/dft-fe/1.0.2/b1/src/dftfe /cm/shared/software/dft-fe/1.0.2/b1/src/dftfe /cm/shared/software/dft-fe/1.0.2/b1/src/dftfe/build/release/real /cm/shared/software/dft-fe/1.0.2/b1/src/dftfe/build/release/real /cm/shared/software/dft-fe/1.0.2/b1/src/dftfe/build/release/real/CMakeFiles/
dftfem.dir/DependInfo.cmake --color=
make[2]: Leaving directory /cm/shared/software/dft-fe/1.0.2/b1/src/dftfe/build/release/real' make -f CMakeFiles/dftfem.dir/build.make CMakeFiles/dftfem.dir/build make[2]: Entering directory /cm/shared/software/dft-fe/1.0.2/b1/src/dftfe/build/release/real'
make[2]: Nothing to be done for CMakeFiles/dftfem.dir/build'. make[2]: Leaving directory /cm/shared/software/dft-fe/1.0.2/b1/src/dftfe/build/release/real'
[ 95%] Built target dftfem
make -f CMakeFiles/dftfe.dir/build.make CMakeFiles/dftfe.dir/depend
make[2]: Entering directory /cm/shared/software/dft-fe/1.0.2/b1/src/dftfe/build/release/real' cd /cm/shared/software/dft-fe/1.0.2/b1/src/dftfe/build/release/real && /cm/shared/software/cmake/3.20.0/bin/cmake -E cmake_depends "Unix Makefiles" /cm/shared/software/dft-fe/1.0.2/b1/src/dftfe /cm/shared/software/dft-fe/1.0.2/b1/src/dftfe /cm/shared/software/dft-fe/1.0.2/b1/src/dftfe/build/release/real /cm/shared/software/dft-fe/1.0.2/b1/src/dftfe/build/release/real /cm/shared/software/dft-fe/1.0.2/b1/src/dftfe/build/release/real/CMakeFiles/ dftfe.dir/DependInfo.cmake --color= make[2]: Leaving directory /cm/shared/software/dft-fe/1.0.2/b1/src/dftfe/build/release/real'
make -f CMakeFiles/dftfe.dir/build.make CMakeFiles/dftfe.dir/build
make[2]: Entering directory /cm/shared/software/dft-fe/1.0.2/b1/src/dftfe/build/release/real' [ 97%] Linking CXX executable dftfe /cm/shared/software/cmake/3.20.0/bin/cmake -E cmake_link_script CMakeFiles/dftfe.dir/link.txt --verbose=1 /cm/shared/software/intel/2023.1/mpi/2021.9.0/bin/mpiicpc -O2 -fPIC -fopenmp -shared-intel -qopenmp -rdynamic CMakeFiles/dftfe.dir/src/main.cc.o -o dftfe -Wl,-rpath,/cm/shared/software/dft-fe/1.0.2/b1/src/dftfe/build/release/real:/cm/shared/software/dealii/20230907/b3/lib:/cm/shared/software/slepc/3.17.2/b1/src/slepc-v3.17.2/arch-ci-linux-intel-mkl-single/lib:/cm/shared/software/petsc/3.17.5/b1/src/petsc-3.17.5/arch-ci-linux-intel-mkl-sing le/lib:/cm/shared/software/lle/petsc-hash-pkgs/b3d0e4/lib: libdftfem.so /cm/shared/software/dealii/20230907/b3/lib/libdeal_II.so.9.3.0-pre /usr/lib64/libz.so -lrt /cm/shared/software/p4est/2.2/b1/lib/libp4est.so /cm/shared/software/p4est/2.2/b1/lib/libsc.so -qmkl-ilp64=parallel -lmkl_scalapack_ilp64 -lmkl_blacs_intelmpi_ilp64 -L/cm/shared/software/intel/2023.1/mkl/2023.1.0/lib/intel64 -Wl,--no-as-needed -lmkl_intel_lp64 -lmkl_gnu_thread -lmk l_core -lgomp -lpthread -lm -ldl /cm/shared/software/slepc/3.17.2/b1/src/slepc-v3.17.2/arch-ci-linux-intel-mkl-single/lib/libslepc.so /cm/shared/software/petsc/3.17.5/b1/src/petsc-3.17.5/arch-ci-linux-intel-mkl-single/lib/libpetsc.so /cm/shared/software/intel/2023.1/mkl/2023.1.0/lib/intel64/libmkl_scalapack_lp64.so /cm/shared/software/intel/2023.1/mkl/2023.1.0/lib/intel64/libmkl_blacs_intelmpi_lp64.so /cm/shared/software/intel/2023.1/mkl/2023 .1.0/lib/intel64/libmkl_intel_lp64.so /cm/shared/software/intel/2023.1/mkl/2023.1.0/lib/intel64/libmkl_core.so /cm/shared/software/intel/2023.1/mkl/2023.1.0/lib/intel64/libmkl_sequential.so /cm/shared/software/lle/petsc-hash-pkgs/b3d0e4/lib/libparmetis.so /cm/shared/software/lle/petsc-hash-pkgs/b3d0e4/lib/libmetis.so /usr/lib64/libX11.so -lifport /cm/shared/software/intel/2023.1/compiler/2023.1.0/linux/compiler/lib/intel64_lin/libifcoremt_pic .a /cm/shared/software/intel/2023.1/compiler/2023.1.0/linux/compiler/lib/intel64_lin/libimf.so /cm/shared/software/intel/2023.1/compiler/2023.1.0/linux/compiler/lib/intel64_lin/libsvml.so -lm /cm/shared/software/intel/2023.1/compiler/2023.1.0/linux/compiler/lib/intel64_lin/libipgo.a /cm/shared/software/intel/2023.1/compiler/2023.1.0/linux/compiler/lib/intel64_lin/libirc.so /cm/shared/software/intel/2023.1/compiler/2023.1.0/linux/compiler/lib/ intel64_lin/libirc_s.a -lquadmath -ldl -lAlglib /cm/shared/software/libxc/6.2.2/b1/lib/libxc.a /usr/lib64/libxml2.so /cm/shared/software/spglib/2.1.0/b1/lib64/libsymspg.so /cm/shared/software/elpa/2021.05.002/b1/lib/libelpa_openmp.so icpc: remark #10441: The Intel(R) C++ Compiler Classic (ICC) is deprecated and will be removed from product release in the second half of 2023. The Intel(R) oneAPI DPC++/C++ Compiler (ICX) is the recommended compiler moving forward. Please transition to use this compiler. Use '-diag-disable=10441' to disable this message. libdftfem.so: undefined reference to void dealii::LinearAlgebra::distributed::Vector<std::complex, dealii::MemorySpace::Host>::reinit<std::complex >(dealii::LinearAlgebra::distributed::Vector<std::complex, dealii::MemorySpace::Host> const&, bool)'
libdftfem.so: undefined reference to dealii::LinearAlgebra::distributed::Vector<std::complex<double>, dealii::MemorySpace::Host>::compress_finish(dealii::VectorOperation::values)' libdftfem.so: undefined reference to dealii::LinearAlgebra::distributed::Vector<std::complex, dealii::MemorySpace::Host>::Vector()'
libdftfem.so: undefined reference to dealii::LinearAlgebra::distributed::Vector<std::complex<double>, dealii::MemorySpace::Host>::zero_out_ghosts() const' libdftfem.so: undefined reference to void dealii::LinearAlgebra::distributed::Vector<std::complex, dealii::MemorySpace::Host>::reinit<std::complex >(dealii::LinearAlgebra::distributed::Vector<std::complex, dealii::MemorySpace::Host> const&, bool)'
libdftfem.so: undefined reference to dealii::LinearAlgebra::distributed::Vector<std::complex<float>, dealii::MemorySpace::Host>::swap(dealii::LinearAlgebra::distributed::Vector<std::complex<float>, dealii::MemorySpace::Host>&)' libdftfem.so: undefined reference to dealii::LinearAlgebra::distributed::Vector<std::complex, dealii::MemorySpace::Host>::Vector()'
libdftfem.so: undefined reference to dealii::LinearAlgebra::distributed::Vector<std::complex<float>, dealii::MemorySpace::Host>::reinit(dealii::IndexSet const&, dealii::IndexSet const&, int const&)' libdftfem.so: undefined reference to dealii::LinearAlgebra::distributed::Vector<std::complex, dealii::MemorySpace::Host>::zero_out_ghosts() const'
libdftfem.so: undefined reference to dealii::LinearAlgebra::distributed::Vector<std::complex<double>, dealii::MemorySpace::Host>::update_ghost_values() const' libdftfem.so: undefined reference to dealii::LinearAlgebra::distributed::Vector<std::complex, dealii::MemorySpace::Host>::compress_start(unsigned int, dealii::VectorOperation::values)'
libdftfem.so: undefined reference to dealii::LinearAlgebra::distributed::Vector<std::complex<float>, dealii::MemorySpace::Host>::update_ghost_values_finish() const' libdftfem.so: undefined reference to dealii::LinearAlgebra::distributed::Vector<std::complex, dealii::MemorySpace::Host>::update_ghost_values() const'
libdftfem.so: undefined reference to dealii::LinearAlgebra::distributed::Vector<std::complex<double>, dealii::MemorySpace::Host>::update_ghost_values_start(unsigned int) const' libdftfem.so: undefined reference to dealii::LinearAlgebra::distributed::Vector<std::complex, dealii::MemorySpace::Host>::swap(dealii::LinearAlgebra::distributed::Vector<std::complex, dealii::MemorySpace::Host>&)'
libdftfem.so: undefined reference to dealii::LinearAlgebra::distributed::Vector<std::complex<double>, dealii::MemorySpace::Host>::update_ghost_values_finish() const' libdftfem.so: undefined reference to dealii::LinearAlgebra::distributed::Vector<std::complex, dealii::MemorySpace::Host>::reinit(dealii::IndexSet const&, dealii::IndexSet const&, int const&)'
libdftfem.so: undefined reference to dealii::LinearAlgebra::distributed::Vector<std::complex<float>, dealii::MemorySpace::Host>::update_ghost_values_start(unsigned int) const' libdftfem.so: undefined reference to dealii::LinearAlgebra::distributed::Vector<std::complex, dealii::MemorySpace::Host>::compress_finish(dealii::VectorOperation::values)'
libdftfem.so: undefined reference to dealii::LinearAlgebra::distributed::Vector<std::complex<double>, dealii::MemorySpace::Host>::compress_start(unsigned int, dealii::VectorOperation::values)' make[2]: *** [dftfe] Error 1 make[2]: Leaving directory /cm/shared/software/dft-fe/1.0.2/b1/src/dftfe/build/release/real'
make[1]: *** [CMakeFiles/dftfe.dir/all] Error 2
make[1]: Leaving directory `/cm/shared/software/dft-fe/1.0.2/b1/src/dftfe/build/release/real'
make: *** [all] Error 2

Build issue involving conversion to std::function<...>

I was trying to build DFT-FE according to the build manula. However, I get many errors related to std::function<...>

In file included from /home/davidkleiven/Documents/dftfe/src/triangulation/triangulationManager/triangulationManager.cc:32:
/home/davidkleiven/Documents/dftfe/src/triangulation/triangulationManager/restartUtils.cc: In member function ‘void dftfe::triangulationManager::saveTriangulationsCellQuadData(const std::vector<const std::map<dealii::CellId, std::vector<double> >*>&, const MPI_Comm&, const MPI_Comm&)’:
/home/davidkleiven/Documents/dftfe/src/triangulation/triangulationManager/restartUtils.cc:270:90: error: cannot convert ‘const unsigned int’ to ‘const std::function<std::vector<char>(const dealii::TriaIterator<dealii::CellAccessor<3, 3> >&, dealii::Triangulation<3, 3>::CellStatus)>&’
  270 |          const unsigned int offset = d_parallelTriangulationUnmoved.register_data_attach(dataSizeInBytes,
      |                                                                                          ^~~~~~~~~~~~~~~
      |                                                                                          |
      |                                                                                          const unsigned int

there are many similar errors where std::function is involved. Any ideas on what causes this error?

Here is the full output from running setup.sh
setup_output.txt

A GUI for DFT-FE

I have recently installed DFT-FE and started running a few test calculations. I couldn't find a way to easily convert my existing input files or CIFs to the DFT-FE format.

Therefore, to streamline the process of setting up calculations and facilitate the creation of the input files, I have created a web app (https://dft-fe.streamlit.app/) that can serve as a GUI for DFT-FE.

It creates input files such as coordinates.inp, domainVectors.inp, pseudo.inp, and parameters.prm. It also automatically fetches the SG15 pseudopotentials.

Currently, it allows one to create input files for a given material in the materialsproject.org database, or a molecule in PubChem database. It also allows to create input files form Quantum ESPRESSO input, CIFs, POSCARs, extended XYZs, etc.

Hope the developers and users of DFT-FE will find it useful and can test it out. Essentially, I created the web app by modifying an existing app (https://ripertools.turbomole.org/), that I created for TURBOMOLE (https://www.turbomole.org/).

question about dealii::DoFTools::make_hanging_node_constraints_from_serial

HI All,

I'm helping some users with getting going with DFT FE version 1.0.2. I'm noticing an issue with DEALII's DoFTtools, in particular DFT FE is using a make_hanging_node_constraints_from_serial method which is not defined in any of the branches of DEALII that are on the public github repo - [email protected]:dealii/dealii.git - that i've checked so far.

Does one need to use a special version of DEALII to build DFT FE 1.0.2?

Thanks,

Howard

Print out citation information from libxc

Hi,

DFT-FE appears to use libxc exclusively to evaluate density functionals, but doesn't seem to be printing out any information about it. I would kindly ask to include the following information in the DFT-FE output:

  • the version of libxc used (produced by xc_version_string())
  • the citation for the used version of libxc (journal reference produced by xc_reference() and doi by xc_reference_doi())

In addition to Libxc, users should also cite the employed density functionals. This information is conveniently stored inside Libxc in the func->info->refs field, which should be likewise printed out by DFT-FE.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.