FormingWorlds / PROTEUS

Coupled atmosphere-interior framework to simulate the temporal evolution of rocky planets.
https://fwl-proteus.readthedocs.io
Apache License 2.0
12 stars 1 forks source link

Self-consistent mass and radius for interior modules #262

Closed nichollsh closed 1 week ago

nichollsh commented 1 week ago

The current iteration of the code requires the user to specify interior mass and radius in the configuration file. However, interior mass is calculated as part of the Aragog/SPIDER/Dummy step anyway. This means that allowing the user to input the interior mass leads to two physically-inconsistent values. This is currently only physically consistent with using planetary masses and radii near Earth values, since then the SPIDER solution will happen to be identical to that provided by the user.

The simplest solution to this is to use the interior model to calculate the interior radius based on the inputted interior mass. This PR achieves this and closes #253.

Because Aragog currently uses constant physical properties, it does not make a very good structure model, but it's still more physically consistent this way. SPIDER (and even the Dummy module) does a good job in this regard.

Minor changes:

Requires https://github.com/ExPlanetology/aragog/pull/29 to be merged first.

Next steps:

nichollsh commented 1 week ago

@timlichtenberg this is now ready for review I think. There are lots of changed files, but this is mostly a result of the changed tests. It makes the changes we discussed in the meeting earlier, plus a few bug fixes that I discovered in the last week or so.

nichollsh commented 1 week ago

Thanks for the review Tim - this is really useful. I'll make these changes tonight/tomorrow, and if you could have a look again tomorrow then that would be great.

nichollsh commented 1 week ago

@timlichtenberg please can you have another look at this again today? I have made the changes that you suggested and responded to the other comments above. I also had to update the test data.

I will then address this issue: https://github.com/FormingWorlds/PROTEUS/issues/267