Closed Yurlungur closed 2 years ago
I have added a history reduction into the tov
package to plot the maximum pressure in the star as a function of time. This will let us see, e.g., quasiperiodic oscillations if we run long enough.
@brryan @jdolence @lroberts36 this is now ready for review. I was able to run a (very) underresolved neutron star on a uniform grid on a single GPU with self gravity, and it's stable. So I call that a win.
In the future it would be good to do some performance optimization, as well as some more strenuous tests and not a uniform grid. I will do that in a future PR. But for the purposes of this PR, I'm pretty happy to declare victory. Some additional changes I needed to implement to get this all working:
Thanks, @brryan I just pushed addressing your comments. When tests pass, I'll merge.
PR Summary
This PR finally rewrites the Cartesian monopole coordinate system tied to the monopole GR solver. I do the following:
ModifiedSystem
to support geometries with a time-dependent component. The coordinate transformation is assumed to be time-independent, but the geometry itself is allowed to evolve. This basically entails computing thed/dt
components of the metric gradients and transforming them into the new coordinate system as appropriate, assuming zero cross-talk between the space and time components of the metric. Note this approach only works because the coordinate transform is time-independent.SphericalToCartesian
transformation object, which I use in themonopole_gr
interpolation from the 3d grid to the 1d grid to transform relevant quantities like the Jacobian.using MonopoleCart=Modified<MonopoleSph, SphericalToCartesian>
Analytic
andCached
geometry modifier templatesI still need to test basically all of this, but it compiles and I think it's ready for feedback from y'all if you want to take a look. @brryan @jdolence @lroberts36
PR Checklist
scripts/bash/format.sh
.