Nek5000/19.0-cpeGNU-21.12 (Nek5000-19.0-cpeGNU-21.12.eb)
This software is archived in the LUMI-EasyBuild-contrib GitHub repository as easybuild/easyconfigs/__archive__/n/Nek5000/Nek5000-19.0-cpeGNU-21.12.eb. The corresponding module would be Nek5000/19.0-cpeGNU-21.12.
easyblock = 'PackedBinary'
name = 'Nek5000'
version = '19.0'
homepage = 'https://nek5000.mcs.anl.gov/'
whatis = [
'Description: Nek5000 is a fast and scalable high-order solver for computational fluid dynamics'
]
description = """
Nek5000 is a spectral element solver for computational fluid dynamics.
It features state-of-the-art, scalable algorithms that are fast and
efficient on platforms ranging from laptops to the world’s fastest
computers. Applications span a wide range of fields, including fluid
flow, thermal convection, combustion and magnetohydrodynamics.
The user community includes hundreds of scientists and engineers in
academia, laboratories and industry.
This module provides the necessary tools to build your Nek5000
binary.
"""
toolchain = {'name': 'cpeGNU', 'version': '21.12'}
toolchainopts = {'pic': True, 'usempi': True}
source_urls = ['https://github.com/Nek5000/Nek5000/archive/']
sources = ['v%(version)s.tar.gz']
#patches = [
# '%(name)s-%(version)s_hypre_blas.patch',
# '%(name)s-%(version)s_sundials.patch',
#]
#checksums = [
# '4d8d4793ce3c926c54e09a5a5968fa959fe0ba46bd2e6b8043e099528ee35a60', # v17.0.tar.gz
# 'b3820a9e141a1c3087aaabbb140ecf11756b552a175619f9e12d913afd850794', # Nek5000-17.0_hypre_blas.patch
# 'af9e3771483d9a1732135ca1fd25f902706bf6e8f9c8552bc4bdf24d9a1c0244', # Nek5000-17.0_sundials.patch
#]
#builddependencies = [('CMake', '3.10.2')]
dependencies = [(
'X11', '%(toolchain_version)s')
]
buildininstalldir = True
install_cmd = (
'mv %(name)s-%(version)s/{*,.[^.]*} . && rmdir %(name)s-%(version)s && cd tools && env CC=cc FC=ftn && '
'./maketools genmap gencon genbox n2to3 reatore2 nekmerge prenek postnek nekamg_setup gmsh2nek cgns2nek'
#'cd ../3rd_party/gslib && env GSLIB_OPT="USREXIT=1 BLAS=2 PREFIX=gslib_ FPREFIX=fgslib_" ./install && '
#'cd ../cvode && ./install'
)
postinstallcmds = [
'sed -i -e "s|^#FC=.*|FC=$FC|" bin/makenek',
'sed -i -e "s|^#CC=.*|CC=$CC|" bin/makenek',
'sed -i -e "s|^#FFLAGS=.*|FFLAGS=<dquote>$FFLAGS<dquote>|" bin/makenek',
'sed -i -e "s|^#CFLAGS=.*|CFLAGS=<dquote>$CFLAGS<dquote>|" bin/makenek',
"""sed -i -e 's|<dquote>|"|g' bin/makenek""",
]
sanity_check_paths = {
'files': ['bin/genmap', 'bin/nekmerge', 'bin/prex', 'bin/genbox', 'bin/n2to3', 'bin/postx',
'bin/reatore2', 'bin/re2torea'],
'dirs': []
}
modextravars = {'NEK_SOURCE_ROOT': '%(installdir)s'}
moduleclass = 'cae'