====== Cal-Dol: Talantsev, 1981 ====== === Details === This sensor from [[:about_tpf|TPF]] collection ^ Article | | ^ Collibration | | ^ Precision | | ^ Ranges | | ^ Renew sensors | | * заголовок * краткое описание * статья * ссылка * карточка * подробное описание * код * тест === Source === source("utilities_tpf.r"); sensors.p.cal_dol_talantsev_1981_b <- function(Cal, Dol, ...){ Name <- paste0(Cal$Name,"-", Dol$Name); Dol <- tpf.recalc_minaral("DOL",Dol); Cal <- tpf.recalc_minaral("CAL",Cal); X <- (Cal$Fe_p2_pfu + Cal$Fe_p3_pfu) / (Cal$Ca_pfu + Cal$Mg_pfu + Cal$Fe_p2_pfu + Cal$Fe_p3_pfu + Cal$Mn_pfu); Y <- Cal$Mg_pfu / (Cal$Ca_pfu + Cal$Mg_pfu + Cal$Fe_p2_pfu + Cal$Fe_p3_pfu + Cal$Mn_pfu); Z <- Cal$Mn_pfu / (Cal$Ca_pfu + Cal$Mg_pfu + Cal$Fe_p2_pfu + Cal$Fe_p3_pfu + Cal$Mn_pfu); M <- Cal$Fe_p2_pfu + Cal$Fe_p3_pfu; N <- Dol$Fe_p2_pfu + Dol$Fe_p3_pfu; F <- Y * (1 + 11.5 * X + 5 * X^2 + 550 * X^3 + 8 * Z - 50 * Z^2); L <- log(F / (1 - F)); LL <- log(M / N); TT <- exp((0.7 * L - 0.1 * LL + 9.216) / 2.887 * 2.3026); T <- TT - 273; P <- exp((LL - 0.6 * log(TT) + 2.55) / 0.7 * 2.3026); return(data.frame(Name=Name,P_calc=P)); } sensors.p.cal_dol_talantsev_1981_b.args <- function(){ ars <- list(); ars$minerals <- c("Cal", "Dol"); ars$ranges <- c(); return(ars); } #sensors.p.cal_dol_talantsev_1981_b.test <- function(){ # #} {{tag> tpf Dol Cal }}