====== Cpx-Opx: Perchuk, 1977* ======
=== Details ===
This sensor from [[:about_tpf|TPF]] collection
^ Article | |
^ Collibration | |
^ Precision | |
^ Ranges | |
^ Renew sensors | |
* заголовок
* краткое описание
* статья
* ссылка
* карточка
* подробное описание
* код
* тест
=== Source ===
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(){
#
#}
{{tag> tpf Cpx Opx }}