Commit Graph

16 Commits

Author SHA1 Message Date
df3cf68e92 docs(src): updated headers 2025-03-19 13:50:01 -04:00
b3581d11ed feat(poly): added full constraint integrator function
not yet debugged
2025-03-19 13:49:21 -04:00
b98f6b6ebd feat(poly): started work on penalty term in variational form 2025-03-19 10:09:37 -04:00
afc488abd1 fix(poly): coefficients properly handle chain rule 2025-03-18 11:18:46 -04:00
8dcdf92414 feat(poly): interpolating polynomial to find polytrope surface
Instead of treating the polytrope as a free boundary problem I have defined an interpolating polynominal, accurate to within 0.01 percent over n=[0,5) which is used to set the size of the domain for a given n
2025-03-18 10:15:51 -04:00
b4615fc0aa fix(poly): working on solving polytrope 2025-03-14 09:12:40 -04:00
59162a1a54 feat(poly): constraint integrator
The NewtonSolver has been subclassed to try to auto enforce the zero boundary central condition by modifying the residual vector and the gradient matrix. This is a work in progress

BREAKING CHANGE:
2025-03-05 12:55:53 -05:00
f61c8fae28 fix(poly): working on 3D polytrope
not working yet
2025-03-03 09:54:13 -05:00
6416d95260 feat(meshIO): LinearRescale method added
Rescaling a mesh by a linear transformation is a useful option so that we can start with a single "base" mesh and then rescale it to the dimensions needed for our problem. This commit adds the LinearRescale option too meshIO so that a unit sphere can be turned into a sphere of arbitrary radius (as an example).
2025-02-24 16:35:39 -05:00
d8789bd343 feat(polySolver): getters for polySolver 2025-02-23 14:11:18 -05:00
9925f56e34 fix(poly): polytrope converges to solution
first commit where the polytrope module converges to a solution. I have not yet validated if it is a correct solution
2025-02-20 16:05:02 -05:00
776174c093 refactor(macros): added macros class
macros provides a unified place to define macros which can be accessed at other points in the code. I defined a DEPRICATION_WARNING_OFF macro so we can disable those warnings for times when we cannot control them
2025-02-20 16:04:05 -05:00
ff299f8ce7 fix(poly): changed lambda from fespace to scalar
previously I had a lagrangian multipliers at every element; however, we are enforcing a global constraint so there need only be one lagrangian multiplier
2025-02-20 15:36:46 -05:00
1fd1e624f2 feat(poly): lagrangian constrained weak form of 3D lane-Emden
added a basic implimentation of the 3D lane emden equation using a lagrangian multiplier to constrain the value at the center of a spherical domain
2025-02-20 15:28:00 -05:00
b939fd68fa feat(poly): added first pass implimentation of 3D constrained lane-emden solver
This has not currently been tested and this commit should not be viewed as scientifically complete
2025-02-19 14:35:15 -05:00
f4be5b3733 feat(poly): added skeleton of polytrope model
the polytrope module will be used as an initial guess to the solver. A skeleton of this has been imported from https://github.com/tboudreaux/FEMPolytrope

This module will need major updates still to handle 3D, proper boundary conditions, and to incorporate it with the rest of our meshing scheme
2025-02-12 16:44:10 -05:00