Править страницу Ссылки сюда Это старая версия документа! Px: MacGregor, 2015 Cations on the basis of 6 oxygens. 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 Calculate Использовать Проверить заголовок краткое описание статья ссылка карточка подробное описание код тест Source recalc.px_macgreg <- function (wtp_data, ...) { # part 1 pOx_ox_names <- c('SiO2_wtp', 'TiO2_wtp', 'Al2O3_wtp', 'Cr2O3_wtp', 'Fe2O3_wtp', 'MnO_wtp', 'MgO_wtp', 'CaO_wtp', 'Na2O_wtp', 'K2O_wtp'); pOx_Wi <- selectNames(wtp_data,pOx_ox_names); pOx_Wi$Fe2O3_wtp <- wtp_data$FeO_wtp*1.1113; pOx_Mi <- c(60.084, 79.879, 101.960, 151.990, 159.692, 70.937, 40.304, 56.079, 61.977, 94.196); pOx_Ci <- c(1, 1, 2, 2, 2, 1, 1, 1, 2, 2); pOx_Oi <- c(2, 2, 3, 3, 3, 1, 1, 1, 1, 1); pOx_Ei <- rowApply('/', pOx_Wi, pOx_Mi); pOx_MOi <- rowApply('*', pOx_Ei, pOx_Oi); pOx_S <- rowSums(pOx_MOi); pOx_FC <- 6/pOx_S; pOx_AEi <- rowApply('*', rowApply('*', pOx_Ei, pOx_Ci), pOx_FC); pOx_AS <- rowSums(pOx_AEi); # part 2 pCat_ox_names <- c('SiO2_wtp','TiO2_wtp','Al2O3_wtp', 'Cr2O3_wtp','Fe2O3_wtp','FeO_wtp', 'FeO_wtp','MnO_wtp','MgO_wtp', 'CaO_wtp','Na2O_wtp','K2O_wtp'); pCat_group <- selectNames(wtp_data,pCat_ox_names); colnames(pCat_group)[7] <- "FeO_tot_wtp"; pCat_group$FeO_wtp <- 0.0; pCat_group$Fe2O3_wtp <- 0.0; pCat_Mi <- c(60.084, 79.879, 101.960, 151.990, 159.692, 71.846, 71.846, 70.937, 40.304, 56.079, 61.977, 94.196); pCat_Ci <- c(1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 2, 2); pCat_Oi <- c(2, 2, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1); pCat_Ei <- rowApply('/', pCat_group, pCat_Mi); pCat_totEi <- (pCat_Ei$SiO2_wtp + pCat_Ei$TiO2_wtp + 2*pCat_Ei$Al2O3_wtp + 2*pCat_Ei$Cr2O3_wtp + pCat_Ei$FeO_tot_wtp + pCat_Ei$MnO_wtp + pCat_Ei$MgO_wtp + pCat_Ei$CaO_wtp + 2*pCat_Ei$Na2O_wtp + 2*pCat_Ei$K2O_wtp)*6/4; pCat_MOi <- rowApply('*', pCat_Ei, pCat_Oi); pCat_totMOi <- pCat_MOi$SiO2_wtp + pCat_MOi$TiO2_wtp + pCat_MOi$Al2O3_wtp + pCat_MOi$Cr2O3_wtp + pCat_MOi$FeO_tot_wtp + pCat_MOi$MnO_wtp + pCat_MOi$MgO_wtp + pCat_MOi$CaO_wtp + pCat_MOi$Na2O_wtp + pCat_MOi$K2O_wtp; pCat_MOi2<- pCat_MOi; pCat_MOi2$FeO_wtp <- 0.0; pCat_MOi2$Fe2O3_wtp <- 0.0; pCat_MOi2$FeO_tot_wtp <- 0.0; pCat_Ei2 <- pCat_Ei; pCat_Ei2$FeO_wtp <- 0.0; pCat_Ei2$Fe2O3_wtp <- 0.0; pCat_Ei2$FeO_tot_wtp <- 0.0; pCat_FC1 <- 6/pCat_totMOi; pCat_FC2 <- 6/pCat_totEi; pCat_U <- rowApply('*', rowApply('*', pCat_Ei2, pCat_Ci), pCat_FC2); pCat_Utot <- 4 - (pCat_U$SiO2_wtp + pCat_U$TiO2_wtp + pCat_U$Al2O3_wtp + pCat_U$Cr2O3_wtp + pCat_U$MnO_wtp + pCat_U$MgO_wtp + pCat_U$CaO_wtp + pCat_U$Na2O_wtp + pCat_U$K2O_wtp); pCat_MOi2tot2 <- (pCat_totEi - pCat_totMOi)+ pCat_MOi$FeO_tot_wtp; pCat_MOi2$Fe2O3_wtp <- ((pCat_Utot/pCat_FC2)-pCat_MOi2tot2)/(2/3-1); pCat_MOi2$FeO_wtp <- pCat_MOi2tot2-pCat_MOi2$Fe2O3_wtp; pCat_MOi2$FeO_tot_wtp <- 0.0; pCat_MOi2$pCat_MOi2tot2 <- pCat_MOi2tot2; pCat_Ei2$FeO_wtp <- pCat_MOi2$FeO_wtp; pCat_Ei2$Fe2O3_wtp <- pCat_MOi2$Fe2O3_wtp/3; pCat_Ei2$FeO_tot_wtp <- 0.0; pCat_AEi <- rowApply('*', rowApply('*', pCat_Ei, pCat_Ci), pCat_FC1); pCat_pfu <- rowApply('*', rowApply('*', pCat_Ei2, pCat_Ci), pCat_FC2); pResEnd <- data.frame(Name=wtp_data$Name); f_1 <- ifelse(pCat_pfu$FeO_wtp<0,1.0,0.0); f_2 <- ifelse(pCat_pfu$FeO_wtp>=0 && pCat_pfu$Fe2O3_wtp<0,1.0,0.0); f_3 <- ifelse(pCat_pfu$FeO_wtp>=0 && pCat_pfu$Fe2O3_wtp>=0,1.0,0.0); pResEnd$Si_pfu <- f_1*pOx_AEi$SiO2_wtp+f_2*pCat_AEi$SiO2_wtp+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$Al_pfu <- f_1*pOx_AEi$Al2O3_wtp+f_2*pCat_AEi$Al2O3_wtp+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$Fe_p3_pfu <- f_1*0+f_2*pCat_AEi$Fe2O3_wtp+f_3*pCat_pfu$Fe2O3_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; 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; return (pOx_AEi); } recalc/px_macgreg.1461846088.txt.gz Последние изменения: 2018/11/12 15:08(внешнее изменение) Войти