symengine.rb
symengine.rb copied to clipboard
Ruby wrappers for SymEngine
SymEngine Ruby Wrappers
Ruby wrappers gem for SymEngine, a fast symbolic manipulation library, written in C++. https://github.com/symengine/symengine
Installation
Prerequisites
-
C++ compiler - See supported compilers
-
CMake - with executable folder in the
PATH
variable -
libsymengine - See build instructions
-
ruby >= 2.0.0 - Needs Ruby shared library and headers
Installing
-
Simply do,
gem install symengine
-
If
libsymengine
is not found, you can give the installation directory or build directory by doing,gem install symengine -- -DSymEngine_DIR=/path/to/symengine/root
Development
- Install bundler by
gem install bundler
- Execute
bundle install
this will install the gems required - Build the gem,
gem build symengine.gemspec
- Install the gem,
gem install symengine-0.1.0.gem
Mailinglist, Chat
SciRuby mailinglist: http://groups.google.com/group/sciruby-dev
SymEngine mailinglist: http://groups.google.com/group/symengine

Using the extensions
SymEngine is a module in the extensions, and the classes are a part of it. To check if you can use them, fire up the interpreter and load the file
~$ irb
2.2.0 :001 > require 'symengine'
=> true
Go ahead and try a function
2.2.0 :002 > SymEngine.ascii_art
_____ _____ _
| __|_ _ _____| __|___ ___|_|___ ___
|__ | | | | __| | . | | | -_|
|_____|_ |_|_|_|_____|_|_|_ |_|_|_|___|
|___| |___|
=> nil
Please go through the IRuby notebooks for more demonstrations. If you are new to symengine.rb, please refer to the beginner notebook.