Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
recalc:px_macgreg [2016/04/28 12:21]
admin [Source]
recalc:px_macgreg [2018/11/12 15:08] (текущий)
Строка 7: Строка 7:
 ^ Reference | <​ref:​macgregor2015>​ | ^ Reference | <​ref:​macgregor2015>​ |
 ^ Input | SiO2_wtp, TiO2_wtp, Al2O3_wtp, Cr2O3_wtp, FeO_wtp, MnO_wtp, MgO_wtp, CaO_wtp, Na2O_wtp, K2O_wtp | ^ Input | SiO2_wtp, TiO2_wtp, Al2O3_wtp, Cr2O3_wtp, FeO_wtp, MnO_wtp, MgO_wtp, CaO_wtp, Na2O_wtp, K2O_wtp |
-^ Output |  | +^ Output | Si_pfu, Ti_pfu, Al_pfu, Cr_pfu, Fe_p3_pfu, Fe_p2_pfu, Mn_pfu, Mg_pfu, Ca_pfu, Na_pfu, K_pfu |
-^[[:​ppy:​mod_recalc#​px_macgreg |Calculate]] ^ ^+
  
 <​use:​recalc.px_macgreg>​ <​use:​recalc.px_macgreg>​
Строка 14: Строка 13:
  
 <WRAP center round todo 60%> <WRAP center round todo 60%>
-  * заголовок +  * <del>заголовок</​del>​ 
-  * краткое описание +  * <del>краткое описание</​del>​ 
-  * статья +  * <del>статья</​del>​ 
-  * ссылка+  * <del>ссылка</​del>​
   * карточка   * карточка
   * подробное описание   * подробное описание
-  * код +  * <del>код</​del>​ 
-  * тест+  * <del>тест</​del>​
 </​WRAP>​ </​WRAP>​
  
Строка 46: Строка 45:
   pOx_FC <- 6/pOx_S;   pOx_FC <- 6/pOx_S;
   ​   ​
-  pOx_AEi <- rowApply('​*', ​rowApply('​*',​ pOx_Ei, pOx_Ci)pOx_FC);+  pOx_AEi <- rowApply('​*',​ pOx_Ei, pOx_Ci) ​pOx_FC;
   pOx_AS <- rowSums(pOx_AEi);​   pOx_AS <- rowSums(pOx_AEi);​
   ​   ​
Строка 89: Строка 88:
   pCat_FC2 <-  6/​pCat_totEi;  ​   pCat_FC2 <-  6/​pCat_totEi;  ​
   ​   ​
-  pCat_U <- rowApply('​*', ​rowApply('​*',​ pCat_Ei2, pCat_Ci)pCat_FC2);  ​+  pCat_U <- rowApply('​*',​ pCat_Ei2, pCat_Ci) ​pCat_FC2;  ​
   ​   ​
   pCat_Utot <- 4 - (pCat_U$SiO2_wtp + pCat_U$TiO2_wtp + pCat_U$Al2O3_wtp +   pCat_Utot <- 4 - (pCat_U$SiO2_wtp + pCat_U$TiO2_wtp + pCat_U$Al2O3_wtp +
Строка 105: Строка 104:
   pCat_Ei2$Fe2O3_wtp <- pCat_MOi2$Fe2O3_wtp/​3;​   pCat_Ei2$Fe2O3_wtp <- pCat_MOi2$Fe2O3_wtp/​3;​
   pCat_Ei2$FeO_tot_wtp <- 0.0;   pCat_Ei2$FeO_tot_wtp <- 0.0;
-  ​ + 
-  pCat_AEi <- rowApply('​*', ​rowApply('​*',​ pCat_Ei, pCat_Ci)pCat_FC1)+  pCat_AEi <- rowApply('​*',​ pCat_Ei, pCat_Ci) ​pCat_FC1; 
-  pCat_pfu <- rowApply('​*', ​rowApply('​*',​ pCat_Ei2, pCat_Ci)pCat_FC2)+  pCat_pfu <- rowApply('​*',​ pCat_Ei2, pCat_Ci) ​pCat_FC2; ​
  
   pResEnd <- data.frame(Name=wtp_data$Name);​   pResEnd <- data.frame(Name=wtp_data$Name);​
  
    
-  f_1 <- ifelse(pCat_pfu$FeO_wtp<​0,​1.0,0.0); +  ​pCat_pfu$f_1 <- ifelse(pCat_pfu$FeO_wtp<​0,​1,​0);​ 
-  f_2 <- ifelse(pCat_pfu$FeO_wtp>​=0 ​&& pCat_pfu$Fe2O3_wtp<​0,​1.0,0.0); +  ​pCat_pfu$f_2 <- ifelse(pCat_pfu$FeO_wtp>​=0 & pCat_pfu$Fe2O3_wtp<​0,​1,​0);​ 
-  f_3 <- ifelse(pCat_pfu$FeO_wtp>​=0 ​&& pCat_pfu$Fe2O3_wtp>​=0,​1.0,0.0);+  ​pCat_pfu$f_3 <- ifelse(pCat_pfu$FeO_wtp>​=0 & pCat_pfu$Fe2O3_wtp>​=0,​1,​0);​
  
-  pResEnd$Si_pfu <- f_1*pOx_AEi$SiO2_wtp+f_2*pCat_AEi$SiO2_wtp+f_3*pCat_pfu$SiO2_wtp;​ +  pResEnd$Si_pfu <- pCat_pfu$f_1*pOx_AEi$SiO2_wtp+pCat_pfu$f_2*pCat_AEi$SiO2_wtp+pCat_pfu$f_3*pCat_pfu$SiO2_wtp;​ 
-  pResEnd$Ti_pfu <- f_1*pOx_AEi$TiO2_wtp+f_2*pCat_AEi$TiO2_wtp+f_3*pCat_pfu$TiO2_wtp;​ +  pResEnd$Ti_pfu <- pCat_pfu$f_1*pOx_AEi$TiO2_wtp+pCat_pfu$f_2*pCat_AEi$TiO2_wtp+pCat_pfu$f_3*pCat_pfu$TiO2_wtp;​ 
-  pResEnd$Al_pfu <- f_1*pOx_AEi$Al2O3_wtp+f_2*pCat_AEi$Al2O3_wtp+f_3*pCat_pfu$Al2O3_wtp;​ +  pResEnd$Al_pfu <- pCat_pfu$f_1*pOx_AEi$Al2O3_wtp+pCat_pfu$f_2*pCat_AEi$Al2O3_wtp+pCat_pfu$f_3*pCat_pfu$Al2O3_wtp;​ 
-  pResEnd$Cr_pfu <- f_1*pOx_AEi$Cr2O3_wtp+f_2*pCat_AEi$Cr2O3_wtp+f_3*pCat_pfu$Cr2O3_wtp;​ +  pResEnd$Cr_pfu <- pCat_pfu$f_1*pOx_AEi$Cr2O3_wtp+pCat_pfu$f_2*pCat_AEi$Cr2O3_wtp+pCat_pfu$f_3*pCat_pfu$Cr2O3_wtp;​ 
-  pResEnd$Fe_p3_pfu <- f_1*0+f_2*pCat_AEi$Fe2O3_wtp+f_3*pCat_pfu$Fe2O3_wtp;​+  pResEnd$Fe_p3_pfu <- pCat_pfu$f_1*0+pCat_pfu$f_2*pCat_AEi$Fe2O3_wtp+pCat_pfu$f_3*pCat_pfu$Fe2O3_wtp
 +  pResEnd$Fe_p2_pfu <- pCat_pfu$f_1*pOx_AEi$Fe2O3_wtp+pCat_pfu$f_2*pCat_AEi$FeO_tot_wtp+pCat_pfu$f_3*pCat_pfu$FeO_wtp;​ 
 +  pResEnd$Fe_pfu <- pResEnd$Fe_p2_pfu + pResEnd$Fe_p3_pfu;​ 
 +  pResEnd$Mn_pfu <- pCat_pfu$f_1*pOx_AEi$MnO_wtp+pCat_pfu$f_2*pCat_AEi$MnO_wtp+pCat_pfu$f_3*pCat_pfu$MnO_wtp;​ 
 +  pResEnd$Mg_pfu <- pCat_pfu$f_1*pOx_AEi$MgO_wtp+pCat_pfu$f_2*pCat_AEi$MgO_wtp+pCat_pfu$f_3*pCat_pfu$MgO_wtp;​  
 +  pResEnd$Ca_pfu <- pCat_pfu$f_1*pOx_AEi$CaO_wtp+pCat_pfu$f_2*pCat_AEi$CaO_wtp+pCat_pfu$f_3*pCat_pfu$CaO_wtp;​ 
 +  pResEnd$Na_pfu <- pCat_pfu$f_1*pOx_AEi$Na2O_wtp+pCat_pfu$f_2*pCat_AEi$Na2O_wtp+pCat_pfu$f_3*pCat_pfu$Na2O_wtp;​ 
 +  pResEnd$K_pfu <- pCat_pfu$f_1*pOx_AEi$K2O_wtp+pCat_pfu$f_2*pCat_AEi$K2O_wtp+pCat_pfu$f_3*pCat_pfu$K2O_wtp;
  
-  ​pResEnd$Mn_pfu <- f_1*pOx_AEi$MnO_wtp+f_2*pCat_AEi$MnO_wtp+f_3*pCat_pfu$MnO_wtp;​ +   
-  pResEnd$Mg_pfu <- f_1*pOx_AEi$MgO_wtp+f_2*pCat_AEi$MgO_wtp+f_3*pCat_pfu$MgO_wtp;  +  ​return (pResEnd)
-  ​pResEnd$Ca_pfu <- f_1*pOx_AEi$CaO_wtp+f_2*pCat_AEi$CaO_wtp+f_3*pCat_pfu$CaO_wtp;​ +}
-  pResEnd$Na_pfu <- f_1*pOx_AEi$Na2O_wtp+f_2*pCat_AEi$Na2O_wtp+f_3*pCat_pfu$Na2O_wtp;​ +
-  pResEnd$K_pfu <- f_1*pOx_AEi$K2O_wtp+f_2*pCat_AEi$K2O_wtp+f_3*pCat_pfu$K2O_wtp;​+
  
 +recalc.px_macgreg.test <- function ()
 +{
 +  src <- data.frame(Name='​test',​ SiO2_wtp=54.86,​ TiO2_wtp=0.13,​ Al2O3_wtp=2.76,​ Cr2O3_wtp=0.72,​
 +                    FeO_wtp=6.81,​ MnO_wtp=0.00,​ MgO_wtp=34.72,​ CaO_wtp=0.75,​ Na2O_wtp=0.00,​ K2O_wtp=0.00);​
 +
 +  result <- recalc.px_macgreg(src);​
   ​   ​
-  ​return ​(pOx_AEi);+  ​expect_equal(object = result$Si_pfu,​ 1.875, tolerance = 0.05); 
 +  expect_equal(object = result$Fe_p2_pfu,​ 0.082, tolerance = 0.05); 
 +  expect_equal(object = result$Mg_pfu,​ 1.769, tolerance = 0.05); 
 + 
 +  src <- data.frame(Name='​test',​ SiO2_wtp=53.51,​ TiO2_wtp=0.10,​ Al2O3_wtp=9.10,​ Cr2O3_wtp=0.11,​ 
 +                    FeO_wtp=7.24,​ MnO_wtp=0.00,​ MgO_wtp=29.78,​ CaO_wtp=2.08,​ Na2O_wtp=0.00,​ K2O_wtp=0.00);​ 
 + 
 +  result <- recalc.px_macgreg(src);​ 
 +   
 +  expect_equal(object = result$Si_pfu,​ 1.824, tolerance = 0.05); 
 +  expect_equal(object = result$Fe_p2_pfu,​ 0.206, tolerance = 0.05); 
 +  expect_equal(object = result$Mg_pfu,​ 1.513, tolerance = 0.05); 
 } }
 </​Code>​ </​Code>​
  • recalc/px_macgreg.1461846088.txt.gz
  • Последние изменения: 2018/11/12 15:08
  • (внешнее изменение)