[mesa-users] Modifying timestep based on chi-squared from astero module

Bill Paxton paxton at kitp.ucsb.edu
Tue Sep 2 15:05:16 EDT 2014


Hi Warrick,

I've made a small change to astero/extras_support so that it will work for you to change s% dt_next in your extras_finish_step.  It will be in the next release, but if you'd like to play sooner, let me know.

Cheers,
Bill




On Sep 2, 2014, at 8:02 AM, Warrick Ball wrote:

> As usual, I've managed to make a lot of progress since I wrote the first email.  It looks like extras_support supplements the routines in run_star_extras.f.  Therein, chi2 is -1 if not evaluated in full.  So I can modify astero_extras_finish_step to change the timestep.
> 
> I haven't tried modifying the timestep just yet (and other things are pressing now), but I have checked that I'm getting the correct value of chi2 and, according to Bill's comments last week, extras_finish_step is the right place to modify s% dt_next.
> 
> I did try to summon chi2 from extras_support, but I ended up in a dependency loop: extras_support already depends on run_star_extras!  So unless I'm mistaken, I have to change extras_support directly.  Which is familiar territory, but I know not what Bill likes.
> 
> Cheers,
> Warrick
> 
> 
> 
> On Tue, 2 Sep 2014, Warrick Ball wrote:
> 
>> Hi all,
>> 
>> I want to experiment with modifying the timestep when using the astero module using the most recent value of chi-squared. i.e. take smaller steps as chi-squared gets smaller, according to some user-defined function.
>> 
>> I was about to start trying to get chi-squared in run_star_extras.f when I discovered (through some grepping) that there's a function
>> "other_after_get_chi2" in astero_data.f.  It's called if use_other_after_get_chi2 is true, but it seems to be hardcoded to .false., also in astero_data.f.
>> 
>> Is there a way to use this function?  Or is it meant to be off limits?  I tried to pull it into run_star_extras.f, but the usual method doesn't work because other_after_get_chi2 isn't a member of the star_info structure. I thought of modifying astero_data.f or astero_support.f directly, but the code block looks unfamiliar to me.  Here's astero_data.f:55:
>> 
>>     type astero_info
>> 
>>        procedure(other_proc_interface), pointer, nopass :: &
>>           other_after_get_chi2 => null()
>> 
>>        procedure(other_adipls_mode_info_interface), pointer, nopass :: &
>>           other_adipls_mode_info => null()
>> 
>>     end type astero_info
>> 
>> Is this defining a new pointer?  Can I use it to get to other_after_get_chi2 and modify s% dt_next?
>> 
>> This is revision 6208, so apologies if this is a result of an old version of the code.  Thanks for any input!
>> 
>> Cheers,
>> Warrick
>> 
>> 
>> ------------
>> Warrick Ball
>> Postdoc, Institut für Astrophysik Göttingen
>> wball at astro.physik.uni-goettingen.de
>> i+49 (0) 551 39 5069
> 
> 
> ------------
> Warrick Ball
> Postdoc, Institut für Astrophysik Göttingen
> wball at astro.physik.uni-goettingen.de
> +49 (0) 551 39 5069------------------------------------------------------------------------------
> Slashdot TV.  
> Video for Nerds.  Stuff that matters.
> http://tv.slashdot.org/_______________________________________________
> mesa-users mailing list
> mesa-users at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/mesa-users





More information about the Mesa-users mailing list