====== Grt-Opx: Slavinskiy, 1980 ====== === Details === This sensor from [[:about_tpf|TPF]] collection ^ Article | | ^ Collibration | | ^ Precision | | ^ Ranges | | ^ Renew sensors | | * заголовок * краткое описание * статья * ссылка * карточка * подробное описание * код * тест === Source === source("utilities_tpf.r"); sensors.p.grt_opx_slavinskiy_1980_b <- function(Grt, Opx, ...){ Opx <- tpf.recalc_minaral("OPX",Opx); Grt <- tpf.recalc_minaral("GRT",Grt); A <- (Opx$Al_c4_pfu + Opx$Al_c6_pfu + Opx$Cr_pfu) / (Opx$Al_c4_pfu + Opx$Al_c6_pfu + Opx$Cr_pfu + Opx$Ca_pfu + Opx$Fe_p2_pfu + Opx$Fe_p3_pfu + Opx$Mn_pfu + Opx$Mg_pfu); C <- Opx$Ca_pfu / (Opx$Al_c4_pfu + Opx$Al_c6_pfu + Opx$Cr_pfu + Opx$Ca_pfu + Opx$Fe_p2_pfu + Opx$Fe_p3_pfu + Opx$Mn_pfu + Opx$Mg_pfu); F <- (Opx$Fe_p2_pfu + Opx$Fe_p3_pfu + Opx$Mn_pfu + Opx$Mg_pfu) / (Opx$Al_c4_pfu + Opx$Al_c6_pfu + Opx$Cr_pfu + Opx$Ca_pfu + Opx$Fe_p2_pfu + Opx$Fe_p3_pfu + Opx$Mn_pfu + Opx$Mg_pfu); MO <- Opx$Mg_pfu / (Opx$Mg_pfu + Opx$Mn_pfu + Opx$Fe_p2_pfu + Opx$Fe_p3_pfu); X <- (Grt$Al_c4_pfu + Grt$Al_c6_pfu + Grt$Cr_pfu) / (Grt$Al_c4_pfu + Grt$Al_c6_pfu + Grt$Cr_pfu + Grt$Ca_pfu + Grt$Fe_p2_pfu + Grt$Fe_p3_pfu + Grt$Mn_pfu + Grt$Mg_pfu); Y <- Grt$Ca_pfu / (Grt$Al_c4_pfu + Grt$Al_c6_pfu + Grt$Cr_pfu + Grt$Ca_pfu + Grt$Fe_p2_pfu + Grt$Fe_p3_pfu + Grt$Mn_pfu + Grt$Mg_pfu); Z <- (Grt$Fe_p2_pfu + Grt$Fe_p3_pfu + Grt$Mn_pfu + Grt$Mg_pfu) / (Grt$Al_c4_pfu + Grt$Al_c6_pfu + Grt$Cr_pfu + Grt$Ca_pfu + Grt$Fe_p2_pfu + Grt$Fe_p3_pfu + Grt$Mn_pfu + Grt$Mg_pfu); MG <- Grt$Mg_pfu / (Grt$Mg_pfu + Grt$Mn_pfu + Grt$Fe_p2_pfu + Grt$Fe_p3_pfu); XX <- 0.5 * MG + 0.5 * MO; K <- F * Y / Z / C; U <- - (A / X - F / Z) / (C / Y - F / Z); J <- A / X * (C / Y)^U * (F / Z)^( - 1 - U); J <- log(J); P <- - 31.8 * log(K) - 52.8 * log(A) + 36.6 * XX - 36.9; PP <- - 36.3 * log(J / (1 + U)) - 74.7 * log(A) + 34.3 * XX - 75; P <- (P + PP) / 2; warning(" ACCURACY +- 2.6 KBAR."); return(data.frame(Name=paste0(Grt$Name,"-", Opx$Name),P_calc=P)); } sensors.p.grt_opx_slavinskiy_1980_b.args <- function(){ ars <- list(); ars$minerals <- c("Grt", "Opx"); ars$ranges <- c(); return(ars); } #sensors.p.grt_opx_slavinskiy_1980_b.test <- function(){ # #} {{tag> tpf Grt Opx }}