Skip to content

[CP2K] [package list]

CP2K/9.1-cpeGNU-21.12 (CP2K-9.1-cpeGNU-21.12.eb)

This software is archived in the LUMI-EasyBuild-contrib GitHub repository as easybuild/easyconfigs/__archive__/c/CP2K/CP2K-9.1-cpeGNU-21.12.eb. The corresponding module would be CP2K/9.1-cpeGNU-21.12.

# contributed by Luca Marsella (CSCS)
# modified for LUMI by Peter Larsson
easyblock = 'MakeCp'

name = 'CP2K'
version = '9.1'

homepage = 'http://www.cp2k.org/'

whatis = [
    'Description: CP2K is a program to perform atomistic and molecular simulations of solid state, liquid, molecular and biological systems.'
]

description = """
CP2K is a freely available (GPL) program, written in Fortran 95, to
perform atomistic and molecular simulations of solid state, liquid,
molecular and biological systems. It provides a general framework for
different methods such as e.g. density functional theory (DFT) using a
mixed Gaussian and plane waves approach (GPW), and classical pair and
many-body potentials.
"""

toolchain = {'name': 'cpeGNU', 'version': '21.12'}
toolchainopts = {'openmp': True, 'usempi': True}

source_urls = ['https://github.com/%(namelower)s/%(namelower)s/releases/download/v%(version)s.0']
sources = [SOURCELOWER_TAR_BZ2]
patches = [
    ('%(name)s-%(version_major_minor)s-%(toolchain_name)s.psmp', '%(builddir)s/%(namelower)s-%(version)s/arch')
]

builddependencies = [('buildtools', '%(toolchain_version)s', '', True)]

dependencies = [
    ('ELPA', '2021.11.001'),
    ('Libint-CP2K', '2.6.0'),
    ('libvori', '210412'),
    ('libxc', '5.1.7'),
    ('libxsmm', '1.17'),
    ('PLUMED', '2.7.2'),
    ('spglib', '1.16.3')
]

# build type
buildopts = "ARCH=%(name)s-%(version_major_minor)s-%(toolchain_name)s VERSION=psmp"

files_to_copy = [
    (['./arch/%(name)s-%(version_major_minor)s-%(toolchain_name)s.psmp'], 'arch'),
    (['./exe/%(name)s-%(version_major_minor)s-%(toolchain_name)s/*'], 'bin'),
    (['./data'], '.'),
    (['./tests'], '.'),
    (['./tools'], '.')
]

sanity_check_paths = {
    'files': ['arch/%(name)s-%(version_major_minor)s-%(toolchain_name)s.psmp', 'bin/%(namelower)s.psmp'],
    'dirs': ['data', 'tests'],
}

# set custom CP2K_DATA_DIR
modextravars = {'CP2K_DATA_DIR': '%(installdir)s/data'}

moduleclass = 'chem'

[CP2K] [package list]