Giter Club home page Giter Club logo

acados's Introduction

acados

Travis Status Appveyor status codecov

Fast and embedded solvers for nonlinear optimal control.

acados forum

If you have any acados-related question, feel free to post on our forum.

Installation

  1. Initialize all submodules

    git submodule update --recursive --init
    
  2. Download CasADi: To create external function for your problem, we suggest to use CasADi and use it from <acados_root_folder>/external. Depending on the environment you want to use to generate CasADi functions from, proceed with the corresponding paragraph (Python, MATLAB, Octave):

    Python

    cd external
    wget -q -nc --show-progress https://github.com/casadi/casadi/releases/download/3.4.0/casadi-linux-py35-v3.4.0-64bit.tar.gz
    mkdir -p casadi-py35-v3.4.0-64bit
    tar -xf casadi-linux-py35-v3.4.0-64bit.tar.gz -C casadi-py35-v3.4.0-64bit
    cd ..
    

    Matlab

    Put CasADi binaries into <acados_root_folder>/external/casadi-matlab :

    cd external
    wget -q -nc --show-progress https://github.com/casadi/casadi/releases/download/3.4.0/casadi-linux-matlabR2014b-v3.4.0.tar.gz
    mkdir -p casadi-matlab
    tar -xf casadi-linux-matlabR2014b-v3.4.0.tar.gz -C casadi-matlab
    cd ..
    

    Octave version 4.4 or later

    Put CasADi binaries into <acados_root_folder>/external/casadi-octave :

    cd external
    wget -q -nc --show-progress https://github.com/casadi/casadi/releases/download/3.4.5/casadi-linux-octave-4.4.1-v3.4.5.tar.gz
    mkdir -p casadi-octave
    tar -xf casadi-linux-octave-4.4.1-v3.4.5.tar.gz -C casadi-octave
    

    Octave version 4.2 or earlier

    Put CasADi binaries into <acados_root_folder>/external/casadi-octave :

    cd external
    wget -q -nc --show-progress https://github.com/casadi/casadi/releases/download/3.4.0/casadi-linux-octave-v3.4.0.tar.gz
    mkdir -p casadi-octave
    tar -xf casadi-linux-octave-v3.4.0.tar.gz -C casadi-octave
    cd ..
    
  3. Build and install acados. Both a CMake and a Makefile based build system is supported at the moment. Please choose one and proceed with the corresponding paragraph.

    CMake

    Set the BLASFEO_TARGET in <acados_root_folder>/CMakeLists.txt. For a list of supported targets, we refer to https://github.com/giaf/blasfeo/blob/master/README.md . Install acados as follows

    mkdir -p build
    cd build
    cmake .. (with optional arguments e.g. -DACADOS_WITH_OSQP=OFF/ON -DACADOS_INSTALL_DIR=<path_to_acados_installation_folder>)
    make install
    

    Make

    Set the BLASFEO_TARGET in <acados_root_folder>/Makefile.rule. For a list of supported targets, we refer to https://github.com/giaf/blasfeo/blob/master/README.md . Install acados as follows

    make shared_library
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:<path_to_acados_folder>/lib
    make examples_c
    make run_examples_c
    
  • soon: binaries for all operating systems available for download (see Releases)

acados's People

Contributors

bnovoselnik avatar chenyutao36 avatar dkouzoup avatar doanminhdang avatar enricaso avatar freyjo avatar ghorn avatar giaf avatar jkoendev avatar nielsvd avatar pariterre avatar rienq avatar roversch avatar rqelibari avatar tmmsartor avatar zanellia avatar

Watchers

 avatar

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.