Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/anuvyklack/fem-tddft
time-dependent density functional theory code bades on finite-element method
https://github.com/anuvyklack/fem-tddft
Last synced: 9 days ago
JSON representation
time-dependent density functional theory code bades on finite-element method
- Host: GitHub
- URL: https://github.com/anuvyklack/fem-tddft
- Owner: anuvyklack
- Created: 2022-10-09T20:32:36.000Z (about 2 years ago)
- Default Branch: develop
- Last Pushed: 2022-10-09T22:38:42.000Z (about 2 years ago)
- Last Synced: 2024-10-29T21:13:24.371Z (about 2 months ago)
- Language: C++
- Homepage:
- Size: 98.6 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# fem-tddft
:construction: Work In Progress
**fem-tddft** is a C++ code for materials modeling from first principles using
Kohn-Sham time-dependent density functional theory base on finite-element method
using DEAL II library.## Build
### Build PETSc
```bash
./configure -PETSC_ARCH=arch-mpi-shared-debug \
--with-openmpi \
--with-openblas=1 \
--with-shared=1 \
--with-debugging=1
```### Build SLEPc
Switch to `release` branch
```bash
git checkout release
```
```bash
PETSC_DIR=~/software/petsc PETSC_ARCH='arch-mpi-shared-opt' \
./configure --prefix=/opt/slepc/mpi-shared-opt --with-clean --with-precision=single
```### Build DEAL II
```bash
mkdir build && cd build
``````bash
cmake .. \
-D DEAL_II_WITH_MPI=ON \
-D DEAL_II_WITH_BOOST=ON -D BOOST_DIR=/usr/include/boost \
-D DEAL_II_WITH_PETSC=ON -D PETSC_DIR=~/software/petsc -D PETSC_ARCH=arch-mpi-shared-opt \
-D DEAL_II_WITH_SLEPC=ON -D SLEPC_DIR=~/software/slepc \
``````bash
make -j7
```### Build deal2lkit
When setting up tests, `DEAL_II_DIR` is looked up in the `ENV`, and not in the config!
Tests also required `numdiff` installed.```bash
cmake .. \
-D DEAL_II_DIR=~/software/dealii-9.2.0/build \
-D D2K_COMPONENT_DOCUMENTATION=OFF \
-D D2K_COMPONENT_EXAMPLES=ON \
-D D2K_ENABLE_TESTING=ON
```