Giter Site home page Giter Site logo

nholmber / cp2k-cdft-dev Goto Github PK

View Code? Open in Web Editor NEW
2.0 1.0 0.0 141.05 MB

CDFT Development Branch for CP2K

License: GNU General Public License v2.0

Fortran 97.22% Cuda 0.14% C++ 0.57% C 0.25% Shell 0.59% Python 0.85% Makefile 0.04% Assembly 0.08% HTML 0.01% PHP 0.04% SourcePawn 0.02% Gnuplot 0.01% Perl 0.05% Emacs Lisp 0.02% XSLT 0.06% JavaScript 0.05% Dockerfile 0.01%
cp2k fortran simulation computational-chemistry computational-physics electron-transfer charge-transfer

cp2k-cdft-dev's Introduction

CP2K CDFT development branch

This repository contains the constrained density functional theory (CDFT) development branch for CP2K. CP2K is an open source quantum chemistry package to perform atomistic simulations of solid state, liquid, molecular, periodic, material, crystal, and biological systems.

An online tutorial documenting the features and usage of the CDFT/CP2K implementation is available here. A brief introduction to the relevant theory behind the method is also included in the tutorial. If you find the CP2K/CDFT method useful in your work and decide to publish your results, please cite the original implementation papers:

Holmberg, Nico; Laasonen, Kari, Efficient Constrained Density Functional Theory Implementation for Simulation of Condensed Phase Electron Transfer Reactions, J. Chem. Theory Comput., 13 (2016), pp 587-601, doi: 10.1021/acs.jctc.6b01085.

Holmberg, Nico; Laasonen, Kari, Diabatic model for electrochemical hydrogen evolution based on constrained DFT configuration interaction, J. Chem. Phys., 149 (2018), 104702, doi: 10.1063/1.5038959.

Available branches

  1. main: latest stable build

    • synced clone of the official cp2k development branch -- the master branch.
  2. staging: branch for submitting new patches to official repos

    • merges new, complete features from development
    • hotfixes to potential bugs in main
  3. development: unstable development branch

    • might not compile, incomplete implementation of new features, code not cleaned
    • planned features not yet under active development:
      • refactoring of Becke constraint type under CDFT control type

Installation

  1. Latest stable version (from official repos)

    • Download the development version
      • git clone -b master --single-branch https://github.com/cp2k/cp2k dir_name
    • Follow the installation instructions in the file INSTALL, also available at the official CP2K project page
  2. Other versions

    • Clone the branch in a directory of your choice git clone -b branch_name --single-branch https://github.com/nholmber/cp2k-cdft-dev dir_name
    • Continue as above

Running a CDFT calculation

A tutorial is available at the official CP2K wiki-pages. All of the CDFT features implemented into CP2K are also comprehensively covered by the regtests regtest-cdft-*, which can be found in the folder cp2k/tests/QS/. Note that these tests are merely illustrations of what can be done with the method -- they won't produce converged results because they have been designed to run quickly! A HTML keyword manual is available online. A local copy of the keyword manual can be generated by following these instructions.

Bugs, ideas and contributing

The CDFT features implemented in the main branch have been tested, but some unforseen bugs might still be present. If you encounter problems please open a new issue in the issue tracker and include a minimal input file for reproducing the bug. Please report only issues related to the CDFT module. You may also report bugs using the official CP2K project GitHub issue tracker or the Google group mailing list, where you can report any bugs not just those related to the CDFT module. New development ideas and contributions are always welcomed!

cp2k-cdft-dev's People

Contributors

agloess avatar alazzaro avatar ceriottm avatar cjmundy avatar dcm-uni-paderborn avatar dev-zero avatar dgolze avatar fstein93 avatar hfp avatar juerghutter avatar linalinalinalinalina avatar marci73 avatar mkrack avatar mtaillefumier avatar nholmber avatar obfiscator avatar oschuett avatar pappnasenpappmeister avatar rubenstaub avatar rybkinjr avatar sandermatt87 avatar schulkov avatar seyedb avatar tlaino avatar uborstnik avatar vondele avatar

Stargazers

 avatar  avatar

Watchers

 avatar

cp2k-cdft-dev's Issues

Support for Hirshfeld constraints

CDFT simulations now support Hirshfeld constraints in addition to Becke constraints. However, forces still need to be implemented to enable molecular dynamics simulations.

Update tutorial

The input files for the CDFT tutorial on the CP2K project page are out of date now that the Becke constraints are fully merged into the CDFT control structure.

  • Create repo for easier maintenance of input files between different CP2K versions.
  • Update tutorial website with input files that are compatible with the current development branch.
  • Add example calculation for CDFT-CI.

Langrangian multipler decreasing in outer loop as opposed to maximising

I've been using the CDFT module and I've noted for Cu that the "Strength" of the constraint initially increases and then starts to decrease and become negative, resulting in incorrect charge densities. This has only happened with my transition metals and I wondering whether this could a bug of some sort? I have input and output files here.

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.