Commit Graph

113 Commits

Author SHA1 Message Date
7dee9ca39d Merge branch 'main' into feature/logging
Restore deleted config code so that tests can compile correctly
2025-02-21 10:40:39 -05:00
a20a150c85 fix(config): restored deleted code
I accidently deleted some cacheing mechanisms, these have been restored
2025-02-21 10:39:43 -05:00
98ead4f06c build(probe): updated build system to include probe and probe tests 2025-02-21 10:31:57 -05:00
c049e3d91c test(tests/probe): logging module test suite started 2025-02-21 10:31:24 -05:00
95f943b45a feat(probe): probe logging module first implimentation 2025-02-21 10:30:59 -05:00
31bc77159b ci(github-actions): updated meson version 2025-02-20 11:12:42 -05:00
85cd0a597b ci(github-actions): updated static library path 2025-02-20 11:09:32 -05:00
38901b619f ci(github-actions): updated path to google tests install dir on ubuntu 2025-02-20 11:07:23 -05:00
24e1fbf8c2 ci(github-actions): removed fedorah, arch, and macOS from targets
will add them back in latter
2025-02-20 11:03:01 -05:00
7d540311cf ci(github-actions): updated action to install meson 2025-02-20 11:01:03 -05:00
e54a5be967 docs(config): rebuild docs and removed redundant documentation 2025-02-20 09:45:47 -05:00
796d8a9021 Merge pull request #15 from tboudreaux/performance/configCache
Added Cache to Config Class
2025-02-20 09:39:27 -05:00
b94ed435e1 fix(tests/config): fixed unknownKeyTest name
unknownKeyTest was named incorrectly
2025-02-20 09:32:20 -05:00
16cdf9ac32 test(tests/config): tests updated to deal with cache 2025-02-20 09:31:03 -05:00
2dcff35e01 perf(config): added cache
In order to prevent traversing the YAML tree I have added a hash map (O(1) lookup) to cache already accessed config variables. I have also added a vector to store keys requested but not found so we do not need to check for those every time
2025-02-20 09:30:43 -05:00
47b833e0d2 docs(docs): rebuilt docs 2025-02-19 16:24:41 -05:00
fac54201ff Merge pull request #14 from tboudreaux/feature/config
Added Config module
2025-02-19 16:21:39 -05:00
8bf62b68d0 test(tests/config): config tests added 2025-02-19 16:12:23 -05:00
a134878e67 feat(config): config class added
At many points in the code we may want configurable options, the Config class usses a yaml file to make this easy. It also allows for namespace references "opac:lowtemp:file" etc...
2025-02-19 16:11:55 -05:00
53fc943129 build(yaml-cpp): added yaml-cpp as a dependency
config files will be written in yaml, added a well tested yaml parser to 4DSSE
2025-02-19 14:50:44 -05:00
096d9b278c Merge pull request #13 from tboudreaux/feature/opatOPALII
Updated OPAT file format and handlers to work for OPAL type I or type II opacity files
2025-02-17 13:07:55 -05:00
dc796be7bf feat(utils/opatio): updated hash generation to only look at logKappa 2025-02-17 13:02:18 -05:00
df6335d25f feat(opatIO): fully updated for index vector
PreviouslyOPAT files were indexed using X and Z now they are indexed with a general index vector.

BREAKING CHANGE: all methods wch used X and Z now use std::vector<double> index (size: header.numIndex) instead. Also added a method to validate tables using checksum
2025-02-17 13:01:34 -05:00
5d51f5b5e0 build(opatIO/meson.build): added PicoSHA2 as a dependency 2025-02-17 13:00:01 -05:00
f44a07bac3 build(meson.build): updated to build PicoSHA2 2025-02-17 12:59:16 -05:00
f973fec061 build(mk): added debug symbols when building with tests 2025-02-17 12:58:51 -05:00
9ae69d82fc test(tests/opatIO): updated tests for index vector based search
previously tests used X and Z. Nw they use a general index vector
2025-02-17 12:58:08 -05:00
33d269c411 feat(subprojects/PicoSHA2): added picosha subproject to compute checksums 2025-02-17 12:57:03 -05:00
131161e1bd feat(utils/opatio): updated save to ascii function and fixed minor bug in loader
the new general purpose index design introduced a bug in the loader related to the byte position of the byteStart field. This has been resolved. Further, I have updated the save to ascii format to provide an explicit warning that the ascii version is only for debugging purposes and not meant to be used directly.
2025-02-16 20:44:45 -05:00
4ac9340804 docs(specs/opat): updated opat spec for general indexing
OPAL type II tables use a 4 vector for composition, while many other opacity tables use a 2 vector of composition to index tables. In an attempt to be as general as possible I have updated the OPAT specification to allow for tables indexed by a vector of any length [1, 255]. This should allow a single spec to be used when storeing and accessing type I or type II tables.

BREAKING CHANGE: Careful thought will have to be given to how the C++ module handles this. We want the same code to work for querying data from any kind of opaticy table
2025-02-16 20:43:07 -05:00
c4cd731520 feat(utils/opatio): began update to account for OPAL type II tables (or generally an arbitrary number of index values per table) 2025-02-16 19:03:41 -05:00
9a302fd5d3 Merge pull request #12 from tboudreaux/feature/meshing
Added base MeshIO class and MFEM in tree building
2025-02-16 15:26:51 -05:00
4158c893d4 docs(tests/meshIO): added comments to meshIO tests 2025-02-16 15:20:24 -05:00
2f753c6ea0 test(tests/meshIO): added basic test suite for meshIO
just tests the constuctor, getMesh, and isLoaded method. This confirms that a basic spherical mesh can be loaded in correctly
2025-02-16 15:10:13 -05:00
a727eca14c docs(meson.build): updated build system docs 2025-02-16 15:09:22 -05:00
ea037cf996 feat(meshIO): added basic mesh reading implimentation
also added basic unit sphere mesh file which can be rescaled
2025-02-16 15:08:33 -05:00
1713f6cb08 fix(utils/meshGeneration): changed mesh format to gmsh 2.2
meshio writes vtk version 9 but mfem only supports up to version 4, so we changed to gmsh version 2.2 which is supported
2025-02-16 15:07:20 -05:00
41da26cd81 docs(readme): updated readme 2025-02-16 14:33:31 -05:00
189a4f5f0b feat(resource/mesh): added base unit sphere mesh 2025-02-16 14:04:16 -05:00
08f810448c fix(meshGeneration): changed file extension to vtk and 3D 2025-02-16 13:53:19 -05:00
64e6a745d0 fix(meshGeneration): changed from netgen to vtk as that format is better supported 2025-02-16 13:45:06 -05:00
490831d898 feat(meshGeneration): simple spherical mesh generation script 2025-02-16 13:35:09 -05:00
1f7cb1033d Merge branch 'feature/polytrope' into feature/meshing 2025-02-16 13:18:11 -05:00
02c2096ac5 refactor(utils/opatio): saved 2025-02-16 12:54:20 -05:00
c68d36fb55 Merge pull request #11 from tboudreaux/docs/opatio
aded docs to utils/opatio python module
2025-02-16 12:49:53 -05:00
fde561cdef docs(utils/opatio): added doxygen comments to python module 2025-02-16 12:47:42 -05:00
11b3811382 docs(opatio-docs): rebuilt docs 2025-02-16 12:47:17 -05:00
0d5406aeee docs(opatIO): wrote and built doxygen docs 2025-02-16 12:29:51 -05:00
5ce365d545 Merge pull request #10 from tboudreaux/spec/OPAT 2025-02-16 12:20:19 -05:00
3b34ce3979 feat(utils/opatio): added print to ascii 2025-02-16 12:16:20 -05:00