Это старая версия документа!
Grt-Cpx Nakamura, 2009
Термометр с учетом неидеальности Fe-Mg обмена в гранате.
Подробнее
Reference: | D. Nakamura A new formulation of garnet-clinopyroxene geothermometer based on accumulation and statistical analysis of a large experimental data set, 2009 [ref] |
---|---|
Collibration: | Экспериментальные данные. 333 пары в графитовых капсулах |
Accuracy: | ±74 ºС |
Ranges: | 800-1820 ºС 15-75 Kbar |
Renew: | Krogh Ravna, 2000 |
Для улучшения этой статьи следует:
- Добавить подробное описание
Код метода
- source('recalc_grt_8cat_norm.r');
- source('recalc_cpx_4cat_norm_jd.r');
- sensors.t.grt_cpx_nakamura <- function(Grt, Cpx, P, usePFU = FALSE, ...){
- if (!usePFU) Grt <- recalc.grt_8cat_norm(Grt);
- if (!usePFU) Cpx <- recalc.cpx_4cat_norm_jd(Cpx);
- X_Grt_Ca <- Grt$Ca_pfu / (Grt$Mg_pfu + Grt$Fe_pfu + Grt$Ca_pfu);
- X_Grt_Fe <- Grt$Fe_pfu / (Grt$Mg_pfu + Grt$Fe_pfu + Grt$Ca_pfu);
- X_Grt_Mg <- Grt$Mg_pfu / (Grt$Mg_pfu + Grt$Fe_pfu + Grt$Ca_pfu);
- X_Cpx_Fe <- Cpx$Fe_p2_pfu / (Cpx$Al_pfu + Cpx$Fe_p2_pfu + Cpx$Fe_p3_pfu + Cpx$Mg_pfu);
- X_Cpx_Mg <- Cpx$Mg_pfu / (Cpx$Al_pfu + Cpx$Fe_p2_pfu + Cpx$Fe_p3_pfu + Cpx$Mg_pfu);
- Kd <- (Grt$Fe_pfu / Grt$Mg_pfu) / (Cpx$Fe_p2_pfu / Cpx$Mg_pfu);
- X_Prp <- Grt$Mg_pfu / (Grt$Fe_pfu + Grt$Mn_pfu + Grt$Mg_pfu + Grt$Ca_pfu);
- X_Alm <- Grt$Fe_pfu / (Grt$Fe_pfu + Grt$Mn_pfu + Grt$Mg_pfu + Grt$Ca_pfu);
- X_Sps <- Grt$Mn_pfu / (Grt$Fe_pfu + Grt$Mn_pfu + Grt$Mg_pfu + Grt$Ca_pfu);
- X_Grs <- Grt$Ca_pfu / (Grt$Fe_pfu + Grt$Mn_pfu + Grt$Mg_pfu + Grt$Ca_pfu);
- A <- 0.5*X_Grs*(X_Prp - X_Alm - X_Sps);
- B <- 0.5*X_Grs*(X_Prp - X_Alm + X_Sps);
- C <- 0.5*(X_Grs + X_Sps)*(X_Prp - X_Alm);
- Tcalc <- ( 2784 + 14.52 * P +
- (2610 + 1.44*P)*(2*X_Grs*X_Prp - A) +
- (1183 + 6.98*P)*(X_Grs^2 - A) -
- 105*(2*X_Grs*X_Alm + B) +
- (814.6 + 3.61*P)*(X_Grs^2 + B) -
- (254.6 + 8.42*P)*(2*X_Prp*X_Alm - X_Alm^2 + C) -
- 83.6*(X_Prp^2 - 2*X_Prp*X_Alm + C) +
- 1388*X_Sps -
- 462*(X_Cpx_Mg - X_Cpx_Fe) ) /
- ( log(Kd) + 1.431 + 0.695*(2*X_Grs*X_Prp + X_Grs^2 - 2*A) +
- 0.203 * (X_Grs^2 - 2*X_Grs*X_Alm) +
- 0.922 * X_Sps ) -
- 273;
- return (data.frame(Name=paste0(Grt$Name,'-',Cpx$Name),P = P, T_calc_GrtCpx_Nakamura = Tcalc));
- }
- sensors.t.grt_cpx_nakamura.args <- function() {
- ars <- list();
- ars$minerals = c('Grt','Cpx');
- ars$ranges = c('P');
- return(ars);
- }
- sensors.t.grt_cpx_nakamura.test <- function () {
- Grt <- data.frame(Name='Grt',SiO2_wtp=40.23,TiO2_wtp=0.55, Al2O3_wtp=21.87, FeO_wtp=19.03, MnO_wtp=0.40, MgO_wtp=10.07, CaO_wtp=7.27);
- Cpx <- data.frame(Name='Cpx',SiO2_wtp=52.86,TiO2_wtp=1.11, Al2O3_wtp=10.24, FeO_wtp=6.31, MgO_wtp=9.92, CaO_wtp=14.49, Na2O=4.65);
- result <- sensors.t.grt_cpx_nakamura (Grt, Cpx, 25);
- expect_equal(result$T_calc_GrtCpx_Nakamura, 1036, tolerance = 1);
- }