-
-
Notifications
You must be signed in to change notification settings - Fork 349
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’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add native SolutionArray / HDF support to C++ OneDim #1385
Conversation
c5c67cd
to
32b935f
Compare
32b935f
to
9c9d3e0
Compare
9c9d3e0
to
d1ec603
Compare
d1ec603
to
0c5d32a
Compare
- Add setters/getters to SolutionArray - Also remove unnecessary code stubs
0c5d32a
to
f337afb
Compare
f337afb
to
4b197bc
Compare
4b197bc
to
4cf81dd
Compare
@speth ... Remaining work for this PR involves implementing |
Running with very loose integrator tolerances leads to integrator errors for certain system configurations. This was seen specifically on the "Sundials" CI runners.
b412c0e
to
b65822a
Compare
@speth … thanks for the additional checks - I believe everything is addressed now.
Until this came up I was actually unaware of As an aside, on my system (macOS), the
An attempt to compile the very simple C++ program fails with:
As I get the same failure for the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks, @ischoegl, this all looks good to me. There is just one very minor issue with the .mak
file generation, I think.
As far as the cantera.pc
, I guess that requires getting the right rpath
flags in when linking to shared libraries that live in non-system locations, such as a Conda install. I'd suggest we just ignore that here, and you can create a new issue to remind us that needs to be fixed at some point.
9989491
to
1e577fb
Compare
Thanks for catching - fixed!
See #1422. |
Changes proposed in this pull request
Implement native support for HDF data in C++
OneDim
using HighFive. Similar to the Pythonh5py
implementation, aSolutionArray
(also in C++) acts as an intermediate container for saving/restoring ofDomain1D
data.SolutionArray
(using existing HDF format; since Cantera 2.5)SolutionArray
(using existing YAML format; since Cantera 2.6)Domain1D
fromSolutionArray
Domain1D
toSolutionArray
SolutionArray
to HDF (make HDF format consistent with YAML structure; implemented in C++)SolutionArray
to YAMLSolutionArray
data to Python API (likelydefinitely as separate PR)Extensions to
zeroD
reactor networks are anticipated.Once
Solution
is supported byclib
, HDF can be made available to any user-facing API.If applicable, fill in the issue number this pull request is fixing
Partially addresses Cantera/enhancements#137 and Cantera/enhancements#158
If applicable, provide an example illustrating new features this pull request is introducing
Checklist
scons build
&scons test
) and unit tests address code coverage