[mesa-users] Fwd: [mesa:code] [r7407] - bill_paxton: now require user to set f0 > 0 for overshooting whenever have f > 0; both step and exponential
Warrick Ball
wball at astro.physik.uni-goettingen.de
Thu Feb 5 04:30:53 EST 2015
What will happen when one uses f_ov in the astero module? Currently this
presumably invokes the present (r7184) f0=f default.
W
On Wed, 4 Feb 2015, Bill Paxton wrote:
> Hi Falk,
> On Feb 4, 2015, at 3:25 PM, Falk Herwig wrote:
>
> Hi Bill, just saw this change on the repo. Can you elaborate a bit. Sounds as if you are not allowing
> f0=0, which makes sense. Or did you remove the implicit setting of f0 = f.
>
>
> Both. When f is > 0, then the corresponding f0 must now be explicitly set to something > 0 as well. No defaults
> for f0.
>
> There has been confusion about f0 and f for exponential and step overshooting. By getting rid of the default
> option I hope to at least bring the confusion out into the open where it can be resolved rather than have the code
> quietly do something that the user might not expect.
>
> Here are the current lines from controls.defaults concerning overshooting. Please take a look and feel free to
> edit it into something better.
>
> - Bill
>
> from star/defaults/controls.defaults
>
> ! The switch from convective mixing to overshooting happens
> ! at a distance f0*Hp into the convection zone
> ! from the estimated location where `grad_ad == grad_rad`,
> ! where Hp is the pressure scale height at that location.
> ! A value <= 0 for f0 is a mistake -- you are required to set f0 as well as f.
> ! take a look at the following from an email concerning this:
>
> ! 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. 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.
>
> ! There is no default value for f0; if you set f > 0 then you must get f0 > 0 as well.
>
> ----
>
> ! Optional step function for overshooting.
> ! This can be used simultaneously with exponential overshooting.
> ! When using step overshoot, you must set f0 as well as f.
>
> ! As above, `f0*Hp` determines r0 where switch from convection to overshooting.
> ! Overshooting extends a distance `step_f*Hp0` from r0
> ! with constant diffusion coeff `D = step_D + step_D0_coeff*D0`
> ! where D0 = diffusion coefficient D at point r0.
>
>
>
>
>
------------
Warrick Ball
Postdoc, Institut für Astrophysik Göttingen
wball at astro.physik.uni-goettingen.de
+49 (0) 551 39 5069
More information about the Mesa-users
mailing list