Jeremy Magland Add modal-series and fd-second-order submissions for string-pluck-v1, with results workflow
| .mochi | |
| solutions | |
| solvers | |
| .gitignore | |
| README.md |
Solutions to the string challenges#
This repository collects solutions to the challenges defined in challenges/string. The results, with errors, timings, audio players, and links, are published at challenges/string-solutions/site and regenerated by a workflow on every push to main.
Layout#
solutions/<challenge-id>/<submission-id>.json one submission: metadata and one or more solutions
solutions/<challenge-id>/<submission-id>/*.wav the output files, referenced from the JSON
solvers/ source code of the example submissions
Submitting#
- Read the challenge specification, for example string-pluck-v1, and produce the output file exactly as specified (format, sample rate, length, scale).
- Choose a submission ID (lowercase letters, digits, hyphens) and write
solutions/<challenge-id>/<submission-id>.jsonfollowing the schema. The two files insolutions/string-pluck-v1/are complete examples. - Put the wav files in
solutions/<challenge-id>/<submission-id>/and reference them by relative path, or host them elsewhere and reference them by URL. Files over 1 MiB must be pushed with git rather than written through the web interface. - If your submission contains several solutions of known relative accuracy (for example, a sequence of increasing resolution), record that in
more_accurate_thanon each solution. This is what allows the reference solution to be chosen automatically; see the challenge repository README for the rule. - Open a pull request. The workflow validates the files; once merged, the results site is rebuilt.
Timing is self-reported wall-clock time for producing the output signal, excluding file I/O, on the hardware named in the hardware field.
Validating locally#
pip install git+https://vault1.magland.org/challenges/string
challenge-tools validate --challenges <path-to-string-repo>/challenges --solutions solutions