Repository navigation
Release fireSense_ignitionPredict 1.2.0 - #28
Merged
Merged
Conversation
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0133867aFrmKtbhpNXasToP9
Thin caller for the shared pkgdown-module reusable workflow, which renders fireSense_IgnitionPredict.Rmd as a pkgdown article via SpaDES.core::moduleRmdToVignette(). Builds on pull requests to development and deploys to gh-pages on push. Same caller already running on fireSense_SpreadFit (#21). See PredictiveEcology/SpaDES-modules#40.
Removes scaleAgain() (no caller), commented-out code, the unreachable code
after stop("Not tested anymore") and a browser() leftover. No behaviour change.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
… scheduling 86 expectations (was 5). Fitted models are stand-ins that log the newdata they are given, so no xgboost is needed. All pass on development and on this branch; three tests of correct behaviour are skipped as known defects. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
The save event wrote sim$fireSense_IgnitionPredicted, which nothing creates, so it failed whenever .saveInitialTime was set. It now only emits a message, and IgnitionPredictSave() is gone. igDisAggFactor and the lambdaRescaleFactor default in IgnitionPredictRun() were computed and never read; the latter also wrote into the input fireSense_IgnitionFitted. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013B4sgRg9EwyHaAQdDzUaQW
IgnitionPredictRun() passed each year's covariates to fireSenseUtils::prepareCovariatesOuter(), which calls scale() on them, so they were standardized with that year's own mean and sd. The models were fitted on covariates standardized once over all fitting years, so a hot year and a cool year reached them looking the same. The fitted objects already carry the fit's constants as `scaleData`; use those, separately for ignition and escape. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013B4sgRg9EwyHaAQdDzUaQW
Keeps setup-toyIgnition.R identical to the copy in the scaling fix (PR #21), so the two merge in either order and these tests still pass once prediction needs scaleData. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013B4sgRg9EwyHaAQdDzUaQW
…aling Standardize prediction covariates with the fit's center and scale
development gained the fit-scaling fix (#21). Two conflicts, both resolved by keeping both sides: NEWS.md (the bug fix first, then the cleanup bullets under their own heading) and the end of fireSense_IgnitionPredict.R, where this branch had deleted IgnitionPredictSave() at the spot #21 added scaleAsFit(). scaleAgain() came back with that hunk. This branch had already removed it as dead code, and it is still never called (scaleAsFit() does the arithmetic itself), so it stays removed. test-covariate-scaling.R had a test skipped as a known defect, pointing at #21. It was written before the fix, with hand-computed values; it now runs and passes. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013B4sgRg9EwyHaAQdDzUaQW
Remove dead code, document functions, correct Rmd
ci: publish a pkgdown site for fireSense_IgnitionPredict
With per-ELF fit lists and the per-pixel ELF raster, each ELF's ignition and escape models predict its own coarse pixels. The draws are still made once over all pixels, so one ELF gives exactly the old result. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CwcjqqK59FmTJscyi7xUqv
Predict ignitions and escapes with each ELF's own models
.studyAreaName is the parameter PredictiveEcology modules use for the study area's name. Defined here (default NA) for consistency; the module does not use it yet. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CwcjqqK59FmTJscyi7xUqv
Add the .studyAreaName parameter
`escapes` is the coarse pixel's count, repeated on each of its ignition rows, and fireSense spread `escapes` fires from every row: 4 ignitions with 2 escapes gave 8 escaped fires. New column `escaped` marks exactly `escapes` of each coarse pixel's ignitions, drawn after the placements so they are unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CwcjqqK59FmTJscyi7xUqv
…ped-ignition ignitionsAndEscapes: mark which ignitions escaped
Renamed from fireSense_IgnitionPredict; sibling module names updated; version 1.1.0. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CwcjqqK59FmTJscyi7xUqv
The rename moved the .md the symlink targets, leaving README.md dangling, so the testthat-module and pkgdown-module workflows failed copying the module folder. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CwcjqqK59FmTJscyi7xUqv
Rename module to fireSense_ignitionPredict
Add `data.table` and `reproducible` to reqdPkgs, bump version, NEWS. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CwcjqqK59FmTJscyi7xUqv
chore: missing packages in reqdPkgs
postProcess() regridded the coarse ignition raster to flammableRTM each year (fireSense_ignitionPredict.R:191); the mapping is kept in mod and applied by indexing. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CwcjqqK59FmTJscyi7xUqv
Compute the coarse-to-fine cell mapping once
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This moves a month of work on development into main as release 1.2.0. It fixes two errors that changed how many fires the module predicted, and renames the module to
fireSense_ignitionPredict.Affects: predicted ignitions and escapes will differ from 1.0.0, and projects must use the new module name.
Technical details
fireSense_ignitionPredict.R; NEWS.md heading set to 1.2.0 with a summary.scaleDatainstead of each year's own mean and sd (Standardize prediction covariates with the fit's center and scale #21).escapedadded toignitionsAndEscapes, so escapes are not multiplied by the number of ignitions per coarse pixel (ignitionsAndEscapes: mark which ignitions escaped #24).fireSense_IgnitionPredict(Rename module to fireSense_ignitionPredict #25); per-ELF prediction (Predict ignitions and escapes with each ELF's own models #22);.studyAreaName(Add the .studyAreaName parameter #23); missing reqdPkgs (chore: missing packages in reqdPkgs #26); coarse-to-fine cell map computed once (Compute the coarse-to-fine cell mapping once #27); tests, dead-code cleanup, pkgdown site (ci: publish a pkgdown site for fireSense_IgnitionPredict #19, Remove dead code, document functions, correct Rmd #20).development..mainis empty, so there is no main-only content to carry.v1.2.0and the GitHub release follow.🤖 Generated with Claude Code