Skip to content

Python bindings for the CppAD Automatic Differentiation library

License

Notifications You must be signed in to change notification settings

proyan/pycppad

 
 

Repository files navigation

PyCppAD — Python bindings for CppAD Automatic Differentiation library

License Conda Downloads Conda Version PyPI version

PyCppAD is an open source framework which provides bindings for the CppAD Automatic Differentiation(CppAD) C++ library in Python. PyCppAD also includes support for the CppADCodeGen (CppADCodeGen), C++ library, which exploits CppAD functionality to perform code generation.

Installing PyCppAD

Installation via

As simple as that:

   conda install pycppad -c conda-forge

Installation via PyPI

As simple as that:

   pip install pycppad

Installation by source

Dependencies

PyCppAD dependes on the following dependencies:

Compiling PyCppAD

Once the dependencies have been installed, follow the following commands to compile PyCppAD:

cd ${path_to_your_development_source}/
git clone --recursive https://github.com/Simple-Robotics/pycppad.git
cd pycppad
mkdir _build-RELEASE
cd _build-RELEASE
cmake .. -DCMAKE_BUILD_TYPE=RELEASE -DCMAKE_INSTALL_PREFIX=${path_to_your_installation}
make install

Set up the path_to_your_installation and path_to_your_development_source based on your personal development environment.

Alternatively, in order to compile with CppADCodeGen support, add -DBUILD_WITH_CPPAD_CODEGEN_BINDINGS=ON to the cmake command, and follow the build sequence as before:

cmake .. -DCMAKE_BUILD_TYPE=RELEASE -DCMAKE_INSTALL_PREFIX=${path_to_your_installation} -DBUILD_WITH_CPPAD_CODEGEN_BINDINGS=ON

Acknowledgments

The development of PyCppAD is supported by the Willow team @INRIA.

About

Python bindings for the CppAD Automatic Differentiation library

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 77.2%
  • CMake 17.1%
  • Python 5.7%