You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
-[ ] Run `dotnet test` across all target frameworks to confirm no regressions
81
-
-[ ] Verify all 1,001+ tests pass
90
+
## Section D: Release Roadmap (Step-by-Step)
82
91
83
-
### Step 4: CI Pipeline Transparency (Recommended)
84
-
-[ ] The CI uses shared workflows from `HydrologicEngineeringCenter/dotnet-workflows` which are opaque to reviewers
85
-
-[ ] Consider adding a brief comment in the workflow YAML or a CI section in the README explaining what the pipeline does
86
-
-[ ] The CI config specifies `dotnet-version: '9.0.x'` — consider testing against all target frameworks (8.0, 9.0, 10.0) or documenting that the shared workflow handles multi-targeting
92
+
### Step 1: Create Pull Request to `main`
93
+
-[ ] Push latest `bugfixes-and-enhancements` to origin
94
+
-[ ] Create PR:
95
+
```
96
+
gh pr create --base main --head bugfixes-and-enhancements \
97
+
--title "v2.0.0: Major update" --body-file RELEASE_NOTES.md
98
+
```
99
+
-[ ] Wait for CI (Integration.yml) to pass
100
+
-[ ] Review and merge PR
87
101
88
-
### Step 5: Create Release Tag
89
-
-[ ] Merge the `bugfixes-and-enhancements` branch to `main`
90
-
-[ ] Create git tag: `git tag v2.0.0`
91
-
-[ ] Push tag: `git push origin v2.0.0`
92
-
-[ ] Create a GitHub Release from the tag with release notes
@@ -116,9 +157,58 @@ Complete these steps in order before submitting to JOSS.
116
157
117
158
---
118
159
160
+
## Section E: v2.0.0 Release Notes
161
+
162
+
### v2.0.0 — Major Update
163
+
164
+
This is a major update to Numerics with 274 files changed, 24,476 insertions, and 4,400 deletions since v1.0.0. Highlights include new distributions, improved MCMC inference, enhanced numerical methods, and comprehensive documentation.
165
+
166
+
#### New Distributions
167
+
- Dirichlet distribution (multivariate)
168
+
- Multinomial distribution (multivariate)
169
+
- Multivariate Student-t distribution
170
+
- Student-t copula
171
+
172
+
#### Bayesian Inference & MCMC
173
+
- Improved Gelman-Rubin convergence diagnostics
174
+
- Refactored Noncentral-T to use Brent.Solve
175
+
- Enhanced MCMC sampler reliability and convergence
176
+
177
+
#### Numerical Methods
178
+
- Linear algebra enhancements
179
+
- Root-finding improvements
180
+
- ODE solver improvements
181
+
- Improved adaptive integration
182
+
183
+
#### Data & Statistics
184
+
- Time series download improvements
185
+
- Hypothesis test enhancements
186
+
- Enhanced parameter estimation methods
187
+
- Autocorrelation and convergence diagnostics improvements
188
+
189
+
#### Optimization
190
+
- Comprehensive correctness improvements across all optimizers
- 1,006+ unit tests validated against published references
200
+
- JOSS paper and metadata (CITATION.cff, codemeta.json)
201
+
- CONTRIBUTING.md and CODE_OF_CONDUCT.md
202
+
- 25+ documentation files covering all library capabilities
203
+
- NuGet publishing workflow for nuget.org
204
+
205
+
---
206
+
119
207
## Notes
120
208
121
-
-**Word limit**: JOSS papers should be 750-1,750 words (https://joss.readthedocs.io/en/latest/paper.html). Current paper is ~1,317 words.
209
+
-**Word limit**: JOSS papers should be 750-1,750 words (https://joss.readthedocs.io/en/latest/paper.html). Current paper is ~1,215 words.
122
210
-**"Jery R. Stedinger"**: This spelling in `paper.bib` is correct (confirmed on USGS publications). Be prepared to explain if a reviewer questions it.
123
211
-**England 2019 vs 2018**: Bulletin 17C was originally published March 2018; the `2019` date refers to the v1.1 revision. Both are acceptable in the literature.
124
212
-**ter Braak citation**: The 2008 paper describes DE-MCzs (with snooker updater). The library has both `DEMCz` and `DEMCzs` classes. The citation is appropriate since the 2008 paper supersedes the 2006 original.
213
+
-**NuGet API key expiration**: The nuget.org API key expires after 365 days max. Set a calendar reminder to regenerate it.
214
+
-**Versioning**: Version is derived from git tags (e.g., `v2.1.0` → package version `2.1.0`). The `.csproj` version is a fallback for local builds only.
Copy file name to clipboardExpand all lines: paper/paper.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -50,15 +50,15 @@ Numerics fills this gap by providing domain-specific capabilities within .NET:
50
50
51
51
-**Hydrology-specific distributions**: Log-Pearson Type III, Generalized Extreme Value, Pearson Type III, Generalized Pareto, and Kappa-Four, with L-moment parameter estimation [@hosking1990; @hosking1997] that outperforms conventional moments for the small samples typical of flood records.
52
52
-**Mixed-population and competing-risk models**: Mixture distributions [@waylen1982; @alila2002] for sites where floods arise from distinct causal mechanisms such as rainfall, snowmelt, or dam-regulated releases, and competing-risks models [@crowder2001; @bedford2001] for reliability analysis with multiple failure modes.
53
-
-**Bayesian inference**: Six MCMC samplers, including Random Walk Metropolis-Hastings, Adaptive RWMH [@haario2001], Differential Evolution MCMC [@terbraak2008], Hamiltonian Monte Carlo [@neal2011], No-U-Turn Sampler (NUTS) [@hoffman2014], and Gibbs, with improved Gelman-Rubin convergence diagnostics [@gelmanrubin1992; @vehtari2021].
53
+
-**Bayesian inference**: Six MCMC samplers, including Random Walk Metropolis-Hastings, Adaptive RWMH [@haario2001], Adaptive Differential Evolution MCMC [@terbraak2008], Hamiltonian Monte Carlo [@neal2011], No-U-Turn Sampler (NUTS) [@hoffman2014], and Gibbs, with improved Gelman-Rubin convergence diagnostics [@gelmanrubin1992; @vehtari2021].
54
54
-**Uncertainty quantification**: Bootstrap resampling methods [@efron1993] for confidence intervals on design estimates, a requirement in dam and levee safety risk assessments.
-**Adaptive numerical integration**: Gauss-Kronrod quadrature [@piessens1983] and VEGAS adaptive Monte Carlo integration [@lepage1978] for efficiently evaluating complex risk integrals involving multiple system components and failure modes, a core computation in quantitative risk assessment.
57
57
-**Machine learning**: Supervised and unsupervised algorithms, including generalized linear models, decision trees, random forests, k-nearest neighbors, k-means clustering, and Gaussian mixture models for regression, classification, and clustering tasks in risk assessment workflows.
58
58
59
59
# State of the Field
60
60
61
-
General-purpose .NET numerical libraries exist, most notably Math.NET Numerics [@mathnetnumerics], which provides linear algebra, probability distributions, and basic statistics. However, Math.NET Numerics does not include L-moment estimation, hydrology-specific distributions (Log-Pearson Type III, Kappa-Four), mixture and competing-risk models, adaptive integration, bootstrap resampling, copulas, or global optimization algorithms. Math.NET Numerics includes basic MCMC samplers (Metropolis-Hastings, Hybrid Monte Carlo, Slice), but lacks the adaptive and ensemble methods (Adaptive RWMH, DE-MCzs, NUTS) needed for reliable calibration of hydrologic models. Contributing these features to Math.NET Numerics was not pursued because the scope of domain-specific functionality, the distinct API design requirements for risk assessment workflows, and the need for long-term maintenance by a domain-expert organization warranted an independent library.
61
+
General-purpose .NET numerical libraries exist, most notably Math.NET Numerics [@mathnetnumerics], which provides linear algebra, probability distributions, and basic statistics. However, Math.NET Numerics does not include L-moment estimation, hydrology-specific distributions (Log-Pearson Type III, Kappa-Four), mixture and competing-risk models, adaptive integration, bootstrap resampling, copulas, or global optimization algorithms. Math.NET Numerics includes basic MCMC samplers (Metropolis-Hastings, Hybrid Monte Carlo, Slice), but lacks the adaptive and ensemble methods (Adaptive RWMH, DE-MCzs, NUTS) commonly applied for Bayesian inference of hydrologic models. Contributing these features to Math.NET Numerics was not pursued because the scope of domain-specific functionality, the distinct API design requirements for risk assessment workflows, and the need for long-term maintenance by a domain-expert organization warranted an independent library.
62
62
63
63
In other language ecosystems, Python's SciPy [@virtanen2020] provides broad numerical capabilities but lacks specialized hydrological distributions and L-moment estimation. R packages such as `lmom`[@hosking2019lmom] and `evd`[@stephenson2002evd] offer these features individually, but integrating R into .NET production applications introduces runtime dependencies and complicates deployment in regulated government environments. No single package in any ecosystem consolidates mixture distributions, competing-risk models, adaptive integration, extreme-value statistics, global optimization, bootstrapping, machine learning, and MCMC into a unified library for engineering risk analysis.
0 commit comments