====== Cpx-Opx: Fonarev, 1994 ====== === Details === This sensor from [[:about_tpf|TPF]] collection ^ Article | | ^ Collibration | | ^ Precision | | ^ Ranges | | ^ Renew sensors | | * заголовок * краткое описание * статья * ссылка * карточка * подробное описание * код * тест === Source === source("utilities_tpf.r"); sensors.t.cpx_opx_fonarev_1994_b <- function(Cpx, Opx, P, ...){ Opx <- tpf.recalc_minaral("OPX",Opx); Cpx <- tpf.recalc_minaral("CPX",Cpx); X <- (Cpx$Fe_p2_pfu + Cpx$Fe_p3_pfu) / (Cpx$Mg_pfu + Cpx$Fe_p2_pfu + Cpx$Fe_p3_pfu + Cpx$Ca_pfu + Cpx$Mn_pfu + Cpx$Al_c6_pfu + Cpx$Ti_pfu + Cpx$K_pfu + Cpx$Na_pfu); Y <- (Opx$Fe_p2_pfu + Opx$Fe_p3_pfu) / (Opx$Mg_pfu + Opx$Fe_p2_pfu + Opx$Fe_p3_pfu + Opx$Ca_pfu + Opx$Mn_pfu + Opx$Al_c6_pfu + Opx$Ti_pfu + Opx$K_pfu + Opx$Na_pfu); Z <- Cpx$Al2O3_wtp + Cpx$TiO2_wtp + Cpx$MnO_wtp + Cpx$Na2O_wtp; X2 <- (Cpx$Fe_p2_pfu + Cpx$Fe_p3_pfu) / (Cpx$Mg_pfu + Cpx$Fe_p2_pfu + Cpx$Fe_p3_pfu + Cpx$Ca_pfu); Y2 <- (Opx$Fe_p2_pfu + Opx$Fe_p3_pfu) / (Opx$Mg_pfu + Opx$Fe_p2_pfu + Opx$Fe_p3_pfu + Opx$Ca_pfu); OZ <- Opx$Al2O3_wtp + Opx$TiO2_wtp + Opx$MnO_wtp + Opx$Na2O_wtp; if (Z0.10) { A <- 5.6066 * X + 13.6767 * X^2 - 23.6366 * X^3 - 60.7866 * X^4 - Y * (1 - (0.35 - X) * 0.01 * P); B <- - 9.9203 * X - 25.1949 * X^2 + 30.5070 * X^3 + 148.9344 * X^4; G <- 6.9830 * X + 10.0505 * X^2 - 9.1097 * X^3 - 85.1719 * X^4; N <- (2 * G * 1000 / ( - B + sqrt(B^2 - 4 * A * G))) - 273.15; if (N<850.001) { if (N>600.001) { T <- N; if (X<0.2001) { warning(" ACCURACY +-30,C"); } if (X>0.2001) { if (X<0.3001) { warning(" ACCURACY +-20,C"); } } if (X>0.3001) { warning(" ACCURACY +-10,C"); } } if (N<600) { warning(" IS NOT TO BE USED FOR T<600 C"); } } if (N>850.001) { if (N<900.001) { A <- - 15.9135 * X + 112.8452 * X^2 - 232.7006 * X^3 + 156.3120 * X^4 - Y * (1 - (0.5 - X) * 0.01 * P); B <- 44.2986 * X - 313.6564 * X^2 + 660.4657 * X^3 - 446.5655 * X^4; G <- - 27.1202 * X + 212.7500 * X^2 - 462.5763 * X^3 + 316.4015 * X^4; M <- (2 * G * 1000 / ( - B + sqrt(B^2 - 4 * A * G))) - 273.15; T <- (M + N) / 2; } if (N>900.001) { warning(" IS NOT TO BE USED FOR T>900 C"); } } } } if (Z>5.0) { warning(" CANNOT BE USED FOR (AL2O3+TIO2+MNO+NA2O) IN CPX >5 WT."); } if (X<0.1) { warning(" CANNOT BE USED FOR FE/(FE+MG+CA) IN CPX <0.1"); } } if (P>20.001) { warning(" IS NOT TO BE USED FOR P>20 KBAR"); } return(data.frame(Name=paste0(Cpx$Name,"-", Opx$Name),P=P,T_calc=T)); } sensors.t.cpx_opx_fonarev_1994_b.args <- function(){ ars <- list(); ars$minerals <- c("Cpx", "Opx"); ars$ranges <- c("P"); return(ars); } #sensors.t.cpx_opx_fonarev_1994_b.test <- function(){ # #} {{tag> tpf Cpx Opx }}