Computational Resources Author Guide
Computational resources let a Physics Library article point to reviewed,
precomputed files that help readers explore an example. Typical resources are static
explorers, source archives, provenance files, licenses, and CSV data. They are
meant to support the mathematical article; they are not a separate article
type.
1 What authors should expect
A computational resource is attached to a saved article by uploading a small manifest
file named
computational-resources.json
through the normal article file attachment controls. The filename matters. Do not
rename it.
After the article is saved, a Computational Resources section appears on the saved
article page. The section appears outside the rendered article body, near the
view-style controls and article metadata. It remains visible when a reader switches
between HTML, pdf, page images, and source views.
The editor preview only renders the current LaTeX body. It does not show the
saved article’s file attachments or the surrounding article page. Therefore it is normal
for the computational resources section to be absent from preview and to appear only
after saving the article.
2 What computational resources are
Computational resources are reviewed, static publication artifacts. They may include:
- an offline HTML explorer;
- a downloadable source archive;
- CSV result data;
- a provenance file recording the software/runtime used to produce the
results;
- a license notice.
Viewing the article or moving controls in an explorer should not start a
calculation on the Physics Library server. Published explorers should use saved
results. This keeps the site responsive, inexpensive to host, and resistant to
automated requests that would otherwise waste computation.
3 How to attach an approved resource
For an already approved computational resource, the maintainer will provide a
manifest file. For example:
{
"schema_version": 1,
"resources": ["julia-oscillator"]
}
To attach it to an article:
- Open the article editor.
- In the attachment area, choose the file named
computational-resources.json.
- Upload it through the existing filebox controls.
- Save or update the article normally.
- Open the saved article page and check the Computational Resources
section.
The section does not require a new LaTeX command in the article body.
Removing the manifest from the article’s attachments and saving the article removes
the section.
4 Example - Simple Harmonic Oscillator
A simple use case in action is the simple harmonic oscillator, .
5 Writing article text that uses a resource
The article body should still explain the mathematics. The resource should be
presented as supporting material, not as a substitute for the argument.
Good article text usually includes:
- the equation or model being studied;
- the parameters used in the published computation;
- what was held fixed and what was varied;
- what the saved figures or data show;
- how a reader can reproduce the calculation from the source archive;
- any assumptions or limitations of the model.
For example, an article might say that an explorer displays saved trajectories for
a damped harmonic oscillator and that changing the displayed case does not solve the
differential equation in the browser.
6 Licensing convention
Physics Library article text, mathematical exposition, and figures should keep
the normal Physics Library article license, currently Creative Commons
Attribution-ShareAlike. Computational source code should use a software license. For
Physics Library computational bundles, the recommended default is the GNU
General Public License, version 3 or later.
A typical bundle should therefore say:
- source code, build scripts, tests, and browser scripts: GPLv3 or later;
- article-style text, mathematical exposition, plots, and result data: Physics
Library CC BY-SA unless otherwise stated.
This split keeps software under a software license while preserving the normal
share-alike treatment of Physics Library mathematical content.
7 What authors should not do
- Do not paste arbitrary external URLs into the manifest.
- Do not upload code and expect the server to run it.
- Do not use article preview as the final check for resources; save and inspect
the article page.
- Do not rename computational-resources.json.
- Do not publish unexplained numbers without enough context for a reader
to reproduce or evaluate them.
8 Checklist before asking for review
- The article explains the model, parameters, and limitations.
- The resource is static and does not require server-side execution.
- The source archive contains the code needed to reproduce the published
results.
- The provenance file records the runtime and important file hashes.
- The license notice distinguishes software from article/math materials.
- The saved article shows the Computational Resources section.
- The explorer, source archive, provenance, license, and CSV links all open.
When in doubt, keep the article readable without the resource. A good computational
resource should make the article more useful, not make the article dependent on a
particular browser feature or live computation service.
9 List of available computational resources
This is a new feature so expect it to grow. For now this is the list of computational
resources.
- julia-oscillator