This sensor from TPF collection
| Article | |
|---|---|
| Collibration | |
| Precision | |
| Ranges | |
| Renew sensors |
source("utilities_tpf.r");
sensors.p.grt_opx_mercier_1980_b <- function(Grt, Opx, ...){
Opx <- tpf.recalc_minaral("OPX",Opx);
A <- (Opx$Al_c4_pfu + Opx$Al_c6_pfu - Opx$Na_pfu) / 2;
W <- Opx$Ca_pfu / (Opx$Ca_pfu + Opx$Mg_pfu + Opx$Fe_p2_pfu + Opx$Fe_p3_pfu + Opx$Mn_pfu);
FCR <- Opx$Cr_pfu / (Opx$Al_c4_pfu + Opx$Al_c6_pfu + Opx$Cr_pfu - Opx$Na_pfu);
MG <- Opx$Mg_pfu;
XKW <- 11.976 * W / (1 - 2 * W);
if (XKW<0.3785) {
XKA <- A * (1 - A) * (6.004 - 3.025 * MG - 0.702 * log(XKW)) / (1 - 0.63 * FCR)^2;
D <- log(XKA) * log(XKW) - 6.2079 * log(XKW) + 2.2595 * log(XKA) + 31.037;
P <- (176.43 * log(XKW) - 706.14 * log(XKA) - 264.9) / D;
}
if (XKW>0.3785) {
XKW <- 14.93 * W / (1 - 2 * W);
XKA <- A * (1 - A) * (6.004 - 3.025 * MG - 0.702 * log(XKW)) / (1 - 0.63 * FCR)^2;
D <- log(XKA) * log(XKW) - 6.2079 * log(XKW) + 2.2595 * log(XKA) + 31.037;
P <- (176.43 * log(XKW) - 706.14 * log(XKA) - 264.9) / D;
}
return(data.frame(Name=paste0(Opx$Name),P_calc=P));
}
sensors.p.grt_opx_mercier_1980_b.args <- function(){
ars <- list();
ars$minerals <- c("Grt", "Opx");
ars$ranges <- c();
return(ars);
}
#sensors.p.grt_opx_mercier_1980_b.test <- function(){
#
#}