FormingWorlds / PROTEUS

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

spiderT branch ready for testing/integration #43

Closed djbower closed 2 months ago

djbower commented 1 year ago

There is now a new branch in the SPIDER repository called spiderT which uses temperature and pressure as the primary thermodynamic variables. This means that entropy is no longer used and therefore it is much easier and more convenient to (eventually) specify new and extended equations of state.

Rather than specifying an entropy scaling you now specify a temperature scaling:

-temperature0 3.0E3 # K

You must specify an entropy of fusion. The value below is consistent with the entropy of fusion defined by the liquidus and solidus in my previous papers:

-entropy_of_fusion 900.0 # J/kg/K

The initial condition in the configuration files should now use this construct in terms of temperature rather than entropy:

# initial condition
-IC_INTERIOR 1
-ic_adiabat_temperature 2500.0
# next serves as an initial guess for the temperature gradient
-ic_dTdr -1.0e-3

Otherwise, other parameters remain the same.

Note that the example opts files in tests/opts use a linearised melting curve to enforce bottom up crystallisation. It remains numerically challenging for SPIDER to deal with the multiple crossing scenario (I can provide more details in a separate issue if relevant).

nichollsh commented 1 year ago

Thanks for the information, Dan.

I've tried replacing spiderS with spiderT in a fresh installation of PROTEUS. The sciath tests appear to run fine, although they technically fail since they don't get exactly the same results as expected by the testing suite.

The larger issue that I have encountered is that spiderT finds that the rheological front is at the surface of the planet, while for the same configuration spiderS finds it at 0.45x the mantle depth. I also appear to be getting a very low value for the surface outward heat flux (<< 1 W m-2), while spiderT found a heat flux on the order of 1e5 W m-2.

I've tried this with the linearised and the higher resolution curves for the solidus and liquidus, and am getting the same results.

Is this something that you have encountered before with spiderT?

djbower commented 1 year ago

The test suite won't work correctly because I haven't updated it yet, so don't worry about that.

Thanks for the information about the rheological front and the outward heat flux (both of which are coupled of course, so one error could be causing both issues). I think you mean SpiderS found a higher heat flux on the order of 1e5 W m-2? And spiderT is currently getting a very low value? This will be helpful for me to debug.

My schedule is going to get quite choppy over the next few weeks because my kids are off school for the summer holiday and we are going on vacation. But I will try to keep hacking away at spiderT to resolve these differences. And please report any other strange issues - it's very helpful to get feedback so I can narrow down the debugging.

nichollsh commented 1 year ago

Yes you are right, there's a typo in my previous comment. SpiderT got a very low heat flux, while SpiderS got a more reasonable value on the order of 1e5 W m-2.

We are currently still using SpiderS in PROTEUS, but I plan to periodically try out SpiderT and will report on any strange behaviours.

nichollsh commented 6 months ago

@timlichtenberg and @djbower, should we close this issue now that pySPIDER is being developed?

nichollsh commented 2 months ago

Closing this since Aragog will replace SPIDER in future development