All Projects → dacelib → dace

dacelib / dace

Licence: Apache-2.0 License
Differential Algebra Computational Toolbox

Programming Languages

C++
36643 projects - #6 most used programming language
c
50402 projects - #5 most used programming language
fortran
972 projects
CMake
9771 projects
Gnuplot
187 projects
shell
77523 projects

Projects that are alternatives of or similar to dace

NumDiff
Modern Fortran Numerical Differentiation Library
Stars: ✭ 48 (+200%)
Mutual labels:  numerical-methods
descent
First-order optimization tools
Stars: ✭ 23 (+43.75%)
Mutual labels:  numerical-methods
diffhask
DSL for forward and reverse mode automatic differentiation in Haskell. Port of DiffSharp.
Stars: ✭ 26 (+62.5%)
Mutual labels:  automatic-differentiation
RS-MET
Codebase for RS-MET products (Robin Schmidt's Music Engineering Tools)
Stars: ✭ 32 (+100%)
Mutual labels:  numerical-methods
DECAGT
Discretizations of Exterior Calculus for Analysis, Geometry and Topology
Stars: ✭ 14 (-12.5%)
Mutual labels:  numerical-methods
HamiltonianSolver
Numerically solves equations of motion for a given Hamiltonian function
Stars: ✭ 51 (+218.75%)
Mutual labels:  automatic-differentiation
euler2D-kfvs-Fortran2003
2D solver for Euler equations in quadrilateral grid, using kinetic flux vector splitting scheme, written in OOP F2003
Stars: ✭ 17 (+6.25%)
Mutual labels:  numerical-methods
UQpy
UQpy (Uncertainty Quantification with python) is a general purpose Python toolbox for modeling uncertainty in physical and mathematical systems.
Stars: ✭ 117 (+631.25%)
Mutual labels:  uncertainty-propagation
CFD-Julia-12-steps--o-Navier-Stokes-Equations
This is a replication of "CFD Python: 12 steps to Navier-Stokes" in Julia
Stars: ✭ 33 (+106.25%)
Mutual labels:  numerical-methods
Quadrature.jl
A common interface for quadrature and numerical integration for the SciML scientific machine learning organization
Stars: ✭ 83 (+418.75%)
Mutual labels:  automatic-differentiation
Birch
A probabilistic programming language that combines automatic differentiation, automatic marginalization, and automatic conditioning within Monte Carlo methods.
Stars: ✭ 80 (+400%)
Mutual labels:  automatic-differentiation
radnet
U-Net for biomedical image segmentation
Stars: ✭ 11 (-31.25%)
Mutual labels:  sensitivity-analysis
bayex
Bayesian Optimization in JAX
Stars: ✭ 24 (+50%)
Mutual labels:  automatic-differentiation
FOODIE
Fortran Object-Oriented Differential-equations Integration Environment, FOODIE
Stars: ✭ 109 (+581.25%)
Mutual labels:  numerical-methods
Cpp-Examples
Numerical C++ examples.
Stars: ✭ 38 (+137.5%)
Mutual labels:  numerical-methods
autodiff
A .NET library that provides fast, accurate and automatic differentiation (computes derivative / gradient) of mathematical functions.
Stars: ✭ 69 (+331.25%)
Mutual labels:  automatic-differentiation
ose-course-scientific-computing
course on the basics of scientific computing for economists
Stars: ✭ 21 (+31.25%)
Mutual labels:  numerical-methods
Yota.jl
Reverse-mode automatic differentiation in Julia
Stars: ✭ 113 (+606.25%)
Mutual labels:  automatic-differentiation
Nabla.jl
A operator overloading, tape-based, reverse-mode AD
Stars: ✭ 54 (+237.5%)
Mutual labels:  automatic-differentiation
tensorgrad
Differentiable Programming Tensor Networks
Stars: ✭ 102 (+537.5%)
Mutual labels:  automatic-differentiation

Build Status

DACE

The Differential Algebra Computational Toolbox.

Requirements

To use the DACE library, you need a C++11 compatible C++ compiler. Almost all modern C++ compilers (GNU, Clang, MS Visual Studio) meet that requirement nowadays. We also highly recommend using CMake as a build system, and obviously Git as your source code management system.

On Windows, you need to download Microsoft Visual Studio (the free Community Edition is fine). On MacOS X, you need to install the Xcode package from Apple from the App Store. On Linux, you can install the compiler toolchain through your package system if they don't already come pre-installed.

To build Windows DACE library installer packages, you additionally need the NSIS installer compiler.

Getting started

To get started, either download one of the pre-built release packages for your platform (see the Releases tab above), or just clone the entire repository and build the library from scratch (which really is very easy).

To use the DACE, we recommend using CMake. New DACE releases past version 2.0.1 come with a CMake package system plugin that allows very simple use of the DACE within the CMake framework. To get started, have a look at the Tutorials directories. Both of the Tutorials there are independent projects with their own stand-alone CMake file you can use as a starting point for your own programs.

Building the DACE

To build your own version of the DACE library, simply clone this repository:

git clone "https://github.com/dacelib/dace.git"

Then create a build directory and run cmake, and then make to compile everything:

cd dace
mkdir build
cd build
cmake ..
make

After some compiling, you should have a sparkling new dace library ready for use. To install it directly into your system, you can just use:

sudo make install

The sudo is there to give you the required permissions to install into your system directories (usually /usr/local).

Running the Tutorials

To test if your installation was successful, you can try to build one of the Tutorials:

cd ../Tutorials/Tutorial1
mkdir build
cd build
cmake ..
make

This should automatically compile all tutorials, ready to be run by you using e.g. the command ./Example1.

Also have a look at the DACE Wiki pages if you have further questions

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].