Advanced Simulation Library
{{Use dmy dates|date=May 2015}}
{{Infobox Software
| name = Advanced Simulation Library
| screenshot = Advanced_Simulation_Library_-_Multicomponent_flow.png
| caption = Multicomponent flow simulation
| developer = [http://avtechscientific.com/ Avtech Scientific]
| released = {{Start date and age|df=yes|2015|05|14}}
| latest release version = 0.1.7
| latest release date = {{Start date and age|df=yes|2016|11|09}}
| operating system = Unix/Linux, Windows, Mac
| genre = Multiphysics, Computer-aided engineering, Computational fluid dynamics, Simulation software
| license = GNU Affero General Public License, optional commercial license (based on MIT License)
| website = {{url|http://asl.avtechscientific.com/}}
| repo = {{url|https://github.com/AvtechScientific/ASL}}
| programming language = C++
}}
File:Advanced Simulation Library - Multicomponent flow video.ogv
File:Advanced_Simulation_Library_-_Computer-assisted_cryosurgery.png
File:Advanced_Simulation_Library_-_microfluidic_device_for_separating_mixtures_of_proteins.png
File:Advanced_Simulation_Library_-_Image-guided_neurosurgery,_brain_deformation_simulation.png
File:Advanced_Simulation_Library_-_Aerodynamics_of_a_locomotive_in_a_tunnel.png
Advanced Simulation Library (ASL) is a free and open-source hardware-accelerated multiphysics simulation platform. It enables users to write customized numerical solvers in C++ and deploy them on a variety of massively parallel architectures, ranging from inexpensive FPGAs, DSPs and GPUs{{Cite web|url=http://hgpu.org/papers/AvtechScientific-ASL_Presentation.pdf|title=ASL - expanding software ecosystem for the DSP/FPGA/GPU market|access-date=27 September 2015|archive-date=25 August 2017|archive-url=https://web.archive.org/web/20170825181459/http://hgpu.org/papers/AvtechScientific-ASL_Presentation.pdf|url-status=dead}} up to heterogeneous clusters and supercomputers. Its internal computational engine is written in OpenCL and utilizes matrix-free solution techniques. ASL implements variety of modern numerical methods, i.a. level-set method, lattice Boltzmann, immersed boundary. The mesh-free, immersed boundary approach allows users to move from CAD directly to simulation, reducing pre-processing efforts and number of potential errors. ASL can be used to model various coupled physical and chemical phenomena, especially in the field of computational fluid dynamics.
It is distributed under the free GNU Affero General Public License with an optional commercial license (which is based on the permissive MIT License).
History
Advanced Simulation Library is being developed by Avtech Scientific, an Israeli company. Its source code was released to the community on 14 May 2015, whose members packaged it for scientific sections of all major Linux distributions shortly thereafter.{{Cite web|url=http://asl.org.il/2015/07/31/ASL_enters_Linux/|title=ASL - ASL enters Linux distributions at a record-breaking pace.|website=asl.org.il}}{{Cite web|url=https://build.opensuse.org/package/show/science/ASL|title=Advanced Simulation Library|website=openSUSE Build Service}}{{Cite web|url=https://packages.debian.org/sid/libasl0|title=Debian -- Details of package libasl0 in sid|website=packages.debian.org}}{{Cite web|url=https://cgit.gentoo.org/proj/sci.git/tree/sci-libs/asl|title=asl « sci-libs - proj/sci.git - Gentoo Science Overlay|website=cgit.gentoo.org}}{{cite web |url=https://admin.fedoraproject.org/pkgdb/package/libASL/ |title=ASL for Fedora |access-date=30 November 2015 |archive-url=https://web.archive.org/web/20151208172816/https://admin.fedoraproject.org/pkgdb/package/libASL/ |archive-date=8 December 2015 |url-status=dead |df=dmy-all }}{{Cite web|url=https://archlinux.org/packages/?q=libasl|title=Arch Linux - Package Search|website=archlinux.org}} Subsequently, Khronos Group acknowledged the significance of ASL and listed it on its website among OpenCL-based resources.{{Cite web|url=https://www.khronos.org/resources/|title=OpenCL - The Open Standard for Parallel Programming of Heterogeneous Systems|date=21 July 2013|website=The Khronos Group|access-date=8 October 2021|archive-date=8 October 2021|archive-url=https://web.archive.org/web/20211008014411/https://www.khronos.org/resources/|url-status=dead}}
Application areas
Advantages and disadvantages
= Advantages =
- C++ API{{Cite web|url=http://asl.org.il/doc/Developer-Guide/locomotive_8cc-example.html|title=ASL: locomotive.cc|website=asl.org.il}} (no OpenCL knowledge required)
- Mesh-free, immersed boundary approach allows users to move from CAD directly to computations reducing pre-processing effort
- Dynamic compilation enables an additional layer of optimization at run-time (i.e. for a specific parameters set the application was provided with)
- Automatic hardware acceleration and parallelization of applications
- Deployment of same program on a variety of parallel architectures - GPU, APU, FPGA, DSP, multicore CPUs
- Ability to deal with complex boundaries
- Ability to incorporate microscopic interactions
- Availability of the source code
= Disadvantages =
- Absence of detailed documentation (besides the Developer Guide generated from the source code comments)
- Not all OpenCL drivers are mature enough for the library{{Cite web|url=https://github.com/AvtechScientific/ASL|title=Deployment · AvtechScientific/ASL Wiki|website=GitHub|date=25 July 2022 }}
Features
ASL provides a range of features to solve number of problems - from complex fluid flows involving chemical reactions, turbulence and heat transfer, to solid mechanics and elasticity.{{Cite journal|url=https://hgpu.org/?p=14517|title=Advanced Simulation Library: Expanding software ecosystem for the DSP/FPGA/GPU market|first=Avtech|last=Scientific|date=3 September 2015|via=hgpu.org}}
- Interfacing: VTK/ParaView, MATLAB (export).
- import file formats: .stl .vtp .vtk .vti .mnc .dcm
- export file formats: .vti .mat
- Geometry:
- flexible and complex geometry using simple rectangular grid
- mesh-free, immersed boundary approach
- generation and manipulation of geometric primitives
- Implemented phenomena:
- Transport processes
- multicomponent transport processes
- compressible and incompressible fluid flow
- Chemical reactions
- electrode reactions
- Elasticity
- homogeneous isotropic elasticity
- homogeneous isotropic poroelasticity
- Interface tracking
- evolution of an interface
- evolution of an interface with crystallographic kinetics
Uses
- ACTIVE - Active Constraints Technologies for Ill-defined or Volatile Environments (European FP7 Project){{Cite web|url=http://www.active-fp7.eu/index.php/resultsmenu/intraopbs.html|title=Results - Intraoperative Brain Shift | The Active Project|website=www.active-fp7.eu}}{{Cite web|url=https://www.technology.org/2015/09/14/asl-assists-neurosurgeons-and-robots-computes-brain-deformation-in-real-time/|title=ASL assists neurosurgeons and robots, computes brain deformation in real time - Technology OrgTechnology Org|date=14 September 2015}}{{Cite web|url=https://interestingengineering.com/how-asl-assists-neurosurgeons-and-robots|title=ASL Software Assists Neurosurgeons and Robots|date=28 November 2016|website=interestingengineering.com}}
References
{{Reflist}}
{{Numerical analysis software}}
{{CAE software}}
Category:Computational chemistry software
Category:Computer-aided engineering software for Linux
Category:Software using the GNU Affero General Public License
Category:Computational fluid dynamics
Category:Free science software
Category:Open Source computer aided engineering applications
Category:Articles containing video clips