forked from msolids/musen
-
Notifications
You must be signed in to change notification settings - Fork 3
MUSEN: An open-source framework for GPU-accelerated DEM simulations
License
ElsevierSoftwareX/SOFTX-D-20-00025
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
# MUSEN MUSEN is an open-source DEM simulation framework. For more information, please check the https://msolids.net/documentation. For new versions and updates, please check https://github.com/msolids/musen/releases or https://msolids.net/musen/download. # Requirements MUSEN should install and work on all latest versions of Windows or Linux (Ubuntu or Red Head). Requires Visual C++ Redistributable for Visual Studio 2017 to run. # Compilation for Windows A fully functional version can be compiled and built with Microsoft Visual Studio 2017. Requirements on Windows: - Microsoft Visual Studio 2017 - Qt 5.12.3 msvc2017_64 - Qt Visual Studio Tools for Visual Studio 2017 - Git - CUDA 10 - cmake How to build for Windows using Microsoft Visual Studio 2017: 1) Download and install cmake on your computer https://cmake.org/download/ 2) Execute two files .\MUSEN\ExternalLibraries\RunZLibCompile.bat .\MUSEN\ExternalLibraries\RunProtobufCompile.bat 3) Download and install CUDA 10 4) Download and install Qt 5.12.3 5) Open MUSEN.sln file with Visual Studio and start compilation # Compilation for Linux Requirements on Linux: - cmake 3.11.2 - gcc-7, g++-7 Build on Linux (Ubuntu version 18.04 or higher): 1) Move to ./MUSEN_Linux/ 2) Run sudo ./install_prerequisites_local.sh 3) Run sudo ./linux_copy_files.sh 4) Run sudo ./make_musen_local.sh 5) Compiled version can be found ./MUSEN_build/ # Code organization - Databases - agglomerates, geometries and materials databases - ExternalLibraries - external libraries used in MUSEN (zlib and protobuf) - GeneralFunctions - main functions and types used in MUSEN - GeneralFunctions\SimResultsStorage - low-level functions for data handling (load and save data) - MUSEN - MUSEN\CMusen - command-line version of MUSEN - MUSEN\Models - contact models (particle-particle, particle-wall, solid bonds, ...) - MUSEN\Modules - MUSEN\Modules\BondsGenerator - generate bonds between particles - MUSEN\Modules\ContactAnalyzer - general functions for fast contacts detection - MUSEN\Modules\FileManager - set of functions to convert, merge or modify .mdem files with simulation results - MUSEN\Modules\ObjectsGenerator - dynamically generates particles or agglomerates during simulation - MUSEN\Modules\PackageGenerator - generate packing of particles prior simulation - MUSEN\Modules\ResultsAnalyzer - analyzer of simulation results (export necessary data to csv files) - MUSEN\Modules\ScriptInterface - analyze input scripts for command-line version - MUSEN\Modules\SimplifiedScene - simplified entity generated from SystemStructure and which is used during simulation - MUSEN\Modules\Simulator - CPU and GPU simulators - MUSEN\Modules\SystemStructure - main entity which stores the information about whole scene - MUSEN\QTDialog - Qt dialog for main window - MUSEN_Linux - set of scripts to compile MUSEN for linux - QTDialogs - different Qt-based dialogs of GUI # Third-party tools and libraries - [Qt 5.12.3](https://www.qt.io/) – The Qt Company - [LGPL v3](https://doc.qt.io/qt-5/lgpl.html) - [Protobuf 3.9.1](https://github.com/protocolbuffers/protobuf/) – Google Inc. - [BSD License](https://github.com/protocolbuffers/protobuf/blob/master/LICENSE) - [zlib v1.2.11](https://www.zlib.net/) – Jean-loup Gailly and Mark Adler - [zlib License](https://www.zlib.net/zlib_license.html) - [CUDA 10.0](https://developer.nvidia.com/cuda-zone) – Nvidia Corporation - [NVIDIA License](https://developer.download.nvidia.com/compute/cuda/10.0/Prod/docs/sidebar/EULA.pdf)
About
MUSEN: An open-source framework for GPU-accelerated DEM simulations
Resources
License
Stars
Watchers
Forks
Packages 0
No packages published
Languages
- C++ 86.5%
- Cuda 7.9%
- C 3.4%
- GLSL 1.2%
- CMake 0.4%
- Shell 0.3%
- Other 0.3%