Править страницу Ссылки сюда Px: MacGregor, 2015 Pyroxene components. FeO - total. Details Reference Ian D. MacGregor Empirical geothermometers and geothermobarometers for spinel peridotite phase assemblages, 2015 [ref] Input SiO2_wtp, TiO2_wtp, Al2O3_wtp, Cr2O3_wtp, FeO_wtp, MnO_wtp, MgO_wtp, CaO_wtp, Na2O_wtp, K2O_wtp Output Использовать Проверить заголовок краткое описание статья ссылка карточка подробное описание код тест Source source('recalc_px_macgreg.r'); interpmin.px_macgreg <- function (wtp_data, ...) { d <- recalc.px_macgreg(wtp_data); d$Si_pfu <- ifelse(d$Si_pfu<2,d$Si_pfu,2); d$Al_c4_pfu <- ifelse(2-d$Si_pfu<d$Al_pfu,2-d$Si_pfu,d$Al_pfu); d$Al_c6_pfu <- ifelse(d$Al_c4_pfu<d$Al_pfu,d$Al_pfu-d$Al_c4_pfu,0); z <- d$Na_pfu+d$K_pfu; dd <- d$Al_c6_pfu-d$Al_c4_pfu; s1 <- d$Si_pfu-2; s2 <- ifelse(s1<0,0,s1); M3 <- d$Cr_pfu+2*(s2+d$Ti_pfu)+d$Fe_p3_pfu+dd; ee <- M3-(d$Na_pfu+d$K_pfu); e2 <- ifelse(ee<0,0,ee); A1i <- d$Al_c4_pfu-d$Ti_pfu; Na2i <- d$Na_pfu-d$Ti_pfu; Na2 <- ifelse(Na2i<0,0,Na2i); zp1 <- d$Na_pfu+d$K_pfu-d$Ti_pfu; zp <- ifelse(zp1<0,0,zp1); Ti_Napx <- d$Ti_pfu; A1n <- ifelse(A1i<0,0,A1i); A2n <- d$Al_c6_pfu - A1n; A3n <- ifelse(A2n<0,0,A2n); F2n <- ifelse(A2n<0,d$Fe_p3_pfu+A2n,d$Fe_p3_pfu); g <- d$Ca_pfu - e2/2 - A1n; g2 <- ifelse(g<0,0,g); Di <- ifelse(g2>d$Mg_pfu,d$Mg_pfu,g2); Hd <- 0.0; h <- (d$Fe_p2_pfu + d$Mn_pfu + d$Mg_pfu - g2)/2; Jd <- ifelse(A3n>zp,zp,A3n); zn <- zp-A3n; zm <- ifelse(zn<0,0,zn); Ko <- ifelse(d$Cr_pfu > zm, zm, d$Cr_pfu); zl <- zm - d$Cr_pfu; zk <- ifelse(zl<0,0,zl); Ac <- ifelse(d$Fe_p3_pfu>zk,zk,d$Fe_p3_pfu); Kcpx <- d$K_pfu; res <- data.frame(Name=wtp_data$Name); res$X_Jd <- ifelse(Ko-Kcpx<0,Jd-Kcpx,Jd); res$X_Ac <- Ac; res$X_DiHd <- g2; res$X_CaTs <- A1n; res$X_Ko <- ifelse(Jd-Kcpx<0,Ko-Kcpx,Ko); res$X_K_Ko <- ifelse(Jd-Kcpx<0,Kcpx,0); res$X_K_Jd <- ifelse(Ko-Kcpx<0,Kcpx,0); res$X_Ti_Napx <- Ti_Napx; res$X_CaEs <- e2; res$X_Opx <- ifelse(h>0,h,0); return(res); } interpmin.px_macgreg.test <- function () { src <- data.frame(Name='test', SiO2_wtp=49.210, TiO2_wtp=0.19, Al2O3_wtp=11.180, Cr2O3_wtp=0.23, FeO_wtp=6.28, MnO_wtp=0.00, MgO_wtp=19.160, CaO_wtp=16.16, Na2O_wtp=0.00, K2O_wtp=0.00); result <- interpmin.px_macgreg(src); expect_equal(object = result$X_Jd, 0.0, tolerance = 0.05); expect_equal(object = result$X_DiHd, 0.342, tolerance = 0.05); expect_equal(object = result$X_Opx, 0.392, tolerance = 0.05); } interpmin/px_macgreg.txt Последние изменения: 2018/11/12 15:07(внешнее изменение) Войти