[Mesa-users] Setup for overshooting
辛文宇
xinwenyu16 at mails.ucas.ac.cn
Sun Apr 23 12:52:04 UTC 2023
Hi Ebraheem,
Thanks very much for the suggestions.
>>"Another question is that if I want to test with no overshooting for shell burning, can I set f = 0, or I need to give a very small value for f. Because f and f0 shoould >0."
> You can do this by setting: overshoot_scheme(1) = 'none' , instead of 'exponential' in the &controls I shared above.
I try the overshoot_scheme(1) = 'none', but there is warming of Invalid overshoot_scheme:none.
I also checked the file in controls.defaults file, there is no choice of 'none'.
Is there any other way for no overshooting?
Thanks,
Wenyu
-----原始邮件-----
发件人:"Ebraheem Farag" <ekfarag at asu.edu>
发送时间:2023-04-20 18:11:27 (星期四)
收件人: "辛文宇" <xinwenyu16 at mails.ucas.ac.cn>
抄送: mesa-users at lists.mesastar.org
主题: Re: [Mesa-users] Setup for overshooting
Hello Wenyu,
I believe the order of precedence for overshooting is such that overshoot_scheme(1) supersedes overshoot_scheme(2). In the current form you have written, overshoot_scheme(2) will not take effect because overshoot_scheme(1) will overwrite it. By switching the ranking, so that your 'burn_z' overshoot scheme is (1), and your 'any' routine for all other regions is set to (2), your scheme should work as intended.
----
Here is a pasted explanation from a previous email of how overshoot functions pasted from the overshooting section of $MESA_DIR/star/defaults/controls.defaults:
Overshooting works by taking the diffusion mixing coefficient at the edge of the convection zone and extending it beyond the zone. But – and here’s the issue – at the exact edge of the zone the mixing coefficient goes to 0. So we don’t want that. Instead we want the value of the mixing coeff NEAR the edge, but not AT the edge. The “f0” parameter determines the exact meaning of “near” for this. It tells the code how far back into the zone to go in terms of scale height. The overshooting actually begins at the location determined by f0 back into the convection zone rather than at the edge where the diffusion coeff is ill-defined. The overshooting actually begins at the location determined by f0 back into the convection zone rather than at the edge where the diffusion coeff is ill-defined. So, for example, if you want overshooting of 0.2 scale heights beyond the normal edge, you might want to back up 0.05 scale heights to get the diffusion coeff from near the edge and then go out by 0.25 scale heights from there to reach 0.2 Hp beyond the old boundary. In the inlist this would mean setting the “f0” to 0.05 and the “f” to 0.25.
----
A common practice, though not required, is to take a step back such that fo = 0.5*f, which helps establish a diffusion coefficient well inside the convection zone. In the current form, your diffusion coefficient for (1) is set to 0.006*Hp, as you are taking a 0.004*Hp step backward into the convection zone, and then overshooting 0.01*Hp from this position.
In (2), you are taking a 0.004*Hp step backward and then overshooting 0.004*Hp forward, which is technically not overshooting above the convective boundary and is instead enhancing the diffusion coefficient near the edge of the convection zone.
----
Here is a corrected overshoot scheme, which is what I believe you might be after? :
&controls
! less overshooting above Z burning shell (e.g. C, O, Si), overshoot distance = 0.004*Hp
overshoot_scheme(1) = 'exponential' ! one of exponential or step
overshoot_zone_type(1) = 'burn_z' ! one of burn_H, burn_He, burn_Z, nonburn, any
overshoot_zone_loc(1) = 'shell' ! one of core, shell, any
overshoot_bdy_loc(1) = 'any' ! one of bottom, top, any
overshoot_f(1) = 0.008 ! was 0.004
overshoot_f0(1) = 0.004
! overshooting for all shells, superseded by overshoot_scheme(1) for burning Z shells, overshoot distance = 0.01*Hp
overshoot_scheme(2) = 'exponential' ! one of exponential or step
overshoot_zone_type(2) = 'any' ! one of burn_H, burn_He, burn_Z, nonburn, any
overshoot_zone_loc(2) = 'any' ! one of core, shell, any
overshoot_bdy_loc(2) = 'any' ! one of bottom, top, any
overshoot_f(2) = 0.015 ! was 0.01
overshoot_f0(2) = 0.005 ! was 0.004 and is fine, but changed by EbF for consistency with overshoot_scheme(1)
----
>"Another question is that if I want to test with no overshooting for shell burning, can I set f = 0, or I need to give a very small value for f. Because f and f0 shoould >0."
You can do this by setting: overshoot_scheme(1) = 'none' , instead of 'exponential' in the &controls I shared above.
-EbF
On Thu, Apr 20, 2023 at 2:35 AM 辛文宇 <xinwenyu16 at mails.ucas.ac.cn> wrote:
Hi Everyone,
I am going to change the overshooting of C-shell, O-shell and Si-shell burning to a smaller value.
Can I set the overshooting as follows:
overshoot_scheme(1) = 'exponential' ! one of exponential or step
overshoot_zone_type(1) = 'any' ! one of burn_H, burn_He, burn_Z, nonburn, any
overshoot_zone_loc(1) = 'any' ! one of core, shell, any
overshoot_bdy_loc(1) = 'any' ! one of bottom, top, any
overshoot_f(1) = 0.010
overshoot_f0(1) = 0.004
overshoot_scheme(2) = 'exponential' ! one of exponential or step
overshoot_zone_type(2) = 'burn_z' ! one of burn_H, burn_He, burn_Z, nonburn, any
overshoot_zone_loc(2) = 'shell' ! one of core, shell, any
overshoot_bdy_loc(2) = 'any' ! one of bottom, top, any
overshoot_f(2) = 0.004
overshoot_f0(2) = 0.004
In first part, the overshooting of all of the cores and shells are set to 0.01.
Then second part change the 'f' of only the shells to 0.004, right?
Another question is that if I want to test with no overshooting for shell burning,
can I set f = 0, or I need to give a very small value for f. Because f and f0 shoould >0.
Thanks,
Wenyu
_______________________________________________
mesa-users at lists.mesastar.org
https://urldefense.com/v3/__https://lists.mesastar.org/mailman/listinfo/mesa-users__;!!IKRxdwAv5BmarQ!bmHiP3-PihLTp-9DGHcp2mi-40kCuk2ZQdOueGJk74bQ3F8_AFGhOZIG-8uDaEdoJIo_zWhlZRoAIpQ8oJbcXb0RvQ$
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.mesastar.org/pipermail/mesa-users/attachments/20230423/92705bfb/attachment.htm>
More information about the Mesa-users
mailing list