Downloads:
1,820
Downloads of v 2.6:
38
Last Update:
05 Nov 2022
Package Maintainer(s):
Software Author(s):
- Theodore Chang
Tags:
fem hpc igasuanPan
This is not the latest version of suanPan available.
- 1
- 2
- 3
2.6 | Updated: 05 Nov 2022
Downloads:
1,820
Downloads of v 2.6:
38
Maintainer(s):
Software Author(s):
- Theodore Chang
suanPan 2.6
This is not the latest version of suanPan available.
- 1
- 2
- 3
Some Checks Have Failed or Are Not Yet Complete
Not All Tests Have Passed
Deployment Method: Individual Install, Upgrade, & Uninstall
To install suanPan, run the following command from the command line or from PowerShell:
To upgrade suanPan, run the following command from the command line or from PowerShell:
To uninstall suanPan, run the following command from the command line or from PowerShell:
Deployment Method:
This applies to both open source and commercial editions of Chocolatey.
1. Enter Your Internal Repository Url
(this should look similar to https://community.chocolatey.org/api/v2/)
2. Setup Your Environment
1. Ensure you are set for organizational deployment
Please see the organizational deployment guide
2. Get the package into your environment
Option 1: Cached Package (Unreliable, Requires Internet - Same As Community)-
Open Source or Commercial:
- Proxy Repository - Create a proxy nuget repository on Nexus, Artifactory Pro, or a proxy Chocolatey repository on ProGet. Point your upstream to https://community.chocolatey.org/api/v2/. Packages cache on first access automatically. Make sure your choco clients are using your proxy repository as a source and NOT the default community repository. See source command for more information.
- You can also just download the package and push it to a repository Download
-
Open Source
-
Download the package:
Download - Follow manual internalization instructions
-
-
Package Internalizer (C4B)
-
Run: (additional options)
choco download suanpan --internalize --version=2.6 --source=https://community.chocolatey.org/api/v2/
-
For package and dependencies run:
choco push --source="'INTERNAL REPO URL'"
- Automate package internalization
-
Run: (additional options)
3. Copy Your Script
choco upgrade suanpan -y --source="'INTERNAL REPO URL'" --version="'2.6'" [other options]
See options you can pass to upgrade.
See best practices for scripting.
Add this to a PowerShell script or use a Batch script with tools and in places where you are calling directly to Chocolatey. If you are integrating, keep in mind enhanced exit codes.
If you do use a PowerShell script, use the following to ensure bad exit codes are shown as failures:
choco upgrade suanpan -y --source="'INTERNAL REPO URL'" --version="'2.6'"
$exitCode = $LASTEXITCODE
Write-Verbose "Exit code was $exitCode"
$validExitCodes = @(0, 1605, 1614, 1641, 3010)
if ($validExitCodes -contains $exitCode) {
Exit 0
}
Exit $exitCode
- name: Install suanpan
win_chocolatey:
name: suanpan
version: '2.6'
source: INTERNAL REPO URL
state: present
See docs at https://docs.ansible.com/ansible/latest/modules/win_chocolatey_module.html.
chocolatey_package 'suanpan' do
action :install
source 'INTERNAL REPO URL'
version '2.6'
end
See docs at https://docs.chef.io/resource_chocolatey_package.html.
cChocoPackageInstaller suanpan
{
Name = "suanpan"
Version = "2.6"
Source = "INTERNAL REPO URL"
}
Requires cChoco DSC Resource. See docs at https://github.com/chocolatey/cChoco.
package { 'suanpan':
ensure => '2.6',
provider => 'chocolatey',
source => 'INTERNAL REPO URL',
}
Requires Puppet Chocolatey Provider module. See docs at https://forge.puppet.com/puppetlabs/chocolatey.
4. If applicable - Chocolatey configuration/installation
See infrastructure management matrix for Chocolatey configuration elements and examples.
This package was approved as a trusted package on 06 Nov 2022.
🧮 suanPan is a finite element method (FEM) simulation platform for applications in fields such as solid mechanics and civil/structural/seismic engineering. The name suanPan (in some places such as suffix it is also abbreviated as suPan) comes from the term Suan Pan (算盤), which is Chinese abacus. suanPan is written in modern high quality C++ code and is targeted to provide an efficient, concise, flexible and reliable FEM simulation platform.
@echo off
assoc .sp=suanpanmodel
assoc .supan=suanpanmodel
set "program=%~dp0suanPan.exe"
if not exist "%program%" (
echo suanPan.exe does not exist in current folder
goto byebye
)
ftype suanpanmodel="%program%" "-f" "%%1"
set "program=%program:\=/%"
set "target=%appdata%\Sublime Text 3\Packages\User\"
if exist "%target%\" goto copyfile
set "target=%appdata%\Sublime Text\Packages\User\"
if exist "%target%\" goto copyfile
set target=
set /p target="Input path contains sublime_text.exe (leave empty to quit): "
if "%target%" == "" goto byebye
if not exist "%target%\sublime_text.exe" (
echo sublime_text.exe does not exist in the given folder
goto byebye
)
set "target=%target%\Data\Packages\User\"
set "target=%target:\=/%"
:copyfile
echo {"cmd":["%program%","-f","$file"],"selector":"source.supan","file_patterns":["*.supan","*.sp"]} > "%~dp0suanPan.sublime-build"
xcopy "%~dp0suanPan.sublime*" "%target%"
:byebye
# Changelog
## known issues
1. `MKL` includes outdated `FEAST`, the external names in `FEAST` library are modified to avoid linking error.
2. `OpenBLAS` causes SEGFAULT with version 0.3.15+ when compiled with `DYNAMIC_ARCH` enabled.
## version 2.6
1. update `MKL` to version `2022.2.0`
2. update `TBB` to version `2021.7.0`
3. update `VTK` to version `9.2.2`
4. add docker images and docker build scripts
5. add `TabularSpline` amplitude that uses cubic spline interpolation
6. add `upsampling` command to upsample time series data
7. add `sdof_response` command to compute response of single degree of freedom system
8. add `response_spectrum` command to compute response spectrum for given ground motion
## version 2.5
1. reformulate NM sections, add `NMB21E` element with end moment release
2. add couple stress membranes `CST3`, `CST6`, `CSM4-8`
3. add universal iterative solvers `BiCGSTAB` and `GMRES`, and preconditioners `Jacobi` and `ILU`
4. add support for `icx` and `ifx` compilers, add support for `clang` on linux
5. fix a bug in `GSSSS` with loads are applied as support motions, add `GSSSSOptimal` scheme
6. add `MassPoint2D` and `MassPoint3D` elements
## version 2.4
1. add `RestitutionWall` constraint which conserves momentum and energy
2. add `benchmark` command to benchmark platform
3. constraints and loads are processed in a fully parallelized manner
4. add 3D viscous damper `Damper03` and `Damper04`
5. bugfixes
## version 2.3
1. update `Armadillo` to version 11.0
2. relocate history record file under home folder
3. add `GSSSS` integrator
4. `LeeNewmark` now supports `PARDISO`, `CUDA` and `FGMRES` solvers
5. move to `C++20`, need `GCC 10.3.0`, `Clang 13.0.1`, `MSVC 14.31`
6. add `MOMENTUM` to record system momentum
7. use non-iterative algorithm for force based beams `F21`, `F21H` and `F31`
## version 2.2
1. add `example` command to showcase the creation of a simple model
2. update `VTK` to version 9.1.0
3. add `LogicAND`, `LogicOR` and `LogicXOR` convergers to use multiple criteria
4. update `oneMKL` to `2022.0.3` on Windows
5. move to `VS2022`
## version 2.1
1. update `Armadillo` to version 10.8
2. add recorder tag to recorded files, remove timestamp for hdf5 files, easier to manage different recorders
3. several minor bugfixes
4. improve `LeeNewmark` and `LeeNewmarkFull` performance
5. correct multithreaded `SuperLU` implementation, change default number of threads to 10
6. bugfixes regarding sparse matrix representation
## version 2.0
1. fix a bug in elastic stiffness in CDP model
2. add porous media plane strain elements `PCPE4UC`, `PCPE8UC`, `PCPE4DC`, `PCPE8DC`
3. add N-M interaction enabled beam element `NMB31` and `NMB21`
4. add N-M interaction enabled section `NM2D1`, `NM3D1` (elastic) and `NM2D2`, `NM3D2` (inelastic)
5. change Rayleigh damping related syntax to include tangent stiffness term
6. add different stiffness types to `LeeNewmarkFull`, add support of geometry nonlinearity
7. revise section definition
8. add `B3DC` corotational formulation support to 3D beams
## version 1.9
1. update `Armadillo` to version 10.7
2. update `TBB` version 2021.4.0
3. add `FGMRES` iterative solver
4. switch to `core20` on snap
5. fix the visualisation bug with installation via snap
6. add `LineUDL2D` and `LineUDL3D` loads
## version 1.8
1. add `PlaneSymmetric13` and `PlaneSymmetric23` wrappers
2. add `CoulombFriction` material
3. update `Armadillo` to version 10.6
## version 1.7
1. revise `SimpleSand` model
2. add `DafaliasManzari` sand model
3. add `materialtestbystrainhistory` and `materialtestbystresshistory` utility functions
4. bugfix: potential racing in initialising reference dof, change to serial initialisation
5. bugfix: wrong update of plastic strain in `CDP` model
6. add `CDPM2` model with isotropic damage
## version 1.6
1. add `terminal` command and `output_folder` setting
2. some minor updates
## version 1.5
1. add `scoop` support
2. add `Contact3D` 3D node-triangular facet contact element
3. add `NodeLine` and `NodeFacet` contact constraint
4. add `Sleeve2D`, `Sleeve3D`, `MaxGap2D` and `MaxGap3D` constraint
5. update `OpenBLAS` to version 0.3.15
6. update `Material` class to accommodate couple stress related quantities
## version 1.4
1. add `R2D2` and `R3D2` alias for fixed length constraint
2. add `MinGap2D` and `MinGap3D` inequality constraints
3. add `SupportMotion` loads, including `SupportDisplacement`, `SupportVelocity` and `SupportAcceleration`
4. update `Armadillo` to version 10.4
5. add functionality to check new version
6. add `FEAST` solver
7. improve mixed precision solver performance
8. add `CUDA` solver for dense matrix
## version 1.3
1. update handling of constraints and loads
2. store commands in backup file in CLI mode
3. add `FixedLength2D` and `FixedLength3D` nonlinear constraints
4. improve handling of constraints in dynamic analysis
5. add `NLE1D01` model
6. minor bugfixes
## version 1.2
1. remove dependency on `MAGMA`, now `CUDA` is directly used as the GPU solver
2. add `PARDISO` sparse solver
3. upgrade to `Intel oneAPI Toolkit`
4. add C interface material model
5. remove all reinforced elements, reinforcement can be handled by material models
## version 1.1
1. add phase field enabled elements: `DCP3`, `DCP4`, `DC3D4`, `DC3D8` elements
2. add support to record nodal damping/inertial force `DF` and `IF`
3. add regularized `Yeoh` model for compressible rubbers
4. improve stability of `RambergOsgood` model
5. add `LeeNewmarkFull` damping model, improve performance of `LeeNewmark` damping model
6. add shared memory `SuperLU` solver
7. add `Spike` solver for banded matrices
8. add displacement based beam element with end moment release: `B21EL` and `B21EH` elements
9. correct name of `Kelvin` model
## version 1.0
1. initial release
md5: 504FD2FC359DE3316DD17D6BCEBC70AD | sha1: E243147DEB4ED130C2454E3DA5B1498A2FE460BE | sha256: 1590607E677148D9F226B0C532C23754E1A2B8A723DC610A4781043DD62AEC73 | sha512: 44D33FBED452354FE3D8B4B0B69CCDE9D4BB1A6167137FDCCEDCE26895F82800C322D84A1CFBC0F196A148E24DC4FFF7B71788958F723654C09EFC6ADAFF8A00
md5: DFC3F839467D3F23168A6FDC3BB288F7 | sha1: A368B4595F2F6A6A2B76AD2A29A173F655853981 | sha256: 51043532CBB152B15AB3D4B20B85AAA28E18EBFE2B2565FF91950A1B622163E5 | sha512: EFCDC37F51F9DA785984569220E552DD15A0B9D9F487C9A456EBF5307A331D9D8663C883FBE1CC67F1C0EDBAF39FA0E94A3F2D1D4844C5C0622FEF30D6A7D711
VERIFICATION
To verify, please visit https://github.com/TLCFEM/suanPan/releases where the same archive is uploaded.
DEPENDENCY
libifcoremd.dll : 1590607e677148d9f226b0c532c23754e1a2b8a723dc610a4781043dd62aec73
libiomp5md.dll : 51043532cbb152b15ab3d4b20b85aaa28e18ebfe2b2565ff91950a1b622163e5
libmmd.dll : 412d3b06ab9e656c27bd0147a05909e84ca8095901dd815e1321682decfc7586
msvcp140.dll : b832523b9ad9d3b7f33ea1a6fce8be04d171d6a5a09aee7b70872043566a4043
msvcp140_atomic_wait.dll : 2b94d3395f2643f1dbda4a03b2d374693f8f1f213dbeea26ac33a6f370a75205
svml_dispmd.dll : 5a3ec0e5d2aef04b3277b73f3ca9e097d2f643f46e6cebd5fa06e9119d2ff4af
tbb12.dll : 92088a3548da7191f0848fb4b80bdb104345dc5c31ed07c2fdcd34ac2461ba7a
tbbmalloc.dll : 0f857e91351e4796bd52d3f7a7ad741ffb1258dd254cd305b3b947d7a20250c2
tbbmalloc_proxy.dll : f352464e009922e474e598c0771bb1afa152bd8b2dacad3639509ab722cb233e
vcruntime140.dll : e7ad097a1fee72299c6ddfc16558a8d435bc0f23436e45f0ce8ace69cb3b38d8
vcruntime140_1.dll : 8493288d06ab94a97a4e0e162e0554e8056d650721e8a1dd779afa66b30d7d52
EXECUTABLE
suanPan.exe : 183d91b31dd7997c7dad4d59841d9884b22c85ebd98a1fc6b24bbf0d49a60717
updater.exe : 122e3bdbd488484e973ef4b5a39cb31ed31748f9aac9332dbc831237679575d6
TEXT
AddAssociation.bat
suanPan.sublime-completions
suanPan.sublime-syntax
LICENSE
CHANGELOG.md
README.md
md5: 1AC8B88BE758C55C6448946C71A0E5FE | sha1: EAEB1A9D5CD835B0ED278A5D5D9FAD47828CDEBF | sha256: 8493288D06AB94A97A4E0E162E0554E8056D650721E8A1DD779AFA66B30D7D52 | sha512: 20CE051A0FCE9AED2D2996CBD056EEB11DDFEB665E9AC2E9BB4D0EFF894DB903462120567A9FCA8E75EFE8D2715AEE6703EE120B8FF63D972A23E29FF51EE219
md5: 05EBBCDFF8217330A6FE40E5DE7CB3D8 | sha1: 3736D844732AAFF618D6FD9073459015D9DB2198 | sha256: E7AD097A1FEE72299C6DDFC16558A8D435BC0F23436E45F0CE8ACE69CB3B38D8 | sha512: 3F636BAB532B81E43303CAFB51658C97E0FFB3097E25DC34778ECE22B65E9C0D7206BFC2FAF964A9815EC041725B2CECF1E68057D9AF0FBA42DE4CBBE672A341
md5: B3D066675FA6463F8AF62C881A4B2954 | sha1: 9E745A1D596F2793C455B4626AAA46D016280EED | sha256: F352464E009922E474E598C0771BB1AFA152BD8B2DACAD3639509AB722CB233E | sha512: 21AE9A81924BCB264FCE7C78A51A5157B5B0B6B52F91D8AB95F223BC274DAFB98A6C326874274A9A4FDF2B27266CD60CFD361873CFC080D2C4025670867A34D1
md5: FFAB97B860A94A2C602CB3D7C4BD4A60 | sha1: 7238C126CA783E5C016814C5AD26F7D6376F34C0 | sha256: 0F857E91351E4796BD52D3F7A7AD741FFB1258DD254CD305B3B947D7A20250C2 | sha512: DC646CB06D16980269880031DE33CD9824D4435CE065AEE8D6C250C6334EAA98728FB0268024945005D76A33680D3DDFA238E000ADE3952C9EEDB53D3EEAB1B4
md5: 024C7A62E001490821B8F30A7753D3B1 | sha1: 9FD900A0C7C8F72C34DAEA01F60B75B04620DE20 | sha256: 92088A3548DA7191F0848FB4B80BDB104345DC5C31ED07C2FDCD34AC2461BA7A | sha512: A9E0000FD889D9BE909610938E48DF6ADC4A16DA707AEB8139B0F72AB95473CC04D31C0878987271E91111FBB6921007D561378F2EC9D1B948AFF169EC4F1FAE
md5: 7F250A45D18FF46CE36029452300DDF2 | sha1: 86EC727CDC557370C5AE4C8A8CD8921A6A67F3A8 | sha256: 5A3EC0E5D2AEF04B3277B73F3CA9E097D2F643F46E6CEBD5FA06E9119D2FF4AF | sha512: F0CF5EE45F6EB52A20CBBCEF48A7A3894609A42E93602FE5F39DF9B0C303CFACFD6CEFD05C5C1F03E94429D27A8D04B53BEC98D2E88E6B94249FC29F15E01F4B
md5: BFD3DE7874921F7B38E91E97654126AB | sha1: 9BBAADFB5A1431A226935FFE7CC10592704CE25B | sha256: 183D91B31DD7997C7DAD4D59841D9884B22C85EBD98A1FC6B24BBF0D49A60717 | sha512: F4CC4A27102E2F1FDAE9B5D8A101A1301DC647C784DA138A620ACE1ABE9B5BB20C8242AD7B6860EEC8FC9AD6C5522636712E0831522E9B5813F7FB9C37DBA861
# suanPan
<img src="Resource/suanPan-qr-ua.svg" width="150" align="middle"/><img src="Resource/suanPan-ua.svg" width="150" align="middle"/>
[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.1285221.svg)](https://doi.org/10.5281/zenodo.1285221)
[![license](https://img.shields.io/github/license/TLCFEM/suanPan.svg?color=44cc11)](https://www.gnu.org/licenses/gpl-3.0)
[![documentation](https://readthedocs.org/projects/suanpan-manual/badge/?version=latest)](https://suanpan-manual.readthedocs.io/?badge=latest)
[![release](https://img.shields.io/github/release-pre/TLCFEM/suanPan.svg?color=44cc11)](https://github.com/TLCFEM/suanPan/releases)
[![suanpan](https://snapcraft.io//suanpan/badge.svg)](https://snapcraft.io/suanpan)
[![Chocolatey](https://img.shields.io/chocolatey/v/suanpan?color=44cc11)](https://chocolatey.org/packages/suanpan)
[![Chocolatey](https://img.shields.io/chocolatey/dt/suanpan?color=44cc11&label=choco%20install)](https://chocolatey.org/packages/suanpan)
[![download](https://img.shields.io/github/downloads/TLCFEM/suanPan/total.svg?color=44cc11)](https://img.shields.io/github/downloads/TLCFEM/suanPan/total.svg?color=44cc11)
[![stable build](https://github.com/TLCFEM/suanPan/workflows/Stable%20Release/badge.svg?branch=master)](https://github.com/TLCFEM/suanPan/actions)
[![AppVeyor](https://img.shields.io/appveyor/ci/TLCFEM/suanPan/master.svg?label=master&logo=appveyor)](https://ci.appveyor.com/project/TLCFEM/suanpan/branch/master)
[![codecov](https://codecov.io/gh/TLCFEM/suanPan/branch/dev/graph/badge.svg?token=65BF9DF697)](https://codecov.io/gh/TLCFEM/suanPan)
[![codacy](https://app.codacy.com/project/badge/Grade/1ea08c43edf342a8b00b21e585e63503)](https://www.codacy.com/gh/TLCFEM/suanPan/dashboard?utm_source=github.com&utm_medium=referral&utm_content=TLCFEM/suanPan&utm_campaign=Badge_Grade)
[![CodeFactor](https://www.codefactor.io/repository/github/tlcfem/suanpan/badge)](https://www.codefactor.io/repository/github/tlcfem/suanpan)
[![Codiga](https://api.codiga.io/project/22357/score/svg)](https://app.codiga.io/public/project/22357/suanPan/dashboard)
[![language](https://img.shields.io/github/languages/count/TLCFEM/suanPan.svg?color=44cc11)](https://github.com/TLCFEM/suanPan)
[![language](https://img.shields.io/github/languages/top/TLCFEM/suanPan.svg?color=44cc11&logo=c%2B%2B)](https://github.com/TLCFEM/suanPan)
[![size](https://img.shields.io/github/languages/code-size/TLCFEM/suanPan.svg?color=44cc11)](https://img.shields.io/github/languages/code-size/TLCFEM/suanPan.svg?color=44cc11)
[![issues](https://img.shields.io/github/issues/TLCFEM/suanPan.svg?color=44cc11)](https://github.com/TLCFEM/suanPan/issues)
[![chat](https://badges.gitter.im/suanPan-dev/community.svg)](https://gitter.im/suanPan-dev/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)
[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2FTLCFEM%2FsuanPan.svg?type=shield)](https://app.fossa.com/projects/git%2Bgithub.com%2FTLCFEM%2FsuanPan?ref=badge_shield)
## Introduction
[🧮 **suanPan**](https://tlcfem.github.io/suanPan/) is a finite element method (FEM) simulation platform for
applications in fields such as solid mechanics and civil/structural/seismic engineering. The name **suanPan** (in some
places such as suffix it is also abbreviated as **suPan**) comes from the term *Suan Pan* (算盤), which
is [Chinese abacus](https://en.wikipedia.org/wiki/Suanpan). **suanPan** is written in modern high quality C++ code and
is targeted to provide an efficient, concise, flexible and reliable FEM simulation platform.
**suanPan** is partially influenced by popular (non-)commercial FEA packages, such
as [ABAQUS UNIFIED FEA](https://www.3ds.com/products-services/simulia/products/abaqus/), [ANSYS](http://www.ansys.com/)
and [OpenSees](http://opensees.berkeley.edu/).
Please check documentation [here](https://tlcfem.gitbook.io/suanpan-manual/) and [here](http://suanpan-manual.rtfd.io/)
for command references. Please consider starring ⭐ the project!
## Features
The highlights of **suanPan** are
- **suanPan** is *fast*, both memory and thread safe.
- **suanPan** is designed based on the [shared memory](https://en.wikipedia.org/wiki/Shared_memory) model and supports
parallelism on heterogeneous architectures, for example multithreaded CPU + optional GPU. The parallelism is available
for both element state updating and global matrix assembling.
- **suanPan** is open source and easy to be extended to incorporate user-defined elements, materials, etc.
- **suanPan** separates the FEA model part from the linear algebra operation part, which significantly reduces the
complexity and cost of development of new models.
- **suanPan** utilizes the new language features shipped with the latest standards (C++11 to C++20), such as new STL
containers, smart pointers and many others.
- **suanPan** supports simple visualization supported by [VTK](https://vtk.org/).
## Quick Start
Sample models are available for almost all models/commands. Please check the `Example` folder for details. Further
details can be seen [here](https://tlcfem.gitbook.io/suanpan-manual/tutorial/obtain) regarding how to run model files.
## Installation
Only 64-bit version is compiled. It is assumed that [**AVX**](https://en.wikipedia.org/wiki/Advanced_Vector_Extensions)
is available thus if the program fails, please check if your CPU supports AVX.
### Windows
#### Binary Package
The archives of binaries are released under [Release](https://github.com/TLCFEM/suanPan/releases) page.
1. `suanpan-win-mkl-vtk.zip` is the portable version.
2. `suanpan-win-mkl-vtk.exe` is the installer.
#### Chocolatey
The binaries, which are compiled with Intel MKL and VTK, are available
on [Chocolatey](https://chocolatey.org/packages/suanpan), please use the following command to install the package.
1. Follow the [instructions](https://chocolatey.org/install) to install Chocolatey.
2. Use the following command to install `suanPan`.
```ps
choco install suanpan
```
3. It is recommended to use a modern terminal such as [Windows Terminal](https://github.com/microsoft/terminal)
and [Fluent Terminal](https://github.com/felixse/FluentTerminal) for better output display.
[![asciicast](https://asciinema.org/a/491350.svg)](https://asciinema.org/a/491350)
#### Scoop
It is also possible to use [Scoop](https://scoop.sh/) to install the package.
1. Install [Scoop](https://scoop.sh/).
```ps
Set-ExecutionPolicy RemoteSigned -scope CurrentUser
iwr -useb get.scoop.sh | iex
```
2. Install `suanPan`.
```ps
scoop install suanpan
```
### Linux
Linux's users are recommended to obtain the binaries via snap. The snap supports visualization via VTK and uses Intel
MKL for linear algebra.
[![Get it from the Snap Store](https://snapcraft.io/static/images/badges/en/snap-store-black.svg)](https://snapcraft.io/suanpan)
[![asciicast](https://asciinema.org/a/491330.svg)](https://asciinema.org/a/491330)
Alternatively, download the RPM (Fedora 35) or DEB (Ubuntu 22.04) package from the release page. The packages may not be
compatible with older distributions (due to different version of `libstdc++`). It is also possible to compile the
package via docker, check the dockerfiles under the `Script` folder, for any questions please open an issue.
### Other Platforms
Precompiled binaries are provided via CI/CD on MacOS, Windows and Ubuntu. Please download the file from
the [release](https://github.com/TLCFEM/suanPan/releases) page.
A few flavors are available:
1. `vtk` --- visualization support is enabled, with this you can record VTK files for postprocessing, however, OpenGL
may be missing on server systems
2. `mkl` --- linear algebra operations are offloaded to MKL, which gives optimal performance on Intel chips
3. `openblas` --- linear algebra operations are offloaded to OpenBLAS, which may outperform MKL on AMD platforms
Advanced users can compile the program from source by themselves in order to enable GPU based solvers which require
available [CUDA](https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/) library.
Since CI/CD uses `GCC 11` (on Linux) and `Clang 13.0.1` (on MacOS), it may be required to update/install
proper `libstdc++` (or `libc++`) version. The easiest way is to install the same compiler. For example, on Ubuntu 22.04,
```bash
# Ubuntu
sudo apt install gcc g++ gfortran libomp5
```
For VTK enabled versions, it may be necessary to install OpenGL.
```bash
# Ubuntu
sudo apt install libglu1-mesa-dev freeglut3-dev mesa-common-dev libglvnd-dev
```
### Automation Related
On Windows, a batch file named as `AddAssociation.bat` is provided in the archive. It provides file associations and
prepares a proper working environment (build system, autocompletion, highlighting)
with [Sublime Text](https://www.sublimetext.com/). It also adds file associations with `.sp` and `.supan` files, please
run the `AddAssociation.bat` file with administrator privilege. [Sublime Text](https://www.sublimetext.com/)
autocompletion and syntax highlighting files are also provided. Please install Sublime Text first and execute the batch
file with the administrator privilege.
On Linux, a script file named as `suanPan.sh` is provided. By executing
```bash
./suanPan.sh --create-link
```
It adds Sublime Text autocompletion and syntax highlighting files to proper location if Sublime Text configuration
folder is found. It also adds a command alias `suanpan` to `~/.local/bin` and a desktop file
to `~/.local/share/applications`.
## Dependency
Additional libraries used in **suanPan** are listed as follows.
- [**ARPACK**](https://www.caam.rice.edu/software/ARPACK/) version 0.96
- [**SPIKE**](http://www.spike-solver.org/) version 1.0
- [**FEAST**](http://www.feast-solver.org/) version 4.0
- [**SuperLU**](https://portal.nersc.gov/project/sparse/superlu/) version 5.3.0 and [**SuperLU MT**](https://portal.nersc.gov/project/sparse/superlu/) version 3.1
- [**OpenBLAS**](https://github.com/xianyi/OpenBLAS) version 0.3.15
- [**TBB** Threading Building Blocks](https://github.com/oneapi-src/oneTBB) version 2021.7.0
- [**HDF5**](https://www.hdfgroup.org/solutions/hdf5/) version 1.10.6
- [**MUMPS**](http://mumps.enseeiht.fr/) version 5.2.1
- [**METIS**](http://glaros.dtc.umn.edu/gkhome/metis/metis/overview) version 5.1.0
- [**VTK**](https://vtk.org/) version 9.2.2
- [**CUDA**](https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/) version 11.7
- [**Armadillo**](http://arma.sourceforge.net/) version 11.0
- [**ensmallen**](https://ensmallen.org/) version 2.19.0
- [**oneMKL**](https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/onemkl.html) version 2022.2.0
- [**Catch2**](https://github.com/catchorg/Catch2) version 2.13.9
- **thread_pool** abridged version of [`thread-pool`](https://github.com/bshoshany/thread-pool)
Those libraries may depend on other libraries such as [zlib](https://zlib.net/)
and [Szip](https://support.hdfgroup.org/doc_resource/SZIP/). Additional tools may be used by **suanPan**, they are
- [**UPX** the Ultimate Packer for eXecutables](https://upx.github.io/)
## How To Compile
Please refer to the corresponding [page](https://github.com/TLCFEM/suanPan-manual/blob/dev/docs/Tutorial/Compile.md) in
manual for details.
## Happy Modelling
![an example of simulation of particle collision](Resource/particle-collision.gif)
## Licence
[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2FTLCFEM%2FsuanPan.svg?type=large)](https://app.fossa.com/projects/git%2Bgithub.com%2FTLCFEM%2FsuanPan?ref=badge_large)
md5: 534CCE830664C7B990B78121E1D37D13 | sha1: 4C01AAF91D14CAF409773C6242888E826596B35B | sha256: 2B94D3395F2643F1DBDA4A03B2D374693F8F1F213DBEEA26AC33A6F370A75205 | sha512: 6CBFF48C7F9B4E6D1AD14FEA64C43141729EC4AB1AD3F004879D9FBEDA070A34CBDB372DDB32D6CCBD82F3C3B3B1B609C6FBE93F6FDE68D275C2322F5DA147F4
md5: 859C16DC29A862DBD5595596D136DCC3 | sha1: 542116E37CB83CBD2CFE5ECDDC94145C0F6828DF | sha256: B832523B9AD9D3B7F33EA1A6FCE8BE04D171D6A5A09AEE7B70872043566A4043 | sha512: 480EA998096BE185D520E77C70BB4DA6D49A6ED01A03FBAE3C4A002E1E27EBE8E0716E58E818D972F559C52216E5D3CBF79BE7353D960954010A9CD49C7A0638
md5: F2C2FB522F3A6DF8BD1E93AD1ECB3B39 | sha1: 0CA5540084DADE764E9731DB838297BC48E2A09C | sha256: 412D3B06AB9E656C27BD0147A05909E84CA8095901DD815E1321682DECFC7586 | sha512: BB00C832D3515B632D80C3AD0A2FCC60495F577D00B73B8239BFE0193D803DB9E57A895B94FF608CD73A2782928E387DC0FADBFDFC31D44A16E49DA99B10BD01
Log in or click on link to see number of positives.
- libifcoremd.dll (1590607e6771) - ## / 68
- libiomp5md.dll (51043532cbb1) - ## / 66
- libmmd.dll (412d3b06ab9e) - ## / 63
- svml_dispmd.dll (5a3ec0e5d2ae) - ## / 66
- msvcp140.dll (b832523b9ad9) - ## / 71
- msvcp140_atomic_wait.dll (2b94d3395f26) - ## / 66
- vcruntime140.dll (e7ad097a1fee) - ## / 67
- vcruntime140_1.dll (8493288d06ab) - ## / 67
- suanpan.2.6.nupkg (dff7e33707d0) - ## / 65
- suanPan.exe (183d91b31dd7) - ## / 68
- tbb12.dll (92088a3548da) - ## / 69
- tbbmalloc.dll (0f857e91351e) - ## / 70
- tbbmalloc_proxy.dll (f352464e0099) - ## / 70
In cases where actual malware is found, the packages are subject to removal. Software sometimes has false positives. Moderators do not necessarily validate the safety of the underlying software, only that a package retrieves software from the official distribution point and/or validate embedded software against official distribution point (where distribution rights allow redistribution).
Chocolatey Pro provides runtime protection from possible malware.
Add to Builder | Version | Downloads | Last Updated | Status |
---|---|---|---|---|
suanPan 3.3.0 | 40 | Tuesday, January 23, 2024 | Approved | |
suanPan 3.2.0 | 32 | Monday, November 6, 2023 | Approved | |
suanPan 3.1.0 | 49 | Sunday, October 1, 2023 | Approved | |
suanPan 3.0 | 94 | Saturday, May 13, 2023 | Approved | |
suanPan 2.9 | 59 | Saturday, February 25, 2023 | Approved | |
suanPan 2.8 | 41 | Friday, January 20, 2023 | Approved | |
suanPan 2.7 | 35 | Wednesday, December 21, 2022 | Approved | |
suanPan 2.6.1 | 42 | Wednesday, November 9, 2022 | Approved | |
suanPan 2.6 | 38 | Saturday, November 5, 2022 | Approved | |
suanPan 2.5 | 49 | Friday, August 12, 2022 | Approved | |
suanPan 2.4 | 71 | Friday, June 17, 2022 | Exempted | |
suanPan 2.3 | 64 | Saturday, May 14, 2022 | Approved | |
suanPan 2.2 | 68 | Tuesday, April 5, 2022 | Approved | |
suanPan 2.1 | 81 | Sunday, February 13, 2022 | Approved | |
suanPan 2.0 | 84 | Wednesday, January 12, 2022 | Approved | |
suanPan 1.9 | 71 | Saturday, November 13, 2021 | Approved | |
suanPan 1.8 | 73 | Saturday, September 25, 2021 | Approved | |
suanPan 1.7 | 97 | Sunday, August 1, 2021 | Approved | |
suanPan 1.6 | 89 | Saturday, June 26, 2021 | Approved | |
suanPan 1.5 | 105 | Wednesday, May 26, 2021 | Approved | |
suanPan 1.4 | 78 | Saturday, April 24, 2021 | Approved | |
suanPan 1.3 | 105 | Saturday, March 20, 2021 | Approved | |
suanPan 1.2 | 121 | Friday, February 12, 2021 | Approved | |
suanPan 1.1 | 101 | Sunday, January 10, 2021 | Approved | |
suanPan 1.0 | 133 | Sunday, October 18, 2020 | Approved |
2017-2022 Theodore Chang
Please visit: https://github.com/TLCFEM/suanPan/releases
This package has no dependencies.
Ground Rules:
- This discussion is only about suanPan and the suanPan package. If you have feedback for Chocolatey, please contact the Google Group.
- This discussion will carry over multiple versions. If you have a comment about a particular version, please note that in your comments.
- The maintainers of this Chocolatey Package will be notified about new comments that are posted to this Disqus thread, however, it is NOT a guarantee that you will get a response. If you do not hear back from the maintainers after posting a message below, please follow up by using the link on the left side of this page or follow this link to contact maintainers. If you still hear nothing back, please follow the package triage process.
- Tell us what you love about the package or suanPan, or tell us what needs improvement.
- Share your experiences with the package, or extra configuration or gotchas that you've found.
- If you use a url, the comment will be flagged for moderation until you've been whitelisted. Disqus moderated comments are approved on a weekly schedule if not sooner. It could take between 1-5 days for your comment to show up.