Skip to content

Add JOSS 2.0 paper draft - #200

Open
pavelkomarov wants to merge 46 commits into
masterfrom
joss2.0
Open

Add JOSS 2.0 paper draft#200
pavelkomarov wants to merge 46 commits into
masterfrom
joss2.0

Conversation

@pavelkomarov

Copy link
Copy Markdown
Collaborator

paper/paper.md and paper/paper.bib covering the updated package: seven method families, multidimensional support, variable step size, missing data, circular domains, robustdiff, tvrdiff, and hyperparameter optimization. References companion Taxonomy paper (arXiv:2512.09090).

pavelkomarovand others added 3 commits April 1, 2026 14:19
paper/paper.md and paper/paper.bib covering the updated package:
seven method families, multidimensional support, variable step size,
missing data, circular domains, robustdiff, tvrdiff, and hyperparameter
optimization. References companion Taxonomy paper (arXiv:2512.09090).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Fix affiliations from Taxonomy paper (Pavel: ECE/UW, Kutz: Autodesk Research)
- Remove ORCIDs and Zenodo forward reference
- Add NSF grant acknowledgement (2112085) and Sasha Aravkin acknowledgement
- Fix framing of method families (reorganization, not new families)
- Remove citation count; describe impact qualitatively
- Expand software design: variable step size correctness, robustdiff linear time,
Huber TVR, optimization improvements (caching, robust loss, log q/r ratio),
CI and non-tautological testing
- Add references: Savitzky-Golay 1964, RTS 1965, Aravkin 2013, derivative package
- Target ~1250 words
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Single-line paragraphs throughout
- "implements" not "organizes"
- Remove "time" as dimension name; use "sample spacing", "sample interval", etc.
- Recapitulate optimization framework in Statement of Need
- Fix derivative pkg description (drop ambiguous "missing data handling")
- "Updated package design" replaces "The revision moved away from..."
- Expand missing data and variable step into separate paragraphs
- Emphasize both as new additions for practicality
- Huber loss leads the robustness paragraph; piecewise smoothness is secondary
- Remove `pip install pynumdiff[advanced]` sentence
- "scales linearly" replaces "runs in time linear"
- Deprecated interface sentence qualified "pending removal"
- Comma/semicolon review throughout
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
pavelkomarovand others added 16 commits April 1, 2026 19:00
- Comprehensive paper revision: capability table, architecture paragraph,
spectral in family list, expanded Research Impact (docs/tutorials/license/
PySINDy), updated AI disclosure, three-step usage description
- Add kalman1960, ahnert2007, pysindy references to paper.bib
- Add .github/workflows/draft-pdf.yml to compile JOSS draft PDF on push
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Unicode ✓ doesn't survive the pandoc → LaTeX pipeline used by JOSS;
$\checkmark$ renders correctly in the compiled PDF.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Sharper opening: "no single approach wins universally"
- Colorful verbs: stitch together, sliver, piecemeal
- Trimmed parenthetical definitions and redundant qualifiers
- AI disclosure collapsed to one sentence
- Softer hedges removed (evidenced by, a natural use case → natural)
- ~130 words cut while preserving all substance
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…osure
Em dashes replaced throughout: colons where introducing a list or elaboration,
commas for appositives and trailing clauses, parentheses for inline asides.
AI disclosure corrected: Claude implemented revisions from author feedback;
authors did the reviewing and hand-editing, not Claude.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Variable Step→Var. step, Missing Data→Missing, Outlier Robust→Robust,
Circular Domain→Circular; trim caption and intro sentence.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Trim two trailing sentences from Package design; compress Software
architecture to two sentences. Restore 'Variable step' column header.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…'t have searchability issues like with pysindy
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Add Maria Protogerou (UW Applied Mathematics) as an author, list wavelet
fitting under method family (4), add the waveletdiff capability-table row,
and credit PyWavelets among the delegated dependencies.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
pavelkomarovand others added 5 commits June 12, 2026 13:48
Trim ~18 words of filler from the Package design and Software architecture
paragraphs so Table 1 no longer breaks across pages 2-3.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
actions/checkout@v4 -> v6 and actions/upload-artifact@v4 -> v7 (Node 24
runtime; inputs unchanged).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Recent code revisions and paper edits used Claude Opus 4.8 alongside the
earlier Sonnet 4.6 drafting.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
pavelkomarovand others added 19 commits August 20, 2026 15:10
Drops "2.0" from the title, since the reviewed release is 0.2.3 and the
mismatch was causing confusion, and notes the generation and version in the
Summary instead. Replaces the vague changelog paragraph in State of the Field
with concrete claims a reader can check against Table 1.
Trims roughly 110 words of duplication to make room: the Statement of Need no
longer restates the Summary's opening or the optimization details Software
Design covers, the variable-spacing and missing-data paragraphs merge into one
since Table 1 already enumerates them, the tvgamma equation moves to the docs,
and the Research Impact section drops the repo inventory reviewers verify in
the repo itself.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Auditing the paper against the v0.2 through v0.2.3 release notes turned up two
omissions. Caching was dropped in the previous commit's trim, and
suggest_method was never mentioned at all, though it is the clearest
demonstration of what the unified interface buys a user.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
…ments
Replaces the tvgamma initialization heuristic, three magic constants that
belong in the docs, with the loss the optimizer actually minimizes. That makes
the ground-truth-free claim concrete, since fidelity is measured by integrating
the estimate back against the measured signal, and it lets the Huber sentence
name which term it robustifies.
Also renames Research Impact to Research Impact Statement to match the name
JOSS uses, notes how AI-written code was verified as their disclosure policy
asks, refreshes the date, and simplifies the Summary to name the 0.2.x series
rather than explain the versioning convention.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
The date field is the submission date, and the pre-review issue confirms that
was 1 April 2026, so the refresh to August was wrong. Also drops the
verification clause from the AI disclosure, since the existing sentence about
reviewing and editing by hand already describes how outputs were checked.
ORCIDs confirmed against the public registry by employment record. Komarov and
Protogerou remain unlisted.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
…tions
The Research Impact Statement had shrunk the notebooks to a passing clause,
which undersells them. JOSS accepts reproducible materials and benchmarks as
impact evidence, and the seven notebooks demonstrate nearly every capability
the paper claims, so they are now described by what they cover. Also corrects
the claim that they live on the docs site; they live in the repository, and
readthedocs carries the API documentation.
The bibliography mixed two name encodings for van Breugel, so the 2020 and
2022 entries rendered and alphabetized differently, and in-text citations
showed the given name. Comma form makes the surname unambiguous.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
The table split across pages, stranding two rows under a repeated header. Six
of its twelve rows carried no checkmarks, so the table now lists only methods
with capabilities beyond the multidimensional support they all share, and the
lead-in states the full count.
Comma form alone left the CSL style treating "van" as a particle, so citations
rendered as "Breugel et al." Bracing the surname inside comma form makes it a
single unit.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Restores the six methods dropped in the previous commit without bringing back
the page break. The matrix spent half its height on empty cells because it was
keyed by method, so it is now keyed by capability, listing the methods that
have each. Every cell carries information, all twelve methods are named, and
the table is shorter than either previous version.
It also answers the question users actually ask. Someone with gaps in their
data wants to know which methods tolerate that, rather than reading down a
column of blanks.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
…e row
Keeps the matrix shape, which shows at a glance how many capabilities a method
carries, while still naming all twelve. The six that support only
multidimensional data share a single trailing row rather than six rows of
empty cells, so the table stays short enough to hold one page.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
The collapsed matrix did not work. Its first column is narrow, so the six
method names in the trailing row stacked one per line, making the table no
shorter than the version it replaced and splitting it across pages again.
The capability-keyed table gives its methods column half the page, so twelve
names wrap to two or three lines. Measured against the proof, it holds one
page while still naming every method.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@pavelkomarov