[mesa-users] testing diffusion for 1.2 Msun with Ledoux criterion

Alina Istrate aistrate at astro.uni-bonn.de
Tue Jan 20 08:52:03 EST 2015


Hi Bill,

I tried Rob's suggestions and the only  difference made was by
varcontrol_target  set to 1d-6 , the "zigzag" behaviour  is still there
but at a much smaller scale.

Also, semiconvection  is on .

Moreover I encountered a strange error  and  my office mate Pablo
Marchant  thinks is a bug so I listed it here (the error seems to come
from this module  num/private/mod_dopri5.f).


 ################
STOP 1
 exit at x=        0.1283E+14
  more than nmax =        1000 steps are needed
 solver returned ierr /= 0          -2


I  attached the  slightly modified inlist from
test_suite/1.5M_with_diffusion   (MESA version 7184)
 
Thanks a lot for your help!

Cheers,


Alina




On 01/19/2015 06:25 PM, Bill Paxton wrote:
> Hi Alina,
>
> Rob's suggestions are good ones.  There are also ways to increase resolution selectively near convective boundaries as an alternative to using mesh_delta_coeff to get a general increase in resolution throughout the model.
>
> Did you turn on semiconvection along with Ledoux?   Pure Ledoux without semiconvection has similar problems to pure Schw without overshooting.  It produces sharp changes in composition that can give numerical instabilities.
>
> If you'd send your inlist's etc, I'd be happy to take a look.
>
> Cheers,
> Bill
>
>
>
>
>
> On Jan 19, 2015, at 8:35 AM, Alina Istrate wrote:
>
>> Dear all,
>>
>>
>> I am running the test suite 1.5M_with_diffusion with a 1.2 Msun  and I
>> noticed something strange.   When including the Ledoux criterion for
>> convection the HR diagram during the first 2 Gyr  (I stop the run then)
>> looks really strange,  showing a strong "zigzag" behaviour (this does
>> not happen for 1.5 Msun).  Did anyone else encounter this or has an idea
>> what produces it?
>> I attach here the inlist  used as well as an HR diagram.
>>
>>
>>
>> Cheers,
>>
>> Alina
>>
>>
>> p.s  Mesa version  used is 7184
>>
>>
>>
>>
>>
>> -- 
>> Alina Istrate 
>> PhD student
>>
>>
>> Argelander Institute fur Astronomie
>> Auf dem Hugel 71
>> D-53121 Bonn
>> Germany
>> Room 2.024
>>
>> <inlist_1.5M_with_diffusion><HR_1.2_zig_zag.1.2_zig_zag.pdf>------------------------------------------------------------------------------
>> New Year. New Location. New Benefits. New Data Center in Ashburn, VA.
>> GigeNET is offering a free month of service with a new server in Ashburn.
>> Choose from 2 high performing configs, both with 100TB of bandwidth.
>> Higher redundancy.Lower latency.Increased capacity.Completely compliant.
>> http://p.sf.net/sfu/gigenet_______________________________________________
>> mesa-users mailing list
>> mesa-users at lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/mesa-users

-- 
Alina Istrate 
PhD student


Argelander Institute fur Astronomie
Auf dem Hugel 71
D-53121 Bonn
Germany
Room 2.024

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.mesastar.org/pipermail/mesa-users/attachments/20150120/6d2c3e10/attachment.html>
-------------- next part --------------

! inlist_1.5M_with_diffusion



&star_job
      
      show_log_description_at_start = .false. 
      


      save_model_when_terminate = .true.
      save_model_filename = 'final.mod'
      
      write_profile_when_terminate = .true.
      filename_for_profile_when_terminate = 'final_profile.data'



/ ! end of star_job namelist

&controls

     
      max_model_number = 5000

      

      initial_mass = 1.2
      initial_z = 0.02

      photostep = 50
      profile_interval = 50
      history_interval = 10
      terminal_cnt = 10
      write_header_frequency = 10
      
      mixing_length_alpha = 1.6
      use_Ledoux_criterion = .true.
      alpha_semiconvection = 1d-3
      semiconvection_option = 'Langer_85'
      varcontrol_target = 1d-6
      max_age = 1d9
      

      step_overshoot_f_above_nonburn = 0.0
      step_overshoot_f_below_nonburn = 0.0
      step_overshoot_f_above_burn_h = 0.10
      step_overshoot_f_below_burn_h = 0.0
      step_overshoot_f_above_burn_he = 0.10
      step_overshoot_f_below_burn_he = 0.0
      step_overshoot_f_above_burn_z = 0.10
      step_overshoot_f_below_burn_z = 0.0
      overshoot_f0_above_nonburn = 0.0
      overshoot_f0_below_nonburn = 0.0
      overshoot_f0_above_burn_h = 0.0
      overshoot_f0_below_burn_h = 0.0
      overshoot_f0_above_burn_he = 0.0
      overshoot_f0_below_burn_he = 0.0
      overshoot_f0_above_burn_z = 0.0
      overshoot_f0_below_burn_z = 0.0
      step_overshoot_D0_coeff = 1.0
      radiation_turbulence_coeff = 1
            
      max_iter_for_resid_tol1 = 3
      tol_residual_norm1 = 1d-5
      tol_max_residual1 = 1d-2
      
      max_iter_for_resid_tol2 = 12
      tol_residual_norm2 = 1d99
      tol_max_residual2 = 1d99
      
      
      
      
      
      do_element_diffusion = .true. ! determines whether or not we do diffusion
      diffusion_dt_limit = 3.15d7 ! no element diffusion if dt < this limit (in seconds)
      
      diffusion_T_full_on = 1d3
      diffusion_T_full_off = 1d3
      
      diffusion_calculates_ionization = .true.
      
      diffusion_num_classes = 8 ! number of classes of species for diffusion calculations
      diffusion_class_representative(1) = 'h1'
      diffusion_class_representative(2) = 'he3'
      diffusion_class_representative(3) = 'he4'
      diffusion_class_representative(4) = 'c12'
      diffusion_class_representative(5) = 'n14'
      diffusion_class_representative(6) = 'o16'
      diffusion_class_representative(7) = 'ne20'
      diffusion_class_representative(8) = 'mg24'
   
      ! in ascending order.  species goes into 1st class with A_max >= species A
      diffusion_class_A_max(1) = 2
      diffusion_class_A_max(2) = 3
      diffusion_class_A_max(3) = 4
      diffusion_class_A_max(4) = 12
      diffusion_class_A_max(5) = 14
      diffusion_class_A_max(6) = 16
      diffusion_class_A_max(7) = 20
      diffusion_class_A_max(8) = 10000
         
      diffusion_use_isolve = .true.
      diffusion_rtol_for_isolve = 1d-4
      diffusion_atol_for_isolve = 1d-5
      diffusion_maxsteps_for_isolve = 1000
      diffusion_isolve_solver = 'ros2_solver'
      
 
      ! timesteps
      max_timestep = 3.15d14  ! in seconds.  max_timestep <= 0 means no upper limit.            

      ! mesh adjustment
      mesh_delta_coeff = 0.5
   	
   	P_function_weight = 25
   	T_function1_weight = 75
      
      xtra_coef_czb_full_on = 0
      xtra_coef_czb_full_off = 1

      xtra_coef_a_l_nb_czb = 0.01 ! above lower nonburn convective boundary
      xtra_dist_a_l_nb_czb = 10 ! above lower nonburn convective boundary

      xtra_coef_b_l_nb_czb = 0.05 ! below lower nonburn convective boundary
      xtra_dist_b_l_nb_czb = 3 ! below lower nonburn convective boundary

         
      xa_function_species(1) = 'he4'  ! name of nuclide as defined in chem_def
		xa_function_weight(1) = 80
		xa_function_param(1) = 1d-2
         
      xa_function_species(2) = 'he3'  ! name of nuclide as defined in chem_def
		xa_function_weight(2) = 20
		xa_function_param(2) = 1d-5

      ! FOR DEBUGGING

      !report_hydro_solver_progress = .true. ! set true to see info about newton iterations
      !report_ierr = .true. ! if true, produce terminal output when have some internal error
      
      !max_years_for_timestep = 3.67628942044319d-05

      !report_why_dt_limits = .true.
      !report_all_dt_limits = .true.
      
      !show_mesh_changes = .true.
      !mesh_dump_call_number = 5189
      !okay_to_remesh = .false.
      
      !trace_evolve = .true.
      

      ! hydro debugging
      !hydro_check_everything = .true.
      !hydro_inspectB_flag = .true.
      
      !hydro_numerical_jacobian = .true.
      !hydro_save_numjac_plot_data = .true.
      !small_mtx_decsol = 'lapack'
      !large_mtx_decsol = 'lapack'
      !hydro_dump_call_number = 195

      !trace_newton_bcyclic_solve_input = .true. ! input is "B" j k iter B(j,k)
      !trace_newton_bcyclic_solve_output = .true. ! output is "X" j k iter X(j,k)
      
      trace_newton_bcyclic_steplo = 85 ! 1st model number to trace
      trace_newton_bcyclic_stephi = 88 ! last model number to trace
      
      trace_newton_bcyclic_iterlo = 0 ! 1st newton iter to trace
      trace_newton_bcyclic_iterhi = 2 ! last newton iter to trace
      
      trace_newton_bcyclic_nzlo = 1 ! 1st cell to trace
      trace_newton_bcyclic_nzhi = 10000 ! last cell to trace; if < 0, then use nz as nzhi
      
      trace_newton_bcyclic_jlo = 1 ! 1st var to trace
      trace_newton_bcyclic_jhi = 100 ! last var to trace; if < 0, then use nvar as jhi
      
      !trace_k = 2808

/ ! end of controls namelist


&pgstar
         


/ ! end of pgstar namelist


More information about the Mesa-users mailing list