[Mesa-users] Dh_div_H_limit
Bill Paxton
paxton at kitp.ucsb.edu
Wed Jun 17 14:32:39 EDT 2020
Great! Thanks for letting me know and closing the loop. ;-)
b
> On Jun 17, 2020, at 11:26 AM, Hannah Brinkman <brinkmanhe at gmail.com> wrote:
>
> Dear Bill,
>
> Thank you for the clarification! I don't see any problems with the new documentation. I understand better now what the limiter means and I think I can move forward with my models.
>
> With kind regards,
> Hannah
>
> Op wo 17 jun. 2020 om 17:54 schreef Bill Paxton <paxton at kitp.ucsb.edu <mailto:paxton at kitp.ucsb.edu>>:
> think of it in terms of a limit on the magnitude of decrease in H (dH) and another limit for the relative change (dH/H).
>
> as it says in controls.defaults
> dH_div_H_limit = Limit on magnitude of relative decrease in any cell hydrogen abundance.
> dH_limit = Limit on magnitude of decrease in any cell hydrogen abundance during a single timestep.
>
> dH(k) = max(0d0, mass fraction H in cell k at start of step - mass fraction H in cell k at end of step) ! > 0 for decrease
> H(k) = mass fraction H in cell k at end of step
>
> the controls with names starting “dH_div_H_limit” are for the relative changes.
> the controls with names starting with just “dH” are for the absolute ones.
>
> for H, there is also an option to consider both increases and decreases in setting the limits.
>
> ! If true, then only consider decreases in abundance.
>
> dH_decreases_only = .true.
>
>
>> What confuses me is the bold-faced part.
>
>> dH_div_H_limit_min_H = 1d-3
>> !### dH_div_H_limit
>> ! If max `dH_div_H` is greater than this, reduce the next timestep by `dH_limit/max_dH`.
>> dH_div_H_limit = 0.5d0
>
> That a bug in the documentation! cut-and-paste strikes again.
> What it should say if the max value of dH(k)/H(k) for all cells k is > dH_div_H_limit
> then reduce the next timestep by dH_div_H_limit/max of (dH(k)/H(k))
>
> Here’s what it looks like now in controls.defaults - see any problems with this?
>
> !### dH_div_H_limit
>
> ! If max `dH_div_H` is greater than this, reduce the next timestep by `dH_div_H_limit/max dH_div_H`.
>
> dH_div_H_limit = 0.9d0
>
>
> i’m sure there are still more confusing ambiguities in the comments. thanks for reporting this one. since i never read documentation of mesa myself, it took me longer than it should have to notice what you were pointing out.
>
> b
>
>
>
>
>> On Jun 17, 2020, at 8:30 AM, Hannah Brinkman <brinkmanhe at gmail.com <mailto:brinkmanhe at gmail.com>> wrote:
>>
>> Dear Bill,
>>
>> Thank you for your reply.
>>
>> I found the same part in the controls.defaults of the MESA version I use (10398). What confuses me is the bold-faced part.
>>
>> ! Limit on magnitude of relative decrease in any cell hydrogen abundance.
>> ! `dH_div_H` here is `abs(xa(h1,k) - xa_old(h1,k))/xa(h1,k)`
>> ! considers all cells except where have convective mixing.
>> ! `dH_decreases_only` applies to `dH_div_H` also.
>> !### dH_div_H_limit_min_H
>> ! `dH_div_H` limits only apply where xa(h1,k) >= this limit.
>> dH_div_H_limit_min_H = 1d-3
>> !### dH_div_H_limit
>> ! If max `dH_div_H` is greater than this, reduce the next timestep by `dH_limit/max_dH`.
>> dH_div_H_limit = 0.5d0
>> !### dH_div_H_hard_limit
>> ! If max `dH_div_H` is greater than this, retry with smaller timestep.
>> dH_div_H_hard_limit = 1d99
>>
>> This seems to refer to a control higher up in the same section, where dH_limit is defined:
>>
>> ! Limit on magnitude of decrease in any cell hydrogen abundance during a single timestep.
>> ! dH here is `abs(xa(h1,k) - xa_old(h1,k))` for any cell k.
>> ! Considers all cells except where have convective mixing.
>> !### dH_limit_min_H
>> ! dH limits only apply where xa(h1,k) >= this limit.
>> dH_limit_min_H = 1d99
>> !### dH_limit
>> ! If max dH is greater than this, reduce the next timestep by `dH_limit/max_dH`.
>> dH_limit = 1d99
>> !### dH_hard_limit
>> ! If max dH is greater than this, retry with smaller timestep.
>> dH_hard_limit = 1d99
>> !### dH_decreases_only
>> ! If true, then only consider decreases in abundance.
>> dH_decreases_only = .true
>>
>> Even after reading this, I still have some questions left. If I understand correctly, this limiter shows up when the hydrogen abundance between two non-convective cells changes too much between timesteps. The questions I have left now, are;
>> - What determines the value of max_dH?
>> - If dH_limit = 1d99, wouldn't this lead to a very large decrease of the timestep?
>>
>> I hope you can clarify this for me.
>>
>> With kind regards,
>> Hannah
>>
>>
>> Op di 16 jun. 2020 om 18:25 schreef Bill Paxton <paxton at kitp.ucsb.edu <mailto:paxton at kitp.ucsb.edu>>:
>> The trick is to copy the string from the terminal output and search for it in star/defaults/controls.defaults
>>
>> Turns out there are 2 different limits related to dH for absolute and relative changes.
>>
>> ! 'dH' dH_limit
>> ! 'dH/H' dH_div_H_limit
>>
>> You want to then look at the info about dH_div_H_limit
>>
>> ! Limit on magnitude of relative decrease in any cell hydrogen abundance.
>> ! `dH_div_H` here is `abs(xa(h1,k) - xa_old(h1,k))/xa(h1,k)`
>> ! considers all cells except where have convective mixing.
>> ! `dH_decreases_only` applies to `dH_div_H` also.
>>
>>
>> !### dH_div_H_limit_min_H
>>
>> ! `dH_div_H` limits only apply where xa(h1,k) >= this limit.
>>
>> dH_div_H_limit_min_H = 1d-3
>>
>>
>> !### dH_div_H_limit
>>
>> ! If max `dH_div_H` is greater than this, reduce the next timestep by `dH_limit/max_dH`.
>>
>> dH_div_H_limit = 0.9d0
>>
>>
>> !### dH_div_H_hard_limit
>>
>> ! If max `dH_div_H` is greater than this, retry with smaller timestep.
>>
>> dH_div_H_hard_limit = 1d99
>>
>>
>>
>>> On Jun 16, 2020, at 9:06 AM, Hannah Brinkman via Mesa-users <mesa-users at lists.mesastar.org <mailto:mesa-users at lists.mesastar.org>> wrote:
>>>
>>> Dear All,
>>>
>>> When checking some of my recent models, I see a lot of times that the timestep is limited by DH/H. After checking this in the controls, I noticed that when this limiter appears, the timestep is decreased by DH_limit/max_DH. However, DH_limit is 1d99 by default. Wouldn't this lead to an enormous decrease of the timestep each time this control limits the timestep? Or do I misinterpret this limiter? I cannot find what determines max_dH.
>>>
>>> I hope someone can explain to me what is happening in the star when this limiter shows up.
>>>
>>> With kind regards,
>>> Hannah
>>>
>>>
>>>
>>>
>>> <http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> Virusvrij. www.avg.com <http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> <>_______________________________________________
>>> mesa-users at lists.mesastar.org <mailto:mesa-users at lists.mesastar.org>
>>> https://lists.mesastar.org/mailman/listinfo/mesa-users <https://lists.mesastar.org/mailman/listinfo/mesa-users>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.mesastar.org/pipermail/mesa-users/attachments/20200617/fe623e04/attachment.htm>
More information about the Mesa-users
mailing list