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 |
| See also | opx_spl_mercier_1980_a cpx_spl_mercier_1980_a |
source("utilities_tpf.r");
sensors.p.cpx_spl_mercier_1980 <- 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;
P <- (419.76 * log(XKW) - 706.14 * log(XKA) + 616.61) / D;
return(data.frame(Name=row_name, P_calc=P));
}
sensors.p.cpx_spl_mercier_1980.args <- function(){
ars <- list();
ars$minerals <- c("Cpx");
ars$ranges <- c();
return(ars);
}
#sensors.p.cpx_spl_mercier_1980.test <- function(){
#
#}