====== Grt-Cpx-Pl-Qtz: Avchenko, Kuznetsova, 1988 ======
=== Details ===
This sensor from [[:about_tpf|TPF]] collection
^ Article | |
^ Collibration | |
^ Precision | |
^ Ranges | |
^ Renew sensors | |
* заголовок
* краткое описание
* статья
* ссылка
* карточка
* подробное описание
* код
* тест
=== Source ===
source("utilities_tpf.r");
sensors.p.grt_cpx_pl_qtz_avchenko_kuznetsova_1988 <- function(Grt, Cpx, Pl, Temp, ...){
Name <- paste0(Pl$Name,"-", Cpx$Name,"-", Grt$Name);
T <- Temp;
Pl <- tpf.recalc_minaral("PL",Pl);
Grt <- tpf.recalc_minaral("GRT",Grt);
Cpx <- tpf.recalc_minaral("CPX",Cpx);
L <- Pl$Ca_pfu / (Pl$Ca_pfu + Pl$Na_pfu + Pl$K_pfu);
X <- (Grt$Fe_p2_pfu + Grt$Fe_p3_pfu) / (Grt$Fe_p2_pfu + Grt$Fe_p3_pfu + Grt$Mg_pfu + Grt$Ca_pfu + Grt$Mn_pfu);
Y <- Grt$Ca_pfu / (Grt$Fe_p2_pfu + Grt$Fe_p3_pfu + Grt$Mg_pfu + Grt$Ca_pfu + Grt$Mn_pfu);
Z <- Grt$Mg_pfu / (Grt$Fe_p2_pfu + Grt$Fe_p3_pfu + Grt$Mg_pfu + Grt$Ca_pfu + Grt$Mn_pfu);
AC <- Cpx$Ca_pfu * Cpx$Mg_pfu;
TT <- T + 273;
G <- ((2404 + 0.258 * TT) * Y * (2 - Y) + (5704 - 1.242 * TT) * Z * (1 - Y) - (234 + 0.748 * TT)) / 1.9872 / TT;
AG <- 3 * log(Y) + 3 * G;
PI <- ((3300 - 1.5 * TT) * Y^2 + (5704 - 1.242 * TT) * Y * X) / 1.9872 / TT;
AP <- 3 * log(Z) + 3 * PI;
W <- L * (1 + L)^2 / 4;
AA <- log(W) + (1 - L)^2 * (2050 + 9392 * L) / 1.9872 / TT;
if (T>650.0) {
if (T<950.0) {
if (Z>0.1) {
A <- 1268;
B <- 10.86;
P <- (A + B * TT + 1.9872 * TT * (2 / 3 * AG + 1 / 3 * AP - AA - AC)) / (0.484 + 3.044 * (0.2 - Y)^2) / 1000;
}
}
}
if (Y<0.08) {
warning(" IS NOT TO BE USED FOR CA/(MG+MN+FE+CA) IN GRT <0.08");
}
if (Z<0.1) {
warning(" IS NOT TO BE USED FOR MG/(MG+MN+FE+CA) IN GRT <0.1");
}
if (T<650.0) {
warning(" IS NOT TO BE USED FOR T<650 C");
}
if (T>950.0) {
warning(" IS NOT TO BE USED FOR T>950 C");
}
return(data.frame(Name=Name,Temp=Temp,P_calc=P));
}
sensors.p.grt_cpx_pl_qtz_avchenko_kuznetsova_1988.args <- function(){
ars <- list();
ars$minerals <- c("Grt", "Cpx", "Pl");
ars$ranges <- c("Temp");
return(ars);
}
#sensors.p.grt_cpx_pl_qtz_avchenko_kuznetsova_1988.test <- function(){
#
#}
{{tag> tpf Pl Cpx Grt }}