====== Grt-Opx: Dahl, 1980 ======
=== Details ===
This sensor from [[:about_tpf|TPF]] collection
^ Article | |
^ Collibration | |
^ Precision | |
^ Ranges | |
^ Renew sensors | |
* заголовок
* краткое описание
* статья
* ссылка
* карточка
* подробное описание
* код
* тест
=== Source ===
source("utilities_tpf.r");
sensors.t.grt_opx_dahl_1980 <- function(Grt, Opx, P, ...){
Opx <- tpf.recalc_minaral("OPX",Opx);
Grt <- tpf.recalc_minaral("GRT",Grt);
X <- Grt$Fe_p2_pfu / (Grt$Mg_pfu + Grt$Ca_pfu + Grt$Mn_pfu + Grt$Fe_p2_pfu);
Y <- Grt$Mg_pfu / (Grt$Mg_pfu + Grt$Ca_pfu + Grt$Mn_pfu + Grt$Fe_p2_pfu);
Z <- Grt$Ca_pfu / (Grt$Mg_pfu + Grt$Ca_pfu + Grt$Mn_pfu + Grt$Fe_p2_pfu);
K <- Grt$Mn_pfu / (Grt$Mg_pfu + Grt$Ca_pfu + Grt$Mn_pfu + Grt$Fe_p2_pfu);
L <- Grt$Fe_p2_pfu / Grt$Mg_pfu;
M <- Opx$Fe_p2_pfu / Opx$Mg_pfu;
if (P>4.9) {
if (P<8.9) {
T <- ((1391 + 1509 * (X - Y) + 2810 * Z + 2855 * K) / (1.987 * log(L / M))) - 273;
}
}
if (P<4.9) {
warning(" IS NOT TO BE USED FOR P<4.9 KBAR");
}
if (P>8.9) {
warning(" IS NOT TO BE USED FOR P>8.9 KBAR");
}
return(data.frame(Name=paste0(Grt$Name,"-", Opx$Name),P=P,T_calc=T));
}
sensors.t.grt_opx_dahl_1980.args <- function(){
ars <- list();
ars$minerals <- c("Grt", "Opx");
ars$ranges <- c("P");
return(ars);
}
#sensors.t.grt_opx_dahl_1980.test <- function(){
#
#}
{{tag> tpf Grt Opx }}