Skip to content
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

Use HD5 input and library #181

Open
3 tasks
willGraham01 opened this issue Nov 11, 2022 · 1 comment
Open
3 tasks

Use HD5 input and library #181

willGraham01 opened this issue Nov 11, 2022 · 1 comment
Labels
enhancement New feature or request priority:2 Second priority technical Technical and meta issues, not related to physics but infrastructure.

Comments

@willGraham01
Copy link
Collaborator

The project currently makes use of .mat files and MATLAB to open the input and output files.
With a view towards #70, we need to move away from this dependency.

One such option is libhd5, as .mat files are essentially already hd5 files but under a different name. Changing our input interpreter will have several knock-on effects. A list (that is potentially non-exhaustive) of the key changes to implement is below:

  • The classes in arrays.h and field.h need to be updated to read in data from hd5 files
  • The interpolation functions no longer need to assign to temporary MATLAB arrays, instead to the HD5 outputs
  • execute_simulation can potentially have its input arguments overhauled, now that we aren't limited to 4 inputs (cough mex cough)
@samcunliffe samcunliffe added enhancement New feature or request technical Technical and meta issues, not related to physics but infrastructure. priority:2 Second priority labels Nov 11, 2022
@samcunliffe samcunliffe self-assigned this Nov 13, 2022
samcunliffe added a commit that referenced this issue Mar 9, 2023
samcunliffe added a commit that referenced this issue Mar 9, 2023
willGraham01 pushed a commit that referenced this issue May 19, 2023
willGraham01 pushed a commit that referenced this issue May 19, 2023
samcunliffe added a commit that referenced this issue May 19, 2023
samcunliffe added a commit that referenced this issue May 19, 2023
willGraham01 added a commit that referenced this issue May 19, 2023
…#304)

* Add libhdf5.

Co-authored-by: Mosè Giordano <[email protected]>
Co-authored-by: Will Graham <[email protected]>

* Make clang-format happy.

* Skeleton HDF5 wrapper class and failing tests.

Basic class structure and some failing tests for TDD.

* WIP #181. Change the interface a bit. Tests still fail but some because of stupid, not TDD.

* Passes first tests! #181

* Perhaps we need to install HDF5 explicitly?

* Fix indentation in README. Delete commented out.

* Don't need C.

* Throw not implemented exception.

* Apply suggestions from code review

---------

Co-authored-by: willGraham01 <[email protected]>
Co-authored-by: Mosè Giordano <[email protected]>
Co-authored-by: Will Graham <[email protected]>
samcunliffe added a commit that referenced this issue Jun 13, 2023
Add comments to the README for when #181 is finished. Add instructions
to the dev docs (since devs might be compiling the HEAD of main.
@samcunliffe samcunliffe removed their assignment Jun 13, 2023
@samcunliffe
Copy link
Member

Not completely replacing MATLAB yet. But close.
See also

samcunliffe added a commit that referenced this issue Jun 13, 2023
* First pass adding basic prerequisites

Very basic preliminaries. CMake, Windows SDK, Xcode etc.

* Add OS logos

* V. minor tweak to language.
* Add OS logos from EgoistDeveloper/operating-system-logos
* Split MacOS into its own thing.

* Working Windows instructions.

* Boldify the C++ kit thing.

Co-authored-by: Will Graham <[email protected]>

* Update README.md

* Final (?) README polishing.

* Solves #313.

Add comments to the README for when #181 is finished. Add instructions
to the dev docs (since devs might be compiling the HEAD of main.

---------

Co-authored-by: Will Graham <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request priority:2 Second priority technical Technical and meta issues, not related to physics but infrastructure.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants