SciPy 2016 Tutorial Proposal - wrat/sympy GitHub Wiki

Information

SciPy 2016, Austin, Texas • July 11-17, 2016

Title

Symbolic Compution with Python using SymPy

Tutorial Topic

SymPy

Student's Python Knowledge Level *

  • Beginner
  • Intermediate
  • Advanced

Please provide a detailed abstract of your tutorial:

SymPy is a pure Python library for symbolic mathematics. It aims to become a full-featured computer algebra system (CAS) while keeping the code as simple as possible in order to be comprehensible and easily extensible. SymPy is written entirely in Python and does not require any external libraries.

In this tutorial we will introduce attendees to SymPy. We will start by showing how to install and configure this Python module. Then we will proceed to the basics of constructing and manipulating mathematical expressions in SymPy. We will also discuss the most common issues and differences from other computer algebra systems, and how to deal with them. In the last part of this tutorial we will show how to solve simple, yet illustrative, mathematical problems with SymPy.

This knowledge should be enough for attendees to start using SymPy for solving mathematical problems and hacking SymPy's internals (though hacking core modules may require additional expertise).

We expect attendees of this tutorial to have basic knowledge of Python and mathematics. However, any more advanced topics will be explained during presentation.

Give us a short bio of presenters

including relevant teaching experience. If you have recorded talks or tutorials available online, please include links. *

Ondřej Čertík

Ondřej is the original author of SymPy, that he started in 2007. He earned his Ph.D. in Chemical Physics from University of Nevada, Reno in 2012, then he started as a PostDoc at Los Alamos National Laboratory (LANL) and was converted to a staff scientist there a year later. Ondřej uses Fortran and C++ for high performance production codes and Python for visualization, symbolic and numeric computation, and other tasks. He has co-taught a tutorial on SymPy at the SciPy 2013 conference.

Jason K. Moore

Jason is a developer with both the SymPy and PyDy projects. He utilizes both packages to run optimal control algorithms for biomechanical systems, in particular data driven powered prosthetic designs. He is a strong proponent for Open Science and has a PhD in Mechanical and Aerospace Engineering from UC Davis. Jason has given numerous scientific talks, been an undergraduate lecturer, is a certified Software Carpentry instructor, and lead several scientific computing workshops including tutorials at PyCon and SciPy in the past.

Amit Kumar

Amit is a developer of SymPy. He is involved with the project for over an year. He also worked on a Google Summer of Code project with SymPy in 2015 improving the solvers and sets module. Amit has given talks at PyDelhi Conference, assisted the SymPy workshop at PyCon India 2015 and also taught a tutorial on SymPy at FOSSASIA 2016 conference at Singapore.

Harsh Gupta

Harsh is a SymPy developer and a student at IIT Kharagpur. He started the work on the new solveset module as his Google Summer of Code project in 2014, then he mentored a student in 2015 to improve and expand the work he started. He is interested in all aspects of Free and Open Source Software and a Free Society in general. He has interned at Continuum Analytics, he also helped create a web portal highlighting the gender in the biographies on Wikipedia. More recently he volunteered with savetheinternet.in coalition which galvanized the support for net-neutrality in India ultimately leading to a prohibition on Zero Rating.

Sartaj Singh

Sartaj is a developer with SymPy. He has been involved with the project for over an year. He also worked on a Google Summer of Code project with SymPy in 2015 'Improving the series package and limits in SymPy'.

Please provide detailed setup instructions for all necessary software. *

What skills are needed to successfully participate in your tutorial

Please select one:

  • None
  • Numpy basics
  • Numpy advanced
  • SciPy
  • Scikit Learn
  • Pandas
  • Matplotlib
  • C++

If other topics are a prerequisite, please explain further.

TODO

Please provide a short Python program that can be used to verify whether a participants environment is set up correctly.

from sympy import *

All tutorials will be reviewed for completeness a week prior to the conference. Do you foresee any problems meeting that deadline? *

No

Will you be available to help with setup instructions to your pre-tutorial email list in the week prior to your tutorial?

Yes

Would you like to be a member of the Program Committee?

  • Yes
  • No

Which domain would you like to review?

  • General Track
  • Data Science
  • HPC
  • Earth & Space Sciences
  • Biology & Medicine
  • Engineering
  • Social Sciences
  • Special Purpose Databases
  • Education
  • Reproducibility