[mesa-users] Questions about making stellar isochrone and changing triple alpha reaction rates
Bill Paxton
paxton at kitp.ucsb.edu
Wed Oct 16 17:04:35 EDT 2013
Hi,
Excellent questions. And mesa is designed to make it possible to try new reaction rates without having to modify any code!! So please give this a try.
In the mesa naming scheme for reactions, triple alpha is "r_he4_he4_he4_to_c12".
This is the name that shows up in net definitions such as you will find in mesa/data/net_data/nets.For example if you look at basic.net in that directory, you'll see that it includes r_he4_he4_he4_to_c12 in its list of reactions.
As you have discovered, the mesa/rates module has the job of evaluating rates for reactions, and there are often multiple options for rates for a particular reaction. Triple alpha is particularly well supplied with built-in options:
! triple alpha
integer, parameter :: use_rate_3a_NACRE = 1
integer, parameter :: use_rate_3a_JR = 2 ! Fynbo et al. 2005 Nature 433, 136-139
integer, parameter :: use_rate_3a_CF88 = 3
integer, parameter :: use_rate_3a_FL87 = 4 ! Fushiki and Lamb, Apj, 317, 368-388, 1987
! note: use_rate_3a_FL87 is a special case. see eval_FL_epsnuc_3alf in rate_lib
But in addition to the built-in choices, there is always another way to give rates for any reaction.
In mesa/data/rates_data you will find a subdirectory named "rate_tables".
Inside that you'll find a file called "rate_list.txt" -- open it and take a look.
You can use this to add a new set of rates for triple alpha. Just add a line to rate_list.txt like this:
r_he4_he4_he4_to_c12 'my_triple_alpha.txt'
Then create the file my_triple_alpha.txt and put it in the rate_tables directory along with r1.txt etc.
Fill my_triple_alpha.txt with lines giving pairs of temperatures and rates. See r1.txt for a toy example.
You can have as many lines as you want with whatever spacing in T8 that you want -- just keep them ordered! And span the range of T8 from 0.01 to 100. Note that the rates you provide here are the temperature dependent part. The factors for density will be automatically added when the rates are used. Same for screening factors. And of course this scheme doesn't apply to weak rates. If you don't already have a table of (T8,rate) pairs, you can make one by running your new rate definition independently of mesa. You don't need to touch any mesa code for this.
When mesa/rates starts up, it reads the rate_list.txt file to find out what tables to read.
For each reaction, if that reaction is listed in rate_list.txt then mesa/rates will use the given rates table from the file in rates_tables. In other words, the table of rates referenced by rate_list.txt will be used instead of any other rate option.
If you want to change the entries in your rate file, just do it. Next time you start mesa it will read the new file.
[Note that by changing the control called "rate_tables_dir" in the &star_job inlist in mesa/star, you can relocate rate_tables if you'd rather not be changing the contents of mesa/data/rates_data/rate_tables. But it isn't required that you do that.]
Good luck, and let us know how it goes.
Cheers,
Bill
On Oct 16, 2013, at 11:08 AM, 이현택 wrote:
> Hello everyone.
>
>
> I send this message to have some advices for solving problems, which related to adding new triple alpha reaction rates
>
>
> and making stellar isochrone.
>
>
> I know that there are four default triple alpha reaction rates.
>
>
> In ~/mesa/star/defaults/star_job.defaults directory, NACRE , Fynbo , CF88 or FL87 are already given.
>
>
> I also found the rate_tripalf_reaclib subroutine('Fynbo'), which directly calculates JINA- Fynbo reaction rate.
>
>
> But, it seems that when I change the parameters in the rate_tripalf_reaclib subroutine, it does not give any differences compare to the default parameters.
>
>
> (when I changed the source file, I do excute ./clean and ./mk commands in mesa directory. also, in the inlist file, I wrote set_rate_3a = 'Fynbo'.)
>
>
> Please give me some advice to change the triple alpha reaction directly.
>
>
> In addtion, if I want to add some new triple alpha reaction rates, where should I modify the mesa code?
>
>
> For instance, imagine the new triple alpha reaction rate 'Fynbo2'. To assign this 'Fynbo2' to 'set_rate_3a' parameter in inlist file, where should I modify the source code?
>
>
> And here is another question. I want to make stellar isochrone, like in the Mesa instruction paper.(MODULES FOR EXPERIMENTS IN STELLAR ASTROPHYSICS (MESA):
>
>
> GIANT PLANETS, OSCILLATIONS, ROTATION, AND MASSIVE STARS, Bill Paxton et al , Figure 13. )
>
>
> If I can handle the raw data, I expect that I can get the stellar isochrone graph by using IDL.
>
>
> Please give some advices. Any kind of information would be helpful.
>
>
> Sincerely yours, Hyun-Taek
>
>
>
> ------------------------------------------------------------------------------
> October Webinars: Code for Performance
> Free Intel webinars can help you accelerate application performance.
> Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from
> the latest Intel processors and coprocessors. See abstracts and register >
> http://pubads.g.doubleclick.net/gampad/clk?id=60135031&iu=/4140/ostg.clktrk_______________________________________________
> mesa-users mailing list
> mesa-users at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/mesa-users
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.mesastar.org/pipermail/mesa-users/attachments/20131016/a6f017ec/attachment.html>
More information about the Mesa-users
mailing list