Skip to content

Conversation

@reneSchm
Copy link
Member

@reneSchm reneSchm commented Oct 14, 2025

Changes and Information

Please briefly list the changes (main added features, changed items, or corrected bugs) made:

  • Simplify ParameterStudy, so it can use any parameter type and more generic simulations.
    • This strongly changes the class layout and usage.
  • Add example for an ABM study.
  • Usage and behavior in python bindings is mostly unchanged.

If need be, add additional information and what the reviewer should look out for in particular:

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 within the code (Doxygen) for new functionality has been added in the code
  • Appropriate external documentation (ReadTheDocs) for new functionality has been added to the online documentation
  • 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).

@reneSchm reneSchm self-assigned this Oct 14, 2025
@reneSchm reneSchm added loc::backend This issue concerns the C++ backend implementation. model::abm This issue concerns any kind of agent-based model. class::improvement Cleanup that doesn't affect functionality class::performance Performance related issues labels Oct 14, 2025
@reneSchm reneSchm linked an issue Oct 14, 2025 that may be closed by this pull request
@reneSchm reneSchm changed the title Abm parameter study 468 Abm parameter study Oct 14, 2025
@reneSchm reneSchm marked this pull request as ready for review October 22, 2025 09:29
@codecov
Copy link

codecov bot commented Oct 22, 2025

Codecov Report

❌ Patch coverage is 94.36620% with 4 lines in your changes missing coverage. Please review.
✅ Project coverage is 97.25%. Comparing base (aa541c0) to head (0c1e723).
⚠️ Report is 7 commits behind head on main.

Files with missing lines Patch % Lines
cpp/memilio/compartments/parameter_studies.h 92.72% 4 Missing ⚠️
Additional details and impacted files
@@           Coverage Diff            @@
##             main    #1395    +/-   ##
========================================
  Coverage   97.25%   97.25%            
========================================
  Files         176      182     +6     
  Lines       15466    15662   +196     
========================================
+ Hits        15041    15232   +191     
- Misses        425      430     +5     

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

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

this allows deduction of template arguments from the constructor, making the make_parameter_study functions obsolete.
the simulation type is now deduced from the create_simulation argument, and checks on invocability have been moved to clean up deduced types.
Add documentation.
reneSchm and others added 4 commits November 6, 2025 16:16
Co-authored-by: annawendler <106674756+annawendler@users.noreply.github.com>
Co-authored-by: annawendler <106674756+annawendler@users.noreply.github.com>
@reneSchm reneSchm requested a review from annawendler November 7, 2025 08:49
@mknaranja mknaranja changed the title 468 Abm parameter study 468 ABM parameter study Nov 13, 2025
Copy link
Member

@MaxBetzDLR MaxBetzDLR left a comment

Choose a reason for hiding this comment

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

Changes for documentation of python bindings

@reneSchm reneSchm requested a review from MaxBetzDLR November 14, 2025 15:22
Copy link
Member

@MaxBetzDLR MaxBetzDLR left a comment

Choose a reason for hiding this comment

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

Looks good!

@reneSchm reneSchm merged commit b128e05 into main Nov 17, 2025
@reneSchm reneSchm deleted the abm-parameter-study branch November 17, 2025 12:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

class::improvement Cleanup that doesn't affect functionality class::performance Performance related issues loc::backend This issue concerns the C++ backend implementation. model::abm This issue concerns any kind of agent-based model.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Create parameter study for ABM

5 participants