sympy-paper icon indicating copy to clipboard operation
sympy-paper copied to clipboard

Should we make the paper computionally reproducible?

Open moorepants opened this issue 9 years ago • 4 comments

The last few papers I've written, I've taken the extra time to ensure the results and paper are computationally reproducible (i.e a single make command will "build" the paper from raw data and source code). See this paper for an example:

https://github.com/csu-hmc/perturbed-data-paper

This was a pain for my co-authors because they weren't famliar with the tools and workflow, but it should be a breeze for this set of authors. It definitely takes more time though.

moorepants avatar Mar 16 '16 22:03 moorepants

+1, sounds like a plan. Though I bet this will only affect the examples.

scopatz avatar Mar 16 '16 22:03 scopatz

What is the best tooling to autogenerate the output from "example" inputs?

asmeurer avatar Mar 17 '16 03:03 asmeurer

A make file can be sufficient. There are other tools for this stuff to like sake and pydoit. Is that what you are looking for? There are also ways to "weave" Python code into a LaTeX document. Things like this: http://mpastell.com/pweave/.

It also depends what we want to do. We could simply have SymPy code output something to a text file and then include it in the LaTeX document.

Also, minted seems to be the best way to get nice syntax highlighting in LaTeX docs.

moorepants avatar Mar 17 '16 03:03 moorepants

There's also the question of how we want the equation output to be formatted. We could format it using the default str printer (i.e., as if no init_printing() were called), the Unicode pretty printer, or rendered inline LaTeX, which would look the best, but could also be confusing (but then again, in the Jupyter notebook, what you see is rendered LaTeX).

I bring it up because if we do rendered LaTeX then we will need some kind of custom script that will take an example, run it, and insert latex(output) inline with the example.

asmeurer avatar Mar 17 '16 03:03 asmeurer