This sensor from TPF collection
| Article | |
|---|---|
| Collibration | |
| Precision | |
| Ranges | |
| Renew sensors |
source("utilities_tpf.r");
sensors.p.grt_opx_harley_1984_b <- function(Grt, Opx, Temp, ...){
T <- Temp;
Opx <- tpf.recalc_minaral("OPX",Opx);
Grt <- tpf.recalc_minaral("GRT",Grt);
X <- Grt$Ca_pfu / (Grt$Fe_p2_pfu + Grt$Fe_p3_pfu + Grt$Mg_pfu + Grt$Ca_pfu);
Y <- Grt$Mg_pfu / (Grt$Fe_p2_pfu + Grt$Fe_p3_pfu + Grt$Mg_pfu + Grt$Ca_pfu);
Z <- (Grt$Fe_p2_pfu + Grt$Fe_p3_pfu) / (Grt$Fe_p2_pfu + Grt$Fe_p3_pfu + Grt$Mg_pfu + Grt$Ca_pfu);
A <- Opx$Mg_pfu / (Opx$Mg_pfu + Opx$Fe_p2_pfu + Opx$Fe_p3_pfu);
B <- (Opx$Fe_p2_pfu + Opx$Fe_p3_pfu) / (Opx$Mg_pfu + Opx$Fe_p2_pfu + Opx$Fe_p3_pfu);
C <- (Opx$Al_c6_pfu + Opx$Al_c4_pfu) / 2;
TT <- T + 273;
K <- log(Y^3 / C / A^3 / (1 - C));
J <- 1.9872 * K * TT + TT * (0.15 + 0.001507 * (TT - 970)) - 2467;
F <- (3525 * 1000 / TT - 1667) * (1 - 2 * A * (1 - C)) * (1 - A) * (1 - C);
W <- (4.75 * TT - 6680) * 2 * (1 - A) * (1 - C) - 920 * (1 - 2 * C) * (1 - C) * (1 - A);
L <- (5436 - 2.45 * TT) * ((1 - A) * (A * (1 - C) + C)) + 5700 * (X * (X + Z));
P <- 1 / 206.74 * (J - (2458 * 1000 / TT - 1261) * 2 * B^2 - F - W + L);
warning(" WITH AN AUTHOR CORRECTION (PERS. COMMUNIC.)");
return(data.frame(Name=paste0(Grt$Name,"-", Opx$Name),Temp=Temp,P_calc=P));
}
sensors.p.grt_opx_harley_1984_b.args <- function(){
ars <- list();
ars$minerals <- c("Grt", "Opx");
ars$ranges <- c("Temp");
return(ars);
}
#sensors.p.grt_opx_harley_1984_b.test <- function(){
#
#}