Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Generalize composition diffusivity used for thermohaline calculations #598

Open
evbauer opened this issue Nov 10, 2023 · 1 comment
Open
Assignees
Labels
enhancement New feature or request

Comments

@evbauer
Copy link
Member

evbauer commented Nov 10, 2023

When the composition diffusivity enters into thermohaline calculations (e.g. when thermohaline_option = Brown_Garaud_Stellmach_13), currently we assume a H/He-dominated mixture. See

if(chemZ.gt.2) then
! This is if the driving chemical is NOT He.
! Log Lambda for H-dominant chem mixture (equation 10)
loglambdacx = loglambdah - log(chemz)
! Log Lambda for He-dominant chem mixture (equation 10)
loglambdacy = loglambdah - log(2.d0*chemz)
! Calculation of C_ij coeffs (equation 12)
ccx = log(exp(1.2d0*loglambdacx)+1.)/1.2d0
ccy = log(exp(1.2d0*loglambdacy)+1.)/1.2d0
! Reduced masses (I had to guess, from Bahcall & Loeb 1990), with H and He
acx = (1.d0*chemA)/(1.d0+chemA)
acy = 4*chemA/(4.d0+chemA)
! My formula (see notes) based on Proffitt and Michaud 1993
kmu = 2*Bcoeff*pow(T,2.5d0)/(sqrt5*rho*chemZ*chemZ)/ &
(XH1*sqrt(acx)*ccx + (1-XH1)*sqrt(acy)*ccy)
else
! Log Lambda for H-He mixture (equation 10)
loglambdah = -19.26d0 - log(2d0) - 0.5d0*log(rho) + &
1.5d0*log(T) - 0.5d0*log(1d0 + 0.5d0*(1+XH1))
! Calculation of C_ij coeffs (equation 12)
ccy = log(exp(1.2d0*loglambdah)+1d0)/1.2d0
! My formula (see notes) based on Proffitt and Michaud 1993
kmu = (Bcoeff*pow(T,2.5d0)/(rho*ccy))*(3+XH1)/((1+XH1)*(3+5*XH1)*(0.7d0+0.3d0*XH1))
endif

We already have all of the physics in the code to do the more general case elsewhere for element diffusion, so we should take advantage of that here.

@evbauer evbauer added the enhancement New feature or request label Nov 10, 2023
@evbauer evbauer self-assigned this Nov 10, 2023
@evbauer
Copy link
Member Author

evbauer commented Nov 10, 2023

The current implementation is based on https://ui.adsabs.harvard.edu/abs/1993ASPC...40..246M/abstract

That's derived in the same general picture that we use for the full implementation of the Burgers equations for diffusion, but with some simplifying assumptions about composition and some fits used to estimate the Coulomb logarithm. So we should be able to translate the MESA implementation of https://ui.adsabs.harvard.edu/abs/2016PhRvE..93d3203S/abstract into an updated version of this without making any composition assumptions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Development

No branches or pull requests

1 participant