79c585892f
feat(pythonInterface/mfem): added loads of mfem bindings to make interacting through python easy
2025-06-16 12:01:03 -04:00
94a0fa947a
refactor(polytropeOperator.h): changed to nested namespace
2025-06-13 10:15:08 -04:00
8ee9a6a609
feat(pythonInterface/polytrope): added initial polytrope implimentation to the python interface
...
currently this can only interface with polySolver; however, it does work 100% to run a model. The biggest caveat is that at this time there is no way to get the actual results out of the model other than to visualize them in GLVis or use the limited output dumped in the output directory
2025-06-13 09:31:05 -04:00
09d5a72de6
feat(pythonInterface/eos): added working python eos interface
...
confirmed that this produces the same results as the underlying C code would predict
2025-06-13 07:27:24 -04:00
a8f91dc12d
refactor(helm.h): made use of tabs consistent
2025-06-13 07:26:55 -04:00
fb2d725fa8
Merge branch 'main' into feature/pythonInterface/eos
2025-06-12 17:11:03 -04:00
Aaron Dotter
324602226c
Update helm.cpp
...
fix bug allowing integer iat to be used before being set. two lines of code were swapped to fix the problem.
2025-06-12 16:46:33 -04:00
f0e9971fc4
feat(python/eos): added EOSInput class and getTable method to EOSio
2025-06-12 15:06:42 -04:00
1af6a7cac8
refactor(python-bindings): renamed fourdstar -> serif
2025-06-12 14:24:28 -04:00
dd28e555c8
fix(eos-bindings): minor bug fixes to bring eos bindings up to main
...
specifically, renamed EosIO -> EOSio, and updated read_helm_table signature
2025-06-12 14:21:28 -04:00
54e408a4af
feat(pythonInterface/eos): fast forward
2025-06-12 14:04:11 -04:00
353e2072e7
build(python): updated all python bindings to reflect serif name
2025-06-12 13:46:32 -04:00
2eca802d01
refactor(serif): fixed typos and updated names to reflect 4DSSE->SERiF
2025-06-12 09:04:03 -04:00
db2dcdb106
fix(python-bindings): brought bindings in line with new namespace
2025-06-11 15:18:33 -04:00
72f08238b6
Merge remote-tracking branch 'upstream/main' into feature/mixedPolytrope
...
# Conflicts:
# .gitignore
# build-config/meson.build
# meson.build
# meson_options.txt
# src/composition/public/composition.h
# src/config/public/config.h
# src/constants/public/const.h
# src/meson.build
# tests/composition_sandbox/comp.cpp
2025-06-11 15:05:11 -04:00
6e4ff1ece9
refactor(serif): refactored entire codebase into serif and sub namespaces
2025-06-11 14:49:11 -04:00
94c25f247c
docs(polySolver): added loads of documentation
2025-06-11 11:16:54 -04:00
26febe7fbb
fix(poly): added stabilization term
...
least squares stabalization term seems to have stabilized polytrope and mostly resolve the overshoot mode (in more non linear cases (n > 2) the mode does reapear; however, it is much less pronounced
2025-06-11 10:43:09 -04:00
bb79b918ce
feat(probe): added minor new logging
2025-06-10 12:50:15 -04:00
76d6d3d1cf
fix(poly): working to resolve overshoot mode
2025-06-10 12:49:31 -04:00
36b605142e
refactor(probe): changed from header guard to pragma once
2025-06-09 10:20:00 -04:00
2a91d57ad7
fix(poly): fixed numerous bugs related to inconsistent system sizing with the reduced operator
...
this has restored the symmetry which we relied on before.
2025-06-09 10:19:18 -04:00
6e1453cf6e
docs(poly): began cleaning up and adding docs
2025-06-05 15:13:50 -04:00
a31c966146
feat(poly): refactoring PolytropeOperator to work on the reduced system so as to avoid rank deficiencies
2025-06-05 12:37:00 -04:00
4eb8b71271
docs(laneEmdenVariationalForm): updated to match MFEM sign convention more closley
2025-06-05 12:36:26 -04:00
2e9de49f88
refactor(poly): minor comment cleaning up
2025-06-03 08:11:01 -04:00
f5dea85db1
fix(PolytropeOperator): seperated boundary aware and unaware operators for M, Q, and D
...
residual calculation needs to be done when boundary degrees of freedom have not been removed (since their removal takes place in the Mult step in order to introduce the proper restoring force). Whereas jacobian calculation needs to always work from the boundary aware operators (these are sparse matrices)
The other thing to note here is that this seems contrary to a matrix free design. While true it is common practive to assemble linear terms since they are cheap. We still never assemble the non linear matrix form.
2025-05-22 11:30:24 -04:00
bd4aebedce
refactor(polySolver): turned on preconditioner and removed redundant validation check
2025-05-18 15:33:06 -04:00
b16ba8a7b6
feat(operator): added matrix free inverter and SchurComplement operator
...
In order to maintain memory efficienty I have implimented a matrix free SchurComplement operator as well as an operator which uses a few iterations of GMRES to approxinate the inverse of any general operator.
2025-05-18 15:32:08 -04:00
b5980ea57a
feat(python-eos): work on python eos module
2025-05-13 14:18:38 -04:00
534a9cdf4b
feat(polySolver): added polytropic index as a constructor argument for polytrope operator
2025-05-12 14:27:41 -04:00
1ee919a4a9
feat(PolytropeOperator): added polytropic index as a member variable
2025-05-12 14:27:01 -04:00
14eb21bd31
fix(PolytropeOperator): uncommented code that should never have been commented in GetGradient
2025-05-11 15:09:22 -04:00
d56f66c428
feat(python-eos-interface): began work on python eos interface
2025-05-11 14:58:18 -04:00
95d344a79c
refactor(EosIO): renamed EosIO -> EOSio
2025-05-11 14:58:00 -04:00
441123ec81
refactor(4DSTARTypes): header guards -> pragma once
2025-05-11 14:41:26 -04:00
2db56b2f99
feat(glVlisView): changed mesh socket stream to display solution
2025-05-11 14:40:58 -04:00
412a3be2ec
refactor(PolytropeOperator): commented out debug code
2025-05-11 14:40:19 -04:00
8b9d46e996
style(NonlinearPowerIntegrator): removed old comments
2025-05-11 14:38:50 -04:00
3d33839028
feat(NonlinearPowerIntergrator): increased robustness to theta ~ 0 and theta < 0
2025-05-11 14:38:22 -04:00
454d49c3d3
style(polySolver): removed redundant lines
2025-05-11 14:37:26 -04:00
d78f09623c
refactor(network): header guard -> pragma once
2025-05-06 15:27:40 -04:00
45c6c267d2
refactor(resources): changed resources module name to macros (to prevent conflict with resource)
2025-05-05 15:23:36 -04:00
946209e010
feat(python): register config bindings
2025-05-05 14:36:32 -04:00
b014300d99
refactor(config): header guard -> pragma once
2025-05-05 14:36:16 -04:00
af6abd3ce2
feat(python/config): added config module bindings
2025-05-05 14:35:50 -04:00
4757a6f63a
fix(python/constants): adjusted python constants to be a true singleton / static class
2025-05-05 13:25:27 -04:00
2bd000039b
build(python): updated build system to point to all python interface modules
2025-05-05 12:01:55 -04:00
a3adbacc3b
refactor(const): header guard -> pragma once
...
also removed unused includes
2025-05-05 12:01:20 -04:00
7df3481ff4
refactor(python/composition): updated python comp bindings to use register model
2025-05-05 12:00:40 -04:00