====== Grt-Opx-Pl-Qtz: Fonarev, 1994 ====== === Details === This sensor from [[:about_tpf|TPF]] collection ^ Article | | ^ Collibration | | ^ Precision | | ^ Ranges | | ^ Renew sensors | | * заголовок * краткое описание * статья * ссылка * карточка * подробное описание * код * тест === Source === source("utilities_tpf.r"); sensors.p.grt_opx_pl_qtz_fonarev_1994 <- function(Grt, Opx, Pl, Qtz, Temp, ...){ T <- Temp; Grt <- tpf.recalc_minaral("GRT2",Grt); Opx <- tpf.recalc_minaral("OPX",Opx); Pl <- tpf.recalc_minaral("PL",Pl); Grt <- tpf.recalc_minaral("GRT",Grt); B <- Opx$Mg_pfu / (Opx$Mg_pfu + Opx$Fe_p2_pfu + Opx$Fe_p3_pfu + Opx$Mn_pfu + Opx$Ca_pfu + (Opx$Al_c4_pfu + Opx$Al_c6_pfu - (Opx$Na_pfu - Opx$Cr_pfu) - 2 * Opx$Ti_pfu) / 2); A1 <- (Opx$Fe_p2_pfu + Opx$Fe_p3_pfu); A2 <- (Opx$Mg_pfu + Opx$Fe_p2_pfu + Opx$Fe_p3_pfu + Opx$Mn_pfu + Opx$Ca_pfu + (Opx$Al_c4_pfu + Opx$Al_c6_pfu - (Opx$Na_pfu - Opx$Cr_pfu) - 2 * Opx$Ti_pfu) / 2); C1 <- (Opx$Al_c4_pfu + Opx$Al_c6_pfu - (Opx$Na_pfu - Opx$Cr_pfu) - 2 * Opx$Ti_pfu) / 2; C2 <- (Opx$Mg_pfu + Opx$Fe_p2_pfu + Opx$Fe_p3_pfu + Opx$Mn_pfu + Opx$Ca_pfu + (Opx$Al_c4_pfu + Opx$Al_c6_pfu - (Opx$Na_pfu - Opx$Cr_pfu) - 2 * Opx$Ti_pfu) / 2); L <- Pl$Ca_pfu / (Pl$Ca_pfu + Pl$Na_pfu + Pl$K_pfu); M <- Pl$Na_pfu / (Pl$Ca_pfu + Pl$Na_pfu + Pl$K_pfu); X <- Grt$Fe_p2_pfu / (Grt$Fe_p2_pfu + Grt$Mg_pfu + Grt$Ca_pfu + Grt$Mn_pfu); Y <- Grt$Ca_pfu / (Grt$Fe_p2_pfu + Grt$Mg_pfu + Grt$Ca_pfu + Grt$Mn_pfu); Z <- Grt$Mg_pfu / (Grt$Fe_p2_pfu + Grt$Mg_pfu + Grt$Ca_pfu + Grt$Mn_pfu); W <- Grt$TiO2_wtp + Grt$Fe2O3_wtp + Grt$MnO_wtp + Grt$Na2O_wtp + Grt$Grt$K_pfu2O_wtp + Grt$Cr2O3_wtp; A <- A1 / A2; C <- C1 / C2; if (W<5.0) { TT <- T + 273; AA <- 3 * log(X) + 3 * ((Z^2 * (0.2 + X * 4.6) + Y^2 * (3.5 - 0.0014 * TT - 7.1 * X) + Y * Z * (Y * 4.3 - Z * 1.8 - 0.7)) / 0.001987 / TT); AG <- 3 * log(Y) + 3 * ((Z^2 * (4 - 0.0015 * TT - Y * 6.1) + X^2 * ( - 0.1 - 0.0014 * TT + Y * 7.1) + X * Z * (3.4 - 0.0029 * TT - 2.8 * X + 1.8 * Z)) / 0.001987 / TT); AF <- log(A) + ((B^2 * (5 * 1000 / TT - 4.4) - 6.5 * C^2 + B * C * (5 * 1000 / TT - 9.6)) / 0.001987 / TT); AP <- log(L) + (M^2 * ((1980 - 1.526 * TT) + 2 * L * (4880 - 2.348 * TT)) / 1.9872 / TT); K <- 3 * AP + 6 * AF - AG - 2 * AA; P <- 17.4 + 0.0038 * TT - 11.48 * 1000 / TT - 1.09 * TT * K / 1000; } if (W>5.0) { warning(" CANNOT BE USED FOR (TIO2+FE2O3+MNO+NA2O+K2O+CR2O3) IN GRT >5 WT."); } return(data.frame(Name=paste0(Pl$Name,"-", Grt$Name,"-", Opx$Name),Temp=Temp,P_calc=P)); } sensors.p.grt_opx_pl_qtz_fonarev_1994.args <- function(){ ars <- list(); ars$minerals <- c("Grt", "Opx", "Pl", "Qtz"); ars$ranges <- c("Temp"); return(ars); } #sensors.p.grt_opx_pl_qtz_fonarev_1994.test <- function(){ # #} {{tag> tpf Pl Grt Opx }}