Commit Graph

45 Commits

Author SHA1 Message Date
747f37a10e docs(discretization/forms): made some small corrections 2026-10-09 15:59:51 -04:00
8154949bb7 docs(discretization/forms): expanded operand documentation with example 2026-10-09 15:55:57 -04:00
7432596642 docs(equations): added missing \f for latex rendering 2026-10-08 16:17:17 -04:00
9fd18d834a feat(equations): added mass normalization
This equation weakly constrains the total mass of the system to some prescribed mass by integrating the density over the volume
2026-10-08 16:16:34 -04:00
be9aec541f docs(equations): fixed missing * in doxygen comment preventing it from parsing right 2026-10-08 13:16:51 -04:00
9bd77a661f feat(equations): added hydrostatic_equilibrium equation 2026-10-08 13:11:09 -04:00
6a273fdd9d feat(equations): added gravity force equation. This computes the point-wise gravitational force (which is the residual as generally it should be minimzed). Note that I let the gradient = the negative gravitational acceleration 2026-10-08 12:23:27 -04:00
f2832d4c57 docs(equations): removed old docs 2026-10-08 12:01:20 -04:00
4336a93364 feat(equations): displacement_force
added equation that sums pressure, gravity, and rotation together to get the displacement force. Note that some of the dependencies of this have not been commited yet as they lack documentation
2026-10-08 11:59:57 -04:00
0eef623130 feat(equations): added contribution(s) which allows equations authors to more quickly write equations without writing the boiler plate required by the backend 2026-10-08 11:49:03 -04:00
78c78f6bd4 feat(equations): added compile time concepts and types
These help constrain what are valid equations at compile time thereby preventing invalid equations from causing runtime crashes due to missing methods and members (this does not validate anythinng about the physics of an equation, only that the form of the equation is right). Note that this is done at compile time rather than with runtime polymorphism to avoid both indirection cost but more imporantly to allow the compiler to more easily inline functions and preform other optimizations that indirection can hide.
2026-10-08 11:16:42 -04:00
c8c4b7515d docs(equations): removed some old docs 2026-10-08 11:15:00 -04:00
0571c63fad feat(equations): added central_density
This equation provides a constraint on central density through specific enthalpy (I think this is general so long as the eos can convert, though I wrote this for the barotropic case). This may need to be changed latter to be more general (though also generally we should not constrain central density). this is really there to deal with the specific non-rotating n=3 case where the central density is ill-defined due to a singularity.
2026-10-08 10:44:52 -04:00
ba6264e22c feat(equations): added material centering equation
this equation provides a residual that weakly enforces that some material point should remain at the origin
2026-10-08 10:30:03 -04:00
4cb34acc82 docs(equations): added contributions documentation 2026-10-08 10:28:50 -04:00
c7eab38e1d feat(equations): Added barotropic closure
This enforces that the model density and ethalpy are self consistent with the eos density from the model enthalpy
2026-10-08 09:32:19 -04:00
950f86e9e7 feat(equations/arithmetic): added sum and different equation types
these are needed for things like the displacment force which is the sum of the rotational, gravitational, and pressure forces
2026-10-07 16:15:04 -04:00
9f67fccd45 feat(equations/angular_momentum): added angular momentum constraint equation 2026-10-07 11:14:14 -04:00
1348f32312 docs(eos): added doxygen comments throughout 2026-10-05 14:23:58 -04:00
3c4d1614d4 docs(discretization/quadrature): added another doxygen comment 2026-10-05 13:52:39 -04:00
4b742bcaf5 docs(discretization/quadrature): added doxygen docs throughout 2026-10-05 13:51:47 -04:00
36585a9682 docs(discretization/domain): added doxygen comments throughout 2026-10-05 13:22:51 -04:00
54dcd9f3f9 feat(discretiztion/backend/mfem): added boundary_trace and mass_diagonal backend 2026-10-05 13:22:26 -04:00
f1f3e77ea8 docs(domain/mesh): added doxygen comments throughout 2026-10-05 08:09:59 -04:00
0db22935b4 docs(domain/relation): added doxygen comments throughout 2026-10-02 16:18:37 -04:00
80e15b60b5 docs(functional_space): added doxygen comments throughout 2026-10-02 07:28:34 -04:00
05df03b1c1 docs(forms): added doxygen comments throughout 2026-10-01 16:10:32 -04:00
b030d3010f docs(domain): added doxygen comments throughout 2026-10-01 15:20:14 -04:00
f94f4ee8d6 docs(blocks): added doxygen comments 2026-10-01 15:12:07 -04:00
c1ddf6d534 feat(mfem-backend): ported DofMap system from MeanField
Broadly MeanField had a system that would map the full index of degrees of freedom to some reduced index space based on domain support. This system has been cleaned up and ported. Further, we have consolidated this system into the discretization system from where it lived in MeanField (in the operators subsystem)
2026-10-01 15:11:22 -04:00
47e8cd0652 docs(dimensions): added dimension doxygen comments 2026-10-01 15:09:11 -04:00
52c42ec7cd feat(mapper): finished porting over mapper 2026-09-23 09:29:05 -04:00
9e0e1f5c18 Working on more domain mapper translation 2026-09-22 05:30:55 -04:00
ce5809bca9 small formatting 2026-09-20 16:34:00 -04:00
806268ccb8 Progress on bringing the DomainMapper over 2026-09-20 16:33:06 -04:00
d7e7a3a015 some comments that reflect my sanity at this point 2026-09-20 14:41:50 -04:00
08a8f231d2 Began porting the mapping system 2026-09-20 14:37:11 -04:00
f69fac8f1e Began working on mfem_resolver formatters 2026-09-19 08:52:30 -04:00
c44584c1e7 feat(quadrature): quadrature system brought over
Ported and dramatically cleaned up the quadrature system. This includes centralizing all field definitions
2026-09-19 07:35:57 -04:00
7b4f30d945 feat(eos): work translating runtime eos code
most (though not all) of the runtime eos code is now present in the new version. What remains is the templated try_evaluate method along with both the templated and non tempalted try_partial_derivative methods.
2026-09-15 15:45:17 -04:00
d1f59d6d70 feat(mean_field): added dimensions, discritization, and start of eos
The full rewrite of mean_field into something maintainable is progressing. dimensions is mostly done, discritization (domain, blocks, and fields) is done, and eos is progressing quickly
2026-09-15 10:42:00 -04:00
7c99debf2f (fix:cuda) CUDA portability improved\nbuild system now checks for valid compiler compatible with nvcc and fails if that is not found and cuda is selected. Further, compiler choices are propegated throughout build along with CFLAGS and CXXFLAGS 2026-09-07 10:51:34 -04:00
323555b722 feat(linux): portable build works on linux + benchmarks 2026-09-05 11:01:34 -04:00
7282b2e134 feat(justfile): added justfile with catalog of builds 2026-09-05 07:46:36 -04:00
6a54f2625e feat(initial): added portable mfem build system 2026-09-05 07:11:05 -04:00