Skip to content

Convert Transport, numerics and various utilities to using std::span#2090

Merged
speth merged 11 commits intoCantera:mainfrom
speth:span-transport
Feb 21, 2026
Merged

Convert Transport, numerics and various utilities to using std::span#2090
speth merged 11 commits intoCantera:mainfrom
speth:span-transport

Conversation

@speth
Copy link
Copy Markdown
Member

@speth speth commented Feb 20, 2026

Changes proposed in this pull request

This should be the last PR in the sequence for updating to use std::span. It covers the Transport class and friends, the various matrix classes, and other utility code. It also adds some documentation explaining the necessary migrations.

If applicable, fill in the issue number this pull request is fixing

AI Statement (required)

  • Extensive use of generative AI. Significant portions of code or documentation were generated with AI, including
    logic and implementation decisions. All generated code and documentation were reviewed and understood by the contributor. Written with the assistance of ChatGPT Codex 5.3.

Checklist

  • The pull request includes a clear description of this code change
  • Commit messages have short titles and reference relevant issues
  • Build passes (scons build & scons test) and unit tests address code coverage
  • Style & formatting of contributed code follows contributing guidelines
  • AI Statement is included
  • The pull request is ready for review

@speth speth force-pushed the span-transport branch 2 times, most recently from 9f69745 to bb92a49 Compare February 20, 2026 03:05
@codecov
Copy link
Copy Markdown

codecov bot commented Feb 20, 2026

Codecov Report

❌ Patch coverage is 79.52586% with 95 lines in your changes missing coverage. Please review.
✅ Project coverage is 77.48%. Comparing base (c0dd3d9) to head (6c15dc5).
⚠️ Report is 18 commits behind head on main.

Files with missing lines Patch % Lines
src/base/Array.cpp 12.50% 14 Missing ⚠️
src/equil/vcs_solve_TP.cpp 54.16% 11 Missing ⚠️
include/cantera/transport/Transport.h 41.17% 10 Missing ⚠️
src/fortran/fct.cpp 16.66% 10 Missing ⚠️
src/transport/MultiTransport.cpp 80.00% 6 Missing and 3 partials ⚠️
src/transport/HighPressureGasTransport.cpp 25.00% 6 Missing ⚠️
src/numerics/DenseMatrix.cpp 79.16% 5 Missing ⚠️
src/transport/MixTransport.cpp 70.58% 3 Missing and 2 partials ⚠️
include/cantera/numerics/GeneralMatrix.h 0.00% 4 Missing ⚠️
src/oneD/IonFlow.cpp 20.00% 4 Missing ⚠️
... and 11 more
Additional details and impacted files
@@           Coverage Diff           @@
##             main    #2090   +/-   ##
=======================================
  Coverage   77.48%   77.48%           
=======================================
  Files         451      451           
  Lines       52763    52830   +67     
  Branches     8829     8832    +3     
=======================================
+ Hits        40882    40934   +52     
- Misses       8908     8919   +11     
- Partials     2973     2977    +4     

☔ 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.

@speth speth marked this pull request as ready for review February 20, 2026 22:40
Copy link
Copy Markdown
Member

@ischoegl ischoegl left a comment

Choose a reason for hiding this comment

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

Thanks, @speth!

@speth speth merged commit 54ed035 into Cantera:main Feb 21, 2026
49 checks passed
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.

Utilize std::span & migrate to C++20

2 participants