pyvideo.org: Videos of Aaron Meurerhttp://pyvideo.org/speaker/1021/aaron-meurer/rssen-usWed, 09 Jul 2014 00:00:00 -0500500Symbolic Computing with SymPy, SciPy2013 Tutorial, Part 1 of 6http://pyvideo.org/video/1872/symbolic-computing-sympy-scipy2013-tutorial-part-1<p>Abstract</p>
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.
<p>Description</p>
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.
Outline
* installing, configuring and running SymPy
* basics of expressions in SymPy
* traversal and manipulation of expressions
* common issues and differences from other CAS
* setting up and using printers
* querying expression properties
* not only symbolics: numerical computing (mpmath)
* Mathematical problem solving with SymPy
Required Packages
Python 2.x or 3.x, SymPy (most recent version) Optional packages: IPython, matplotlib, NetworkX, GMPY, numpy, scipyAaron Meurer,Mateusz Paprocki,Ondrej Certikhttp://pyvideo.org/video/1872/symbolic-computing-sympy-scipy2013-tutorial-part-1Conda: A Cross Platform Package Manager for any Binary Distributionhttp://pyvideo.org/video/2735/conda-a-cross-platform-package-manager-for-any-b<p>Abstract</p>
Conda is an open source package manager, which can be used to manage binary packages and virtual environments on any platform. It is the package manager of the Anaconda Python distribution, although it can be used independently of Anaconda. We will look at how conda solves many of the problems that have plagued Python packaging in the past, followed by a demonstration of its features.
<p>Description</p>
We will look at the issues that have plagued packaging in the Python ecosystem in the past, and discuss how Conda solves these problems. We will show how to use conda to manage multiple environments. Finally, we will look at how to build your own conda packages.
- What is the packaging problem? We will briefly look at the history of the problem and the various solutions to it. There are two sides to the packaging problem: the problem of installing existing packages and the problem of building packages to be installed. We look at the history of distutils, setuptools, distribute, and pip, the some of the problems they solved, and issues that arose, particularly for the scientific Python community.
- We will look at the conda package format, the design decisions that guided the format, and the implications of those decisions. A conda package is a bz2 compressed tarfile of all the files installed in a prefix, along with a metadata directory for the package. A conda package is typically installed by hard linking these files into the install prefix. Conda packages should be relocatable, so that they can be installed into any prefix. This allows conda packages to be installed into many virtual environments at once. A conda package is not Python specific.
- We will look at how basic commands for installation and environment management. Conda uses a SAT solver to solve package dependency constraints, which is a simple, rigorous, and modern way to ensure that the set of packages that are installed are consistent with one another.
- Conda has an extensive build framework which allows anybody to build their own conda packages. We will show how to use these tools and how to upload them to Binstar, a free packaging hosting service.Aaron Meurer,Ilan SchnellWed, 09 Jul 2014 00:00:00 -0500http://pyvideo.org/video/2735/conda-a-cross-platform-package-manager-for-any-bSymPy Tutorial Part 1http://pyvideo.org/video/2706/sympy-tutorial-part-1<p>Abstract</p>
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.
<p>Description</p>
In this tutorial we will introduce attendees to SymPy. We will show basics of constructing and manipulating mathematical expressions in SymPy, 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 some practical problems with SymPy. This will include showing how to interface SymPy with popular numeric libraries like NumPy.
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).Aaron Meurer,Jason K. Moore,Matthew RocklinWed, 09 Jul 2014 00:00:00 -0500http://pyvideo.org/video/2706/sympy-tutorial-part-1SymPy Tutorial Part 2http://pyvideo.org/video/2713/sympy-tutorial-part-2<p>Abstract</p>
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.
Aaron Meurer,Jason K. Moore,Matthew RocklinWed, 09 Jul 2014 00:00:00 -0500http://pyvideo.org/video/2713/sympy-tutorial-part-2SymPy Tutorial Part 3http://pyvideo.org/video/2707/sympy-tutorial-part-3<p>Abstract</p>
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.
Aaron Meurer,Jason K. Moore,Matthew RocklinWed, 09 Jul 2014 00:00:00 -0500http://pyvideo.org/video/2707/sympy-tutorial-part-3SymPy Tutorial Part 4http://pyvideo.org/video/2711/sympy-tutorial-part-4<p>Abstract</p>
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.
Aaron Meurer,Jason K. Moore,Matthew RocklinWed, 09 Jul 2014 00:00:00 -0500http://pyvideo.org/video/2711/sympy-tutorial-part-4