Paper for SymPy
TeX Jupyter Notebook Python Other
Latest commit 5e89556 Jan 6, 2017 @certik certik committed on GitHub Merge pull request #224 from sympy/published
Don't use Unicode characters in the BibTeX citation
Permalink
Failed to load latest commit information.
authors Fix spelling of Amit's name Dec 9, 2016
images Rename image files with figure numbers Oct 4, 2016
.gitignore Add *-diff.tex to the .gitignore Oct 5, 2016
.latex.yml Add ShareLatex CI Mar 15, 2016
.travis.yml Install texlive-generic-recommended in Travis Oct 5, 2016
CODE_OF_CONDUCT.md Add Code of Conduct (same as SymPy's) Mar 16, 2016
Dockerfile Fix Dockerfile to build the pdf May 13, 2016
LICENSE Updated to MIT/CC-BY and included LICENSE file. Apr 19, 2016
Makefile Make sure the supplement is built before the paper Oct 19, 2016
README.md Don't use Unicode characters in the BibTeX citation Jan 5, 2017
TODO.md Change "in-depth" to "in depth" everywhere Sep 29, 2016
aaron-signature.png Add my signature Sep 27, 2016
architecture.tex Reference specific section numbers for the supplement throughout the … Oct 19, 2016
assumptions.tex Move the text in parentheses into a footnote Oct 21, 2016
basic_usage.tex Move immutability paragraph to the architecture section Sep 30, 2016
calculus.tex Reference specific section numbers for the supplement throughout the … Oct 19, 2016
categories.tex Add periods at the end of all the figure captions Oct 19, 2016
comparison_with_mma.tex I doubt that ^ as power op is "more common". Oct 2, 2016
conclusion_and_future_work.tex Apply grammar fixes suggested by @certik at #208 Oct 5, 2016
coverletter.tex Use the PDF logo Sep 28, 2016
coverletter2.tex Update date on the coverletter2 Nov 9, 2016
diff.xsh Only build the paper and supplement in diff.xsh Oct 19, 2016
diophantine.tex Break the solution up more evenly Sep 30, 2016
domain_specific.tex Update several citations as requested by PeerJ staff Dec 9, 2016
examples.tex Don't use comma for symbols() Oct 2, 2016
features.tex Update several citations as requested by PeerJ staff Dec 9, 2016
gamma.tex Update several citations as requested by PeerJ staff Dec 9, 2016
gruntz.tex Editor note 7 Oct 17, 2016
introduction.tex Update several citations as requested by PeerJ staff Dec 9, 2016
logic.tex Use \verb|^| Sep 30, 2016
logo-curves.pdf Update logo-curves.pdf Sep 28, 2016
matrices.tex Reference specific section numbers for the supplement throughout the … Oct 19, 2016
nsimplify.tex Move nsimplify and examples to their own files May 24, 2016
numerics.tex Use \middle in the Meijer G-function formula Dec 8, 2016
paper.bib Remove smart quote that was causing the build to fail Dec 12, 2016
paper.tex Remove line numbers from the paper and supplement Dec 8, 2016
polys.tex Reference specific section numbers for the supplement throughout the … Oct 19, 2016
pprint.tex Reduce the line spread of the Unicode pprint example Jun 14, 2016
printers.tex Clarify a sentence Sep 30, 2016
projects_that_depend_on_sympy.tex Update several citations as requested by PeerJ staff Dec 9, 2016
quantum_examples.ipynb Rename image files with figure numbers Oct 4, 2016
rebuttal.tex Rename image files with figure numbers Oct 4, 2016
rebuttal2.tex Update rebuttal2.tex Oct 21, 2016
series.tex Grammar Sep 30, 2016
sets.tex Grammar Sep 30, 2016
siamart0216.cls Repeat each footnote symbol, per SIAM guidelines May 18, 2016
siamart0216_uppercase_fix.tex Fix a bug in the SIAM Article Template May 11, 2016
siamplain.bst Add SIAM style files Apr 21, 2016
simplification.tex Move a paragraph up Oct 19, 2016
solvers.tex Reference specific section numbers for the supplement throughout the … Oct 19, 2016
stats.tex Update several citations as requested by PeerJ staff Dec 9, 2016
supplement.tex Use S prefix for supplement section numbers Dec 8, 2016
tensors.tex More consistent use of "module", "submodule", and "package" Aug 19, 2016
test-paper.py Code quality Sep 23, 2016
upload_travis.sh Travis: Fix supplement name in upload Oct 6, 2016
wlpeerj.cls Remove the keywords from the paper Oct 10, 2016

README.md

SymPy Paper

This is the source repository for the paper:

SymPy: symbolic computing in python

This paper has been published in PeerJ Computer Science and can be found at https://peerj.com/articles/cs-103/.

To cite this paper, please use

Meurer A, Smith CP, Paprocki M, Čertík O, Kirpichev SB, Rocklin M, Kumar A, Ivanov S, Moore JK, Singh S, Rathnayake T, Vig S, Granger BE, Muller RP, Bonazzi F, Gupta H, Vats S, Johansson F, Pedregosa F, Curry MJ, Terrel AR, Roučka Š, Saboo A, Fernando I, Kulal S, Cimrman R, Scopatz A. (2017) SymPy: symbolic computing in Python. PeerJ Computer Science 3:e103 https://doi.org/10.7717/peerj-cs.103

Here is the BibTeX entry.

@article{10.7717/peerj-cs.103,
 title = {SymPy: symbolic computing in Python},
 author = {Meurer, Aaron and Smith, Christopher P. and Paprocki, Mateusz and \v{C}ert\'{i}k, Ond\v{r}ej and Kirpichev, Sergey B. and Rocklin, Matthew and Kumar, AMiT and Ivanov, Sergiu and Moore, Jason K. and Singh, Sartaj and Rathnayake, Thilina and Vig, Sean and Granger, Brian E. and Muller, Richard P. and Bonazzi, Francesco and Gupta, Harsh and Vats, Shivam and Johansson, Fredrik and Pedregosa, Fabian and Curry, Matthew J. and Terrel, Andy R. and Rou\v{c}ka, \v{S}t\v{e}p\'{a}n and Saboo, Ashutosh and Fernando, Isuru and Kulal, Sumith and Cimrman, Robert and Scopatz, Anthony},
 year = 2017,
 month = jan,
 keywords = {Python, Computer algebra system, Symbolics},
 abstract = {
            SymPy is an open source computer algebra system written in pure Python. It is built with a focus on extensibility and ease of use, through both interactive and programmatic applications. These characteristics have led SymPy to become a popular symbolic library for the scientific Python ecosystem. This paper presents the architecture of SymPy, a description of its features, and a discussion of select submodules. The supplementary material provide additional examples and further outline details of the architecture and features of SymPy.
         },
 volume = 3,
 pages = {e103},
 journal = {PeerJ Computer Science},
 issn = {2376-5992},
 url = {https://doi.org/10.7717/peerj-cs.103},
 doi = {10.7717/peerj-cs.103}
}

You may also download other citation formats at the above URL.

This repository contains or links to all of the information needed to reproduce the results in the paper.

The latest rendered version of the PDF can be viewed via the Travis build:

Build Status

Latest pdf: paper-master.pdf

Preprint

A preprint of this paper has been submitted to PeerJ.

Contributing

Join our chat room to discuss contributions:

Join the chat at https://gitter.im/sympy/sympy-paper

License

CCBY

license

The contents of this repository are dual licensed under the Creative Commons Attribution 4.0 International License and the MIT License. See the LICENSE file for details.

LaTeX Build Instructions

Install a full LaTeX suite on your preferred operating system. To build the PDF type

make

in the source directory. This will produce paper.pdf, the main paper, and supplement.pdf, the supplementary material.

Alternatively, you can use docker, see the instructions in our Dockerfile.

You can test all the examples in the paper with

make test

This requires that SymPy 1.0 (exactly) is installed.

Authorship Criteria

We follow the ICMJE criteria for authorship:

  1. Substantial contributions to the conception or design of the work; or the acquisition, analysis, or interpretation of data for the work; AND

  2. Drafting the work or revising it critically for important intellectual content; AND

  3. Final approval of the version to be published; AND

  4. Agreement to be accountable for all aspects of the work in ensuring that questions related to the accuracy or integrity of any part of the work are appropriately investigated and resolved.

Anyone who satisfies and is willing to accept these responsibilities and commitments is welcome to be an author on this publication.