GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - AvtechScientific/ASL: Advanced Simulation Library - hardware accelerated multiphysics simulation platform.

BranchesTags
Open more actions menu

Latest commit

 

History

248 Commits
248 Commits

Folders and files

NameName
Last commit message
Last commit date
cmake
cmake
 
 
doc
doc
 
 
examples
examples
 
 
src
src
 
 
test
test
 
 
utilities
utilities
 
 
CMakeLists.txt
CMakeLists.txt
 
 
COPYRIGHT.org
COPYRIGHT.org
 
 
CTestConfig.cmake
CTestConfig.cmake
 
 
LICENSE
LICENSE
 
 
NEWS.org
NEWS.org
 
 
README.org
README.org
 
 

Repository files navigation

For more information, please visit http://asl.avtechscientific.com.

ASL

Advanced Simulation Library (ASL) is a free and open source hardware accelerated multiphysics simulation platform (and an extensible general purpose tool for solving Partial Differential Equations). Its computational engine is written in OpenCL and utilizes matrix-free solution techniques which enable extraordinarily high performance, memory efficiency and deployability on a variety of massively parallel architectures, ranging from inexpensive FPGAs, DSPs and GPUs up to heterogeneous clusters and supercomputers. The engine is hidden entirely behind simple C++ classes, so that no OpenCL knowledge is required from application programmers. Mesh-free, immersed boundary approach allows one to move from CAD directly to simulation drastically reducing pre-processing efforts and amount of potential errors. ASL can be used to model various coupled physical and chemical phenomena and employed in a multitude of fields: computational fluid dynamics, virtual sensing, industrial process data validation and reconciliation, image-guided surgery, computer-aided engineering, design space exploration, crystallography, etc..

License

ASL is distributed under the free GNU Affero General Public License (AGPLv3) with an optional commercial license.

Support

Professional consulting, training and integration services are provided by Avtech Scientific, whose team created and continues to extend the library. The company offers innovative R&D solutions and is involved in diverse academic and industrial collaborative projects dealing with complex multidisciplinary problems.

Quick Start

Installation

  1. Install cmake (>=3.0.2, BSD License) and the required libraries:
    • OpenCL (>=1.2, OpenCL Specification License); open or closed source implementation, see deployment information
    • boost (>=1.53, Boost Software License)
    • VTK (>=6.1, BSD License)
    • optional: Matlab support with matio (>=1.5.2, BSD License)
    • optional: API documentation with doxygen (preferably with graphviz)
  2. Download and extract the ASL source code archive.
  3. Create a build directory: mkdir build-asl && cd build-asl
  4. Use cmake generator to produce Makefiles: cmake -G "Unix Makefiles" ../ASL or project files for your IDE (Visual Studio, Xcode, Eclipse, etc.): cmake -G "Visual Studio 10" ../ASL
  5. Run make (as root if installing into default destination /usr/local): make install

Running an example

  1. Go to examples: cd examples/flow/locomotive
  2. Download geometry file locomotive.stl from the ASL input data page.
  3. Run: ./asl-locomotive --input locomotive.stl
    Optionally: change parameters ./asl-locomotive --input locomotive.stl --dx 1 --dt 2 or write all of them into a file for later editing/reuse - ./asl-locomotive -g bigGrid.ini. List all available options - ./asl-locomotive -h.
  4. Post-processing: see step by step example and locomotive.pvsm - the ParaView state file.

Writing your own code using ASL

  1. Take a look on examples and the API documentation, start with examples/flow/locomotive.cc
  2. ASL installation supplies ASL.pc and ASLConfig.cmake files. To build your program using:
  • pkg-config: c++ `pkg-config --cflags --libs ASL` -std=c++11 -o flow flow.cc
  • cmake: write a basic CMakeLists.txt file:
project(locomotive)
cmake_minimum_required(VERSION 3.0.2 FATAL_ERROR)
find_package(ASL 0.1.6 CONFIG REQUIRED)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
add_executable(locomotive locomotive.cc)
target_link_libraries(locomotive PRIVATE ASL::aslnum ASL::aslvtk ASL::asl)

About

Advanced Simulation Library - hardware accelerated multiphysics simulation platform.

asl.avtechscientific.com

Topics

computational-fluid-dynamicscomputer-aided-engineeringcrystallographydesign-space-explorationgpgpuhigh-performance-computingimage-guided-surgeryscientific-computingvirtual-sensing

Resources

Readme
AGPL-3.0 license
Activity

Stars

251 stars

Watchers

26 watching

Forks

59 forks
Report repository

Releases

Packages

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.