Skip to content

CS207-Project-Team-1/cs207-FinalProject

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AutoDiffX - A Graph-Based Automatic Differentiation Package

Build Status Coverage Status

This is our CS207 Final Project implementing Automatic Differentiation. Our group has the following members:

  • Hanyu Jiang
  • Hugo Ramambason
  • William Fu

Installing and Setup

Installing from Source

If you want the latest nightly version of AutoDiffX, clone from our github repository and install the latest version directly.

git clone https://github.com/CS207-Project-Team-1/cs207-FinalProject autodiffx
cd autodiffx
pip install -r requirements.txt
python3 setup.py install

If you are working on a python virtual environment or Mac OSX or your user's python distribution, this should work. If editing the system python, you may need to run the last command with root permissions by adding sudo.

Installing from pip

For the stable version, you can install our package from PyPI.

pip install autodiffx

You can also install the nightly version from our Github using pip.

pip install git+https://github.com/CS207-Project-Team-1/cs207-FinalProject

Testing

All of the tests are run using pytest. To run pytest, you want to be in the root directory of the repository. To ensure that pytest gets the imports correct, you want to run it such that it adds the current path to PYTHONPATH. The easiest way to do so is:

python -m pytest

This should run all of the tests for the package.

Documentation

Comprehensive documentation is available here. There are also several demos that you should be able to access through the demos/ folder. Currently, the available demos are:

  • Root finding with Newton's Method (link)
  • Using the Hessian in Optimization Problems (link)
  • Estimating Taylor Series Errors (link)

Releases

No releases published

Packages

No packages published

Languages