Commit Graph

28 Commits

Author SHA1 Message Date
ae5d61bd75 feat(poly): locking phi surface flux and fixed phi boundary condition application 2025-04-28 13:44:27 -04:00
2acc037111 fix(poly): phi boundary values now coorespond to theta flux through polytrope surface 2025-04-25 10:32:06 -04:00
e56ab5644b fix(poly): fixed -M bug in form
MFEM MixedVectorWeakDivergenceIntegrator is actually already -M in our derivation, I have negated this so that Mform -> M directly
2025-04-23 09:13:30 -04:00
e4b56d7ce2 feat(poly): added memory safty flags 2025-04-21 10:18:44 -04:00
afdebb8636 refactor(operator): added updatePreconditioner method
the preconditioner must be built once before the solver begins to iterater, by putting the logic for this in a dedicated method it becomes cleaner to call
2025-04-21 09:56:34 -04:00
30a6cb074f docs(src): updated file headers 2025-04-21 08:56:45 -04:00
431a47b9c7 refactor(poly): updated header guards to pragma once 2025-04-21 08:54:59 -04:00
58cebc6167 feat(poly): preconditioner is now being computed 2025-04-21 08:35:29 -04:00
4a6b7aaa35 feat(polytrope-operator): finished computing the preconditioner 2025-04-21 08:04:49 -04:00
274f24034c refactor(operator.h): removed get block methods 2025-04-21 07:45:17 -04:00
08b68c22de feat(poly): major work on preconditioner for block form of lane emden equation
working on a "smart" schur compliment preconditioner for the block form of the lane emden equation. Currently this is stub and should not be considered usable
2025-04-09 15:17:55 -04:00
acf5367556 fix(poly): bug fixing in block form
currently derivitive constraint is not working
2025-04-03 11:14:50 -04:00
dcc4381cbb refactor(poly): removed unused includes 2025-04-02 15:00:28 -04:00
e3afe90f37 feat(poly): moved to a block form for poly
essential dofs can be applied to both theta and phi (grad theta) if we move to a block form. I have done this derivation and made that change so that we can properly apply the central boundary condition to the slope
2025-04-02 14:57:37 -04:00
0880403850 fix(poly): have a much closer to working polytrope, still small divergence near core 2025-03-27 14:26:23 -04:00
b3581d11ed feat(poly): added full constraint integrator function
not yet debugged
2025-03-19 13:49:21 -04:00
0ec1b6e751 feat(poly): find all connected elements to central vertex
In order to constrain the central slope we find all the elements connected to the central vertex. The slope will be approximated over these using the finite difference method
2025-03-19 11:15:37 -04:00
b98f6b6ebd feat(poly): started work on penalty term in variational form 2025-03-19 10:09:37 -04:00
18e719fba1 refactor(header): brought auto header changes from main into polytrope branch 2025-03-18 07:21:47 -04:00
3f86d0ceb1 docs(src): added file headers to all files 2025-03-17 12:42:33 -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
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
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
7330fb9906 feat(poly): initial build system for polytrope 2025-02-14 10:50:07 -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