diff options
author | Giancarlo Dessi <slack@giand.it> | 2023-09-03 11:28:06 +0900 |
---|---|---|
committer | Willy Sudiarto Raharjo <willysr@slackbuilds.org> | 2023-09-03 09:37:13 +0700 |
commit | 469fecd96428e7a5df4fa313f10f09a60a4baba1 (patch) | |
tree | fb929dafad90d9d6f0fa3a4be76761e610d194e5 /academic/lammps/README.SBo | |
parent | 2ee53a3a4ecf04b1480129a8a58e4706073d5852 (diff) | |
download | slackbuilds-469fecd96428e7a5df4fa313f10f09a60a4baba1.tar.gz slackbuilds-469fecd96428e7a5df4fa313f10f09a60a4baba1.tar.xz |
academic/lammps: Added (molecular simulator).
Signed-off-by: Andrew Clemons <andrew.clemons@gmail.com>
Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
Diffstat (limited to 'academic/lammps/README.SBo')
-rw-r--r-- | academic/lammps/README.SBo | 209 |
1 files changed, 209 insertions, 0 deletions
diff --git a/academic/lammps/README.SBo b/academic/lammps/README.SBo new file mode 100644 index 0000000000..07a8c3d1d2 --- /dev/null +++ b/academic/lammps/README.SBo @@ -0,0 +1,209 @@ +Table of contents + +1. HOW TO DISABLE NOT REQUIRED PACKAGES +2. INTERDEPENDENT PACKAGES +3. EXTERNAL PACKAGES +4. LIST OF PACKAGES AND RELATED REQUIREMENTS +5. PACKAGES NOT AVAILABLE +6. NOTES + +1. HOW TO DISABLE NOT REQUIRED PACKAGES + +Almost all packages that are supported by your system and dependencies +installed (autodetected) are enabled by default. You can disable those +not required in three different ways: +A. edit the code of the slackbuild + for example, a package enabled by default has this condition: + atc="" [ "${ATC:-no}" = "yes" ] && atc="-DPKG_ATC=yes " + if you want to disable it you have to edit as following: + atc="" [ "${ATC:-no}" = "yes" ] && atc="-DPKG_ATC=yes " +B. remove the variables not required from the global $packages at line + 221. The script will not pass the related flags to cmake) + for example, if you want to disable AMOEBA and ATC you have to + remove the strings $amoeba and $atc from packages=$amoeba$asphere... +C. pass to the script the related environment variable as following + AMOEBA=no ATC=no ./lammps.SlackBuild + +2. INTERDEPENDENT PACKAGES + + The enabling of some packages require that also other packages are + enabled. For example, the ATC package require also MANYBODY enabled. + The script or cmake check if this condition is not respected, so all + required additional packages will be enabled automatically + +3. EXTERNAL PACKAGES + + Various packages are build as bundled features that interface LAMMPS + to third part software that it should already installed in your + system. These deps are released with the official Slackware (fftw + for example) or available in Slackbuilds.org. Some packages require + the download of additional sources (listed in lammps.info). Please + make sure to download all required extrafiles if the dependent + package is enable. If you do not do this, the process will fail or + starts the download during the compilation. + +4. LIST OF PACKAGES AND RELATED REQUIREMENTS + + For description of each package see the documentation on line at + https://docs.lammps.org/Packages_list.html + + Dependencies available in the official Slackware are not reported. +----------------------------------------------------------------------- +PACKAGE ; ENV. VARIABLE ; ENABLED ALSO ; EXTERNAL DEPENDENCIES +----------------------------------------------------------------------- +AMOEBA ; AMOEBA ; ; +ASPHERE ; ASPHERE ; ; +ATC ; ATC ; MANYBODY ; +AWPMD ; AWPMD ; ; +BOCS ; BOCS ; ; +BODY ; BODY ; ; +BPM ; BPM ; ; +BROWNIAN ; BROWNIAN ; ; +CG-DNA ; CGDNA ; ASPHERE \ + MOLECULE ; +CG-SPICA ; CGSPICA ; ; +CLASS2 ; CLASS2 ; ; +COLLOID ; COLLOID ; ; +COLVARS ; COLVARS ; ; +COMPRESS ; COMPRESS ; ; +CORESHELL ; CORESHELL ; ; +DIELECTRIC ; DIELECTRIC ; EXTRA-PAIR \ + KSPACE ; +DIFFRACTION ; DIFFRACTION ; ; +DIPOLE ; DIPOLE ; ; +DPD-BASIC ; DPDBASIC ; ; +DPD-MESO ; DPDMESO ; ; +DPD-REACT ; DPDREACT ; ; +DPD-SMOOTH ; DPDSMOOTH ; ; +DRUDE ; DRUDE ; ; +EFF ; EFF ; ; +ELECTRODE ; ELECTRODE ; KSPACE ; OpenBLAS (optional) +EXTRA-COMPUTE ; EXTRACOMPUTE ; ; +EXTRA-DUMP ; EXTRADUMP ; ; +EXTRA-FIX ; EXTRAFIX ; ; +EXTRA-MOLECULE ; EXTRAMOLECULE ; ; +EXTRA-PAIR ; EXTRAPAIR ; ; +FEP ; FEP ; ; +GPU ; GPU ; ; see NOTES +GRANULAR ; GRANULAR ; ; +H5MD ; H5MD ; ; hdf5 (needed) +INTEL ; INTEL ; OPENMP ; see NOTES +INTERLAYER ; INTERLAYER ; ; +KOKKOS ; KOKKOS ; ; see NOTES +KSPACE ; KSPACE ; ; +LATBOLTZ ; LATBOLTZ ; ; see NOTES +LEPTON ; LEPTON ; ; +MACHDYN ; MACHDYN ; ; +MANIFOLD ; MANIFOLD ; ; +MANYBODY ; MANYBODY ; ; +MC ; MC ; ; +MDI ; MDI ; ; download extrasource +MEAM ; MEAM ; ; +MESONT ; MESONT ; MOLECULE ; download data file +MGPT ; MGPT ; ; +MISC ; MISC ; ; +ML-HDNNP ; MLHDNNP ; ; download extrasource +ML-IAP ; MLIAP ; ML-SNAP \ + PYTHON ; python3-numpy (needed) +ML-PACE ; MLPACE ; ; download extrasource +ML-POD ; MLPOD ; ; +ML-RANN ; MLRANN ; ; +ML-SNAP ; MLSNAP ; ; +MOFFF ; MOFFF ; ; +MOLECULE ; MOLECULE ; ; +NETCDF ; NETCDF ; ; netcdf +OPENMP ; OPENMP ; ; openmpi (needed) \ + (mpich not supported) +OPT ; OPT ; ; +ORIENT ; ORIENT ; ; +PERI ; PERI ; ; +PHONON ; PHONON ; KSPACE ; +PLUMED ; PLUMED ; ; PLUMED +POEMS ; POEMS ; ; +PTM ; PTM ; ; +PYTHON ; PYTHON ; ; +QEQ ; QEQ ; ; +QTB ; QTB ; ; +REACTION ; REACTION ; ; +REAXFF ; REAXFF ; ; +REPLICA ; REPLICA ; ; +RIGID ; RIGID ; ; +SCAFACOS ; SCAFACOS ; ; download extrasource \ + openmpi/mpich (needed) +SHOCK ; SHOCK ; ; +SMTBQ ; SMTBQ ; ; +SPH ; SPH ; ; +SPIN ; SPIN ; ; +SRD ; SRD ; ; +TALLY ; TALLY ; ; +UEF ; UEF ; ; +VORONOI ; VORONOI ; ; voro++ +YAFF ; YAFF ; ; +----------------------------------------------------------------------- + +5. PACKAGES NOT AVAILABLE + +Some packages, available in the source, are not supported in this +slackbuild for various reasons. These are: +- ADIOS: requires a library not available in Slackware or SBo. +- KIM: requires the download of extrasource during the compilation + which cannot prevented by a predownload. +- ML-QUIP: the version for non-commercial uses can be downloaded only + during the compilation. A preventive download is allowed + only via git. +- MOLFILE: this package supports the VMD plugin that is must be built + and installed only by sources or packages downloaded after + registration +- MPIIO: this packages is unmantained and it should be enabled with + caution +- MSCG: requires the download of extrasource during the compilation or + the installation in the system. This library is free and open + source but the anonymous download is not permitted. +- QMMM: requires a library that can be built and installed from source + downloaded after registration +- VTK: not available at the moment because the build fails. It is + possible that this is caused by the VTK built in my system: the + issue is a conflict with the support of VTK to openmpi in my + built. I have to make some tests to find the problem. + +6. NOTES + +The GPU package supports OpenCL, CUDA and HIP by setting the +appropriate build configuration. See the documentation on line if you +would extend the functionality of LAMMPS adapted to you hardware. This +slackbuild sets a basic configuration build the package with OpenCL. +LAMMPS can be build linking the system OpenCL or using a static +internal OpenCL loader. To enable the build with the internal OpenCL +you have to download the extrasource from the link indicated in +lammps.info and pass the variable STATIC_OCL=yes to the slackbuild. +The enabling of this package gives different results depending on the +hardware/software configurations, so it is disabled by default because +we have to apply additional settings to prevent the issues (build +failures and segmentation faults). With a basic configuration I enabled +it in a Slackware current with a an old Nvidia GPU and driver and +using the system OpenCL (the bundled OpenCL gives segmentation fault). +In other tests (Slackware 15 with older Nvidia GPU and driver, +Slackware 32-bit in virtual machine) the build not works. You could +passing GPU=yes (and eventually STATIC_OCL=yes) to the slackbuild to +try if it works in your system with a basic configuration, but it is no +guaranteed. + +The INTEL package takes advantage in build and runtime of an advanced +configuration using Intel compilers and hardware it should work also +with other with reduced performances. If detected, the build takes +advantage of the parallelism (MPI and tbb, for example). + +KOKKOS is another package that enhance the functionality of LAMMPS +taking advandage of the parallel computation. Since its build requires +resources and a build with a single core seems very long, I set the +enabling by default only for 64-bit architectures because I do not know +how it can be useful in 32-bit systems. + +The LATBOLTZ package must be enabled only if LAMMPS is built with the +support to MPI (openmpi or mpich). The script allows the enabling of +LATBOLTZ if one of these dependencies are found in the system. + +By default, LAMMPS will be built with Python anyway, even if packages +that require it will not be enabled. If you want disable the support +to Python, you have to launch the slackbuild with + PYTHON=no ./lammps.SlackBuild |