Различия
Здесь показаны различия между двумя версиями данной страницы.
| Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
|
interpmin:px_macgreg [2016/04/28 13:48] admin |
interpmin:px_macgreg [2018/11/12 15:07] (текущий) |
||
|---|---|---|---|
| Строка 36: | Строка 36: | ||
| z <- d$Na_pfu+d$K_pfu; | z <- d$Na_pfu+d$K_pfu; | ||
| - | d <- d$Al_c6_pfu-d$Al_c4_pfu; | + | dd <- d$Al_c6_pfu-d$Al_c4_pfu; |
| s1 <- d$Si_pfu-2; | s1 <- d$Si_pfu-2; | ||
| s2 <- ifelse(s1<0,0,s1); | s2 <- ifelse(s1<0,0,s1); | ||
| - | M3 <- d$Cr_pfu+2*(s2+d$Ti_pfu)+d$Fe_p3_pfu+d; | + | M3 <- d$Cr_pfu+2*(s2+d$Ti_pfu)+d$Fe_p3_pfu+dd; |
| - | e <- M3-(d$Na_pfu+d$K_pfu); | + | ee <- M3-(d$Na_pfu+d$K_pfu); |
| - | e2 <- ifelse(e2<0,0,e2); | + | e2 <- ifelse(ee<0,0,ee); |
| A1i <- d$Al_c4_pfu-d$Ti_pfu; | A1i <- d$Al_c4_pfu-d$Ti_pfu; | ||
| Na2i <- d$Na_pfu-d$Ti_pfu; | Na2i <- d$Na_pfu-d$Ti_pfu; | ||
| Строка 54: | Строка 54: | ||
| g <- d$Ca_pfu - e2/2 - A1n; | g <- d$Ca_pfu - e2/2 - A1n; | ||
| g2 <- ifelse(g<0,0,g); | g2 <- ifelse(g<0,0,g); | ||
| - | Di <- ifelse(g2>d$Mg_pfu;d$Mg_pfu;g2); | + | Di <- ifelse(g2>d$Mg_pfu,d$Mg_pfu,g2); |
| Hd <- 0.0; | Hd <- 0.0; | ||
| h <- (d$Fe_p2_pfu + d$Mn_pfu + d$Mg_pfu - g2)/2; | h <- (d$Fe_p2_pfu + d$Mn_pfu + d$Mg_pfu - g2)/2; | ||
| - | Jd <- ifelse(A3n>zp;zp;A3n); | + | Jd <- ifelse(A3n>zp,zp,A3n); |
| zn <- zp-A3n; | zn <- zp-A3n; | ||
| zm <- ifelse(zn<0,0,zn); | zm <- ifelse(zn<0,0,zn); | ||
| Строка 80: | Строка 80: | ||
| return(res); | 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); | ||
| + | |||
| } | } | ||
| </Code> | </Code> | ||