Independent estimation of pressure and temperature for any single pyroxene phase in equilibrium with a second pyroxene and with either spinel or garnet; otherwise, minimum temperatures and maximum pressures are obtained.
This sensor from TPF collection
| Article | Mercier, Jean-Claude C Single-pyroxene thermobarometry, 1980 [ref] |
|---|---|
| Callibration | 150 xenolith |
| Precision | ±20 °C |
| Ranges | 10-80 kbar, 850-1600 °C |
| Renew sensors |
source("utilities_tpf.r");
sensors.t.cpx_spl_mercier_1980_a <- function(Cpx, usePFU = FALSE, ...){
row_name = Cpx$Name;
if(!usePFU) {
Cpx <- tpf.recalc_minaral("CPX",Cpx);
}
A <- (Cpx$Al_c4_pfu + Cpx$Al_c6_pfu - Cpx$Na_pfu) / 2;
W <- Cpx$Ca_pfu / (Cpx$Ca_pfu + Cpx$Mg_pfu + Cpx$Fe_p2_pfu + Cpx$Fe_p3_pfu + Cpx$Mn_pfu);
FCR <- Cpx$Cr_pfu / (Cpx$Al_c4_pfu + Cpx$Al_c6_pfu + Cpx$Cr_pfu - Cpx$Na_pfu);
XKW <- (1 - 2 * W) / (0.667 + 0.667 * W);
XKA <- A / (1 - A) / (1 - 1.27 * FCR)^2;
D <- log(XKA) * log(XKW) - 11.2724 * log(XKW) + 2.2595 * log(XKA) + 32.371;
T <- (61152 - 7537.5 * log(XKW)) / D - 273.15;
return(data.frame(Name=row_name,T_calc=T));
}
sensors.t.cpx_spl_mercier_1980_a.args <- function(){
ars <- list();
ars$minerals <- c("Cpx");
ars$ranges <- c();
return(ars);
}
#sensors.t.cpx_spl_mercier_1980_a.test <- function(){
# sensors.t.cpx_spl_mercier_1980_a(Cpx=data.frame("SiO2_wtp"=c(72)), Spl=data.frame());
#}