Skip to content

Updating to BOUT++ with template expressions#585

Open
bendudson wants to merge 4 commits into
masterfrom
bout-lazy-expressions
Open

Updating to BOUT++ with template expressions#585
bendudson wants to merge 4 commits into
masterfrom
bout-lazy-expressions

Conversation

@bendudson

@bendudson bendudson commented Jun 22, 2026

Copy link
Copy Markdown
Collaborator

Latest BOUT++ next uses BinaryExpr template expressions to merge arithmetic operations.
boutproject/BOUT-dev#3385

Explicitly evaluate BinaryExpr expressions into fields when needed.
@codecov

codecov Bot commented Jun 22, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 61.70213% with 36 lines in your changes missing coverage. Please review.
✅ Project coverage is 49.07%. Comparing base (1084ad6) to head (8d87b4a).

Files with missing lines Patch % Lines
src/anomalous_diffusion.cxx 35.00% 13 Missing ⚠️
src/relax_potential.cxx 0.00% 6 Missing ⚠️
src/evolve_pressure.cxx 0.00% 5 Missing ⚠️
src/quasineutral.cxx 66.66% 1 Missing and 1 partial ⚠️
src/sheath_closure.cxx 81.81% 2 Missing ⚠️
src/vorticity.cxx 0.00% 2 Missing ⚠️
include/component.hxx 85.71% 1 Missing ⚠️
src/braginskii_conduction.cxx 50.00% 0 Missing and 1 partial ⚠️
src/braginskii_friction.cxx 66.66% 1 Missing ⚠️
src/braginskii_heat_exchange.cxx 0.00% 1 Missing ⚠️
... and 2 more
Additional details and impacted files
@@            Coverage Diff             @@
##           master     #585      +/-   ##
==========================================
- Coverage   49.09%   49.07%   -0.03%     
==========================================
  Files          96       96              
  Lines       10037    10055      +18     
  Branches     1452     1453       +1     
==========================================
+ Hits         4928     4934       +6     
- Misses       4604     4616      +12     
  Partials      505      505              

☔ View full report in Codecov by Harness.
📢 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.

PetscLib throws if `type` exists in the `petsc` section.
This was created by iterating over all sections and checking
`options["type"].isValue()`. Instead use `options.isSet()`.
Contains:
- Fix for uninitialised dt in SNES
- PETSc preconditioner for CVODE
- BinaryExpr performance improvements
@bendudson bendudson changed the title WIP: Updating to BOUT++ with template expressions Updating to BOUT++ with template expressions Jun 26, 2026
@bendudson bendudson requested a review from ZedThree June 26, 2026 18:14
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.

1 participant