Elk/10.3.12-cpeGNU-24.03 (Elk-10.3.12-cpeGNU-24.03.eb)
Install with the EasyBuild-user module:
To access module help after installation and get reminded for which stacks and partitions the module is installed, usemodule spider Elk/10.3.12-cpeGNU-24.03
.
EasyConfig:
# contributed by Johan Hellsvik (PDC) and Peter Larsson (LUMI)
easyblock = 'MakeCp'
name = 'Elk'
version = '10.3.12'
homepage = 'https://elk.sourceforge.io/'
whatis = [
'The Elk all-electron full-potential linearised augmented-plane wave (LAPW) code with many advanced features.'
]
description = """
The Elk all-electron full-potential linearised augmented-plane wave (LAPW) code with many advanced features.
"""
toolchain = {'name': 'cpeGNU', 'version': '24.03'}
toolchainopts = {'openmp': True, 'usempi': True}
maxparallel=1
source_urls = ['https://sourceforge.net/projects/%(namelower)s/files/']
sources = [SOURCELOWER_TGZ]
checksums = ['c230e2c128733a0f92b8001001181fb9cd44913a8c86e05092c5f177db3664ca'] #elk-10.3.12.tgz
# Creating the make.inc file
prebuildopts = 'echo "MAKE = make" > make.inc && '
prebuildopts += 'echo "AR = ar" >> make.inc && '
prebuildopts += 'echo "SRC_MKL = mkl_stub.f90" >> make.inc && '
prebuildopts += 'echo "SRC_OBLAS = oblas_stub.f90" >> make.inc && '
prebuildopts += 'echo "SRC_BLIS = blis_stub.f90" >> make.inc && '
prebuildopts += 'echo "SRC_FFT = zfftifc_fftw.f90 cfftifc_fftw.f90" >> make.inc && '
prebuildopts += 'echo "LIB_LIBXC = libxcf03.a libxc.a" >> make.inc && '
prebuildopts += 'echo "SRC_LIBXC = libxcf03.f90 libxcifc.f90" >> make.inc && '
prebuildopts += 'echo "LIB_W90 = libwannier.a" >> make.inc && '
prebuildopts += 'echo "F90 = ftn" >> make.inc && '
prebuildopts += 'echo "F90_OPTS = -Ofast -march=native -mtune=native -fomit-frame-pointer -fopenmp -ffpe-summary=none -fallow-argument-mismatch" >> make.inc && '
# Copy the Libxc and Wannier90 libraries
prebuildopts += 'cp $EBROOTLIBXC/lib/libxc.a src/ && '
prebuildopts += 'cp $EBROOTLIBXC/lib/libxcf03.a src/ && '
prebuildopts += 'cp $EBROOTWANNIER90//lib/libwannier.a src/ && '
dependencies = [
('cray-libsci', EXTERNAL_MODULE),
('cray-fftw', EXTERNAL_MODULE),
('libxc', '7.0.0'),
('Wannier90', '3.1.0'),
]
files_to_copy = [
(['./make.inc'], '.'),
(['./src/elk'], './bin/'),
(['./src/eos/eos'], './bin/'),
(['./src/spacegroup/spacegroup'], './bin/'),
(['./species'], '.'),
(['./examples'], '.'),
(['./tests'], '.'),
(['./tests-libxc'], '.'),
(['utilities/elk-bands/elk-bands'], './bin/'),
(['utilities/elk-optics/elk-optics.py'], './bin/'),
(['utilities/wien2k-elk/se.pl'], './bin/'),
]
sanity_check_paths = {
'files': ['bin/elk','bin/eos','bin/spacegroup'],
'dirs': ['bin','species', 'examples', 'tests'],
}
moduleclass = 'phys'