From: Bill P. <pa...@ki...> - 2014-04-01 23:00:47
|
Hi Kevin, In the current implementation of mesa/star, we use the MLT partials of gradr, gradT, and the conv_dP_term, but not of anything else. -B On Apr 1, 2014, at 3:20 PM, Kevin Moore wrote: > Hi Bill et al., > > I’ve got a question regarding using the other_mlt hook. Specifically, several of the expected return values are partial derivatives of things like the diffusion coefficient, gradT, the convective velocity, etc. with respect to variables like rho, T, P, L, etc. (full list in mlt/public/mlt_def.f). > > In mlt/private/mlt.f, the calls to the thermohaline and semiconvection subroutines leave several of these partial derivatives set to zero (seemingly on purpose). For example, the diffusion coefficient (D) and the convective velocity (conv_vel) are explicitly non-zero in both cases, but their partial derivatives are set as d_D_dvb = 0 and d_conv_vel_dvb = 0, respectively. However, in the standard_scheme subroutine these partials are evaluated and filled in. > > My question is: "why is this so?” Are partial derivatives of certain MLT variables required by MESA, but others not? Is there danger in leaving some of them set to zero? > > In the semiconvection implementation I wrote, I’ve worked out all the partial derivatives of gradT, D, and conv_vel, but are these necessary? I was having issues with very small time steps (<10 yrs) during core He burning, with the time steps being limited by “newton_iters” (i.e. the Newton solver was taking more than 5 iterations) so I figured it may have something to do with my supplied partial derivatives from other_mlt. Of course, making them seemingly more accurate just made the time steps smaller :/ > > -Kevin > ------------------------------------------------------------------------------ > _______________________________________________ > mesa-users mailing list > mes...@li... > https://lists.sourceforge.net/lists/listinfo/mesa-users |