Skip to content

Conversation

@annawendler
Copy link
Member

@annawendler annawendler commented Mar 28, 2024

Changes and Information

  • The start time of the simulation is not assumed to be zero anymore but is determined by the initial flows given as input to the model.
  • The parameter t0 was removed from the Simulation class.

Merge Request - Guideline Checklist

Please check our git workflow. Use the draft feature if the Pull Request is not yet ready to review.

Checks by code author

  • Every addressed issue is linked (use the "Closes #ISSUE" keyword below)
  • New code adheres to coding guidelines
  • No large data files have been added (files should in sum not exceed 100 KB, avoid PDFs, Word docs, etc.)
  • Tests are added for new functionality and a local test run was successful (with and without OpenMP)
  • Appropriate documentation for new functionality has been added (Doxygen in the code and Markdown files if necessary)
  • Proper attention to licenses, especially no new third-party software with conflicting license has been added
  • (For ABM development) Checked benchmark results and ran and posted a local test above from before and after development to ensure performance is monitored.

Checks by code reviewer(s)

  • Corresponding issue(s) is/are linked and addressed
  • Code is clean of development artifacts (no deactivated or commented code lines, no debugging printouts, etc.)
  • Appropriate unit tests have been added, CI passes, code coverage and performance is acceptable (did not decrease)
  • No large data files added in the whole history of commits(files should in sum not exceed 100 KB, avoid PDFs, Word docs, etc.)
  • On merge, add 2-5 lines with the changes (main added features, changed items, or corrected bugs) to the merge-commit-message. This can be taken from the briefly-list-the-changes above (best case) or the separate commit messages (worst case).

Closes #977

@annawendler annawendler linked an issue Mar 28, 2024 that may be closed by this pull request
2 tasks
@codecov
Copy link

codecov bot commented Mar 28, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 96.34%. Comparing base (a5cbb91) to head (59ffa22).
Report is 8 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #979   +/-   ##
=======================================
  Coverage   96.34%   96.34%           
=======================================
  Files         129      129           
  Lines       10056    10071   +15     
=======================================
+ Hits         9688     9703   +15     
  Misses        368      368           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@annawendler annawendler requested a review from lenaploetzke April 2, 2024 09:27
Copy link
Member

@lenaploetzke lenaploetzke left a comment

Choose a reason for hiding this comment

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

Good work, I liked the test too!
At the moment the m_transitions TimeSeries is public, so we can change the TimeSeries without confirming that the last value here matches the last value in m_populations. Can you maybe write a setter+getter and make m_transitions private?

@annawendler
Copy link
Member Author

I see the problem that m_transitions can be changed without confirming that the last value there matches the last value in m_populations. I can implement a setter where we would reset m_populations accordingly. Then m_populations should be set private, too, which would making setting S and R for the initialization of the solver a bit more tedious. I'm not sure if this is worth it or if it would be enough to add a constraint to the check_constraints function.
Another possibility would be to set m_transitions private anyway without implementing getter and setter. Then we could define a friend class to set the initial flows based on real data or need to find another solution.

@annawendler annawendler requested a review from lenaploetzke April 8, 2024 13:03
@lenaploetzke
Copy link
Member

I see the problem that m_transitions can be changed without confirming that the last value there matches the last value in m_populations. I can implement a setter where we would reset m_populations accordingly. Then m_populations should be set private, too, which would making setting S and R for the initialization of the solver a bit more tedious. I'm not sure if this is worth it or if it would be enough to add a constraint to the check_constraints function. Another possibility would be to set m_transitions private anyway without implementing getter and setter. Then we could define a friend class to set the initial flows based on real data or need to find another solution.

We discussed this and agreed to stay with the public members and implement an additional check in the check_constraints() function.

Co-authored-by: lenaploetzke <70579874+lenaploetzke@users.noreply.github.com>
Copy link
Member

@lenaploetzke lenaploetzke left a comment

Choose a reason for hiding this comment

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

Very good!

@annawendler annawendler merged commit 65f0b3f into main Apr 16, 2024
@annawendler annawendler deleted the 977-allow-other-start-days-than-zero-in-the-ide-model branch April 16, 2024 14:01
Sign up for free to 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.

Allow other start days than zero in the IDE model

3 participants