Giter VIP home page Giter VIP logo

gsl-shell's Introduction

GSL Shell

screenshot

An interactive application for maths and graphics based on the Lua programming language and the GNU Scientific Library.

Overview

GSL Shell is an interactive command-line interface that provides easy access to a collection of numeric algorithms and functions from the GNU Scientific Library (GSL). GSL Shell is capable of working with matrices or vectors for performing various linear algebra operations.

Fast GSL Shell is built upon the highly efficient Lua JIT compiler, LuaJIT2. Thanks to LuaJIT2, scripts created with GSL Shell can run at speeds comparable to optimized C code.

Easy to use Lua is an easy-to-learn scripting language that boasts advanced functionalities such as closures and metamethods. With the power and simplicity of Lua, it is straightforward to write your own functions or leverage those provided by the GSL library.

Fast numeric algorithms GSL Shell features a specialized implementation of numeric algorithms for tasks such as numerical integration, ODE integration, and non-linear fitting. These algorithms are optimized to run at native code speeds using simple Lua functions.

Plotting functions Additionally, GSL Shell offers user-friendly tools for creating visually appealing plots and animations through its integrated graphical module.

GSL Shell is hosted at Github, here is the GSL Shell project page and the GSL Shell user manual.

You can download the latest release of GSL Shell in the [download section]. You will find the source code and the binary packages for Windows and Linux.

Build Instructions

To build the GSL Shell project, you can use the Meson build system. Meson simplifies the build process by automatically handling the download and compilation of required libraries, namely:

  • the FOX toolkit 1.7
  • the GSL library
  • LuaJIT2
  • libagg

This means you do not need to install these libraries on your system.

To build on a ubuntu ensure you have the following packages installed:

sudo apt install meson pkg-config gcc g++ xorg-dev

Optionally, GSL Shell can use also the OpenBLAS library for optimized matrix computations. It can be installed on ubuntu using the package libopenblas-dev. To use OpenBLAS use the meson option -Dblas=openblas with the meson setup command shown below.

Once these requirements are met GSL Shell can be compiled using the commands:

meson setup build
ninja -C build

To test the application locally, without installation use the script:

bash scripts/run-local.sh build

If you which to install GSL Shell we suggest using the build-package script:

bash scripts/build-package.sh

It will create a package ready-to-install in the directory package/gsl-shell. The folder can be moved in any location of your choice, no installation required.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.