Skip to content

Conversation

@mcastrotapia
Copy link

I added the files used in Castro-Tapia & Cumming (2025) to implement 3-species fractionation in white dwarf models. This includes the modified version of the phase_separation.f90 file and a directory in star/test_suite called wd_o_ne_3_phase to test the extension. Additionally, among the extensions of the phase_separation.f90, we added the isotope 22Ne to the previous O/Ne fractionation and fixed an inconsistency with the coordinate in mass of the solid core (see Appendix A of Castro-Tapia & Cumming, 2025).

Changed for the version in Castro-Tapia & Cumming (2025) to incorporate 3-species phase separation and 22Ne in the O/Ne fractionation
Copyright header added. Additionally, the mass coordinate of the solid core is corrected in this version of phase separation (see Appendix A of Castro-Tapia & Cumming, 2025)
inlist for running ultramassive WD models from Castro-Tapia & Cumming (2025)
Table for C/O/Mg delta_C
Table C/O/Mg delta_Mg
Table C/O/Ne delta_C
@evbauer
Copy link
Member

evbauer commented Sep 25, 2025

Thank you Matias! I'll need some time to review this code to make sure that I understand how it fits into MESA phase separation generally, but I'm happy to take a look and try to help resolve any issues that might come up.

We'll also want to mark all of the data files as git-lfs so that the git repository doesn't have to track very large diffs for those. https://docs.github.com/en/repositories/working-with-files/managing-large-files/configuring-git-large-file-storage

If you can push a commit to tag all of the .dat and .mod files here as git-lfs files, then I can change the target branch of the PR and go ahead and "squash and merge" this PR onto a testing branch here. Then we can continue to iterate by opening a new pull request onto that branch for any subsequent changes.

That may sound a bit convoluted, but the squashing + lfs files should allow us to avoid ever having very large diffs in the repository associated with this work, which I think will be worthwhile in the long run.

@evbauer evbauer changed the base branch from main to three_component_PS September 25, 2025 22:13
@mcastrotapia
Copy link
Author

Hi Evan! Thank you for reviewing the pull request. I resubmitted the directory in the test_suite and marked all of the data files as git-lfs, so you can proceed. Please let me know if everything is okay :)

@evbauer
Copy link
Member

evbauer commented Sep 29, 2025

Great! I ran the checks before squashing/merging, and it looks like the fortran linter caught some white space issues that would be good to clean up. I think it basically just wants to get rid of indendations on a bunch of blank lines. https://github.com/MESAHub/mesa/actions/runs/18109299040/job/51538440098?pr=860

The builds are also failing because the git checkout is failing to recognize the lfs files properly. I'm pretty sure the fix for that is just to add the .dat files to the top level .gitattributes files by adding this line alongside all the other LFS files listed there:

star/test_suite/wd_o_ne_3_phase/*.dat filter=lfs diff=lfs merge=lfs -text

Can you push changes to fix those two issues and we'll try again with the checks?

@mcastrotapia
Copy link
Author

Hi Evan! I added the necessary files to .gitattributes. I hope it worked... I also eliminated the blank lines in the fortran files that were failing. Please let me know if the checks are okay now!

@evbauer
Copy link
Member

evbauer commented Sep 30, 2025

It looks like we're also getting some relatively minor compilation failures: https://github.com/MESAHub/mesa/actions/runs/18114085086/job/51547218693?pr=860#step:3:8836

The fortran linter is picking up a few other things (trailing white space, lines that are technically too long, .eq. would be better as ==, etc), but we can fix those later. I'm happy to go ahead with the squash/merge once we get this passing the compilation tests, and then we can continue with a new PR from the testing branch here.

@evbauer
Copy link
Member

evbauer commented Sep 30, 2025

Ah, I see now that we just lost a trailing underscore from end subroutine update_model_ in the latest commits, so I think compilation should be fine as soon as we get that one character back in there.

@mcastrotapia
Copy link
Author

Thanks, Evan! I added the underscore. Let's see if it works

@evbauer evbauer merged commit 6f0a36a into MESAHub:three_component_PS Sep 30, 2025
3 of 4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants