This sensor from TPF collection
| Article | |
|---|---|
| Collibration | |
| Precision | |
| Ranges | |
| Renew sensors |
<use:sensors.t.cpx_opx_perchuk_1977*> <test:sensors.t.cpx_opx_perchuk_1977*>
source("utilities_tpf.r");
sensors.t.cpx_opx_perchuk_1977* <- function(Cpx, Opx, ...){
Opx <- tpf.recalc_minaral("OPX",Opx);
Cpx <- tpf.recalc_minaral("CPX",Cpx);
X <- Opx$Mg_pfu / (Opx$Fe_p2_pfu + Opx$Fe_p3_pfu + Opx$Mg_pfu + Opx$Mn_pfu);
Y <- Cpx$Mg_pfu / (Cpx$Fe_p2_pfu + Cpx$Fe_p3_pfu + Cpx$Mg_pfu + Cpx$Mn_pfu);
N <- Opx$FeO_wtp;
M <- Cpx$FeO_wtp;
Z <- 0.5 * (X + Y);
if (Z>0.68) {
T <- (1000 / (0.4305 - 0.1651 * log(M / N) + 1.1072 * Z - 1.0525 * Z^2 - 0.0304 * log(M / N) * Z^2)) - 273;
}
if (Z<0.68) {
warning(" IS NOT TO BE USED FOR 0.5*[MG/(MG+FF+MN)OPX+MG/(MG+FE+MN)CPX] <0.68");
}
return(data.frame(Name=paste0(Cpx$Name,"-", Opx$Name),T_calc=T));
}
sensors.t.cpx_opx_perchuk_1977*.args <- function(){
ars <- list();
ars$minerals <- c("Cpx", "Opx");
ars$ranges <- c();
return(ars);
}
#sensors.t.cpx_opx_perchuk_1977*.test <- function(){
#
#}