Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

added summation check #649

Merged
merged 3 commits into from May 22, 2024
Merged

added summation check #649

merged 3 commits into from May 22, 2024

Conversation

tscheypidi
Copy link
Member

@tscheypidi tscheypidi commented Mar 27, 2024

馃惁 Description of this PR 馃惁

added checkSummation output script for consistency checking of report.mif files.

馃敡 Checklist for PR creator 馃敡

  • Label pull request from the label list.

    • Low risk: Simple bugfixes (missing files, updated documentation, typos) or changes in start or output scripts
    • Medium risk: Uncritical changes in the model core (e.g. moderate modifications in non-default realizations)
    • High risk: Critical changes in model core or default settings (e.g. changing a model default or adjusting a core mechanic in the model)
  • Self-review own code

    • No hard coded numbers and cluster/country/region names.
    • The new code doesn't contain declared but unused parameters or variables.
    • magpie4 R library has been updated accordingly and backwards compatible where necessary.
    • scenario_config.csv has been updated accordingly (important if default.cfg has been updated)
  • Document changes

    • Add changes to CHANGELOG.md
    • Where relevant, put In-code documentation comments
    • Properly address updates in interfaces in the module documentations
    • run goxygen::goxygen() and verify the modified code is properly documented
  • Perform test runs

    • Low risk:
      • Run a compilation check via Rscript start.R --> "compilation check"
    • Medium risk:
      • Run test runs via Rscript start.R --> "test runs"
      • Check logs for errors/warnings
    • High risk:
      • Run test runs via Rscript start.R --> "test runs"
      • Check logs for errors/warnings
      • Default run from the PR target branch for comparison
      • Provide relevant comparison plots (land-use, emissions, food prices, land-use intensity,...)

馃搲 Performance changes 馃搱

  • Current develop branch default : ** mins
  • This PR's default : ** mins

馃毃 Checklist for reviewer 馃毃

  • PR is labeled correctly
  • Code changes look reasonable
    • No hard coded numbers and cluster/country/region names.
    • No unnecessary increase in module interfaces
    • model behavior/performance is satisfactory.
  • Changes are properly documented
    • CHANGELOG is updated correctly
    • Updates in interfaces have been properly addressed in the module documentations
    • In-code documentation looks appropriate
  • content review done (at least 1)
  • RSE review done (at least 1)

@tscheypidi tscheypidi added Minor Smaller modifications Low risk Low risk labels Mar 27, 2024

## Check outputdir
if(!exists("source_include")) {
outputdir <-"."
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
outputdir <-"."
outputdir <- "."

Copy link
Contributor

@orichters orichters left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Short comment:

Now, checkSummations() returns all summations, even those that are fine. But, I think that is stupid.

I will update the checkSummations function that already has a absDiff and relDiff parameter to return only the failing summation checks that are >= absDiff and >= relDiff.

For your case, I think it is advisable to select good thresholds (maybe absDiff = 0.001 as your mif has 4 digits and you want to avoid to be warned of rounding errors), or use absDiff = 0, relDiff = 0 if you really want everything.

And, potentially, you might make the writing of the file conditional on nrow(failvars) > 0. In REMIND, we execute this summation check automatically after every run, and even have a sumErr message in the mif column of the modeltests output to become informed, if that summation error file exists. That might be very easy for you to get as well.

@tscheypidi
Copy link
Member Author

applied all requested changes and in addition added an abstract to citation.cff (required for PRISMA)

@tscheypidi tscheypidi requested review from jdrtommey and removed request for k4rst3ns May 21, 2024 17:30
Copy link

@jdrtommey jdrtommey left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All looks good to me

@tscheypidi tscheypidi merged commit 8050353 into magpiemodel:develop May 22, 2024
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Low risk Low risk Minor Smaller modifications
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants