Cpx-Opx: Fonarev, Graphchikov, 1991 <D>

Details

This sensor from TPF collection

Article Fonarev, V.I., Graphchikov, A.A. Two-pyroxene thermometry: a critical evaluation, 1991 [ref]
Callibration
Precision 50-100 °C
Ranges 890-1250 °C
Renew sensors

Использовать Проверить

  • заголовок
  • краткое описание
  • статья
  • ссылка
  • карточка
  • подробное описание
  • код
  • тест

Source

source("utilities_tpf.r");

sensors.t.cpx_opx_fonarev_graphchikov_1991_d <- function(Cpx, Opx, P, usePFU=FALSE, ...){
    
    row_names <- Cpx$Name;
    
    if(!usePFU){
        Cpx <- tpf.recalc_minaral("CPX",Cpx);
    }

    X <- (Cpx$Fe_p2_pfu + Cpx$Fe_p3_pfu) / (Cpx$Mg_pfu + Cpx$Fe_p2_pfu + Cpx$Fe_p3_pfu + Cpx$Ca_pfu);
    Y <- Cpx$Ca_pfu / (Cpx$Mg_pfu + Cpx$Fe_p2_pfu + Cpx$Fe_p3_pfu + Cpx$Ca_pfu);
    Z <- Cpx$Al2O3_wtp + Cpx$TiO2_wtp + Cpx$MnO_wtp + Cpx$Na2O_wtp;
    A <- 0.0435 - 2.0422 * X + 14.2661 * X^2 - 38.4323 * X^3 + 34.4206 * X^4 - Y *      (1 - (0.5 - X) * 0.012 * P);
    B <- 0.6859 + 1.2269 * X - 37.7330 * X^2 + 119.7173 * X^3 - 109.3990 * X^4;
    G <-  - 0.2832 + 0.9887 * X + 27.5921 * X^2 - 97.3991 * X^3 + 88.8668 * X^4;
    T <- (2 * G * 1000 / ( - B + sqrt(B^2 - 4 * G * A))) - 273.15;

    T <- ifelse(Z<5.0, T, NA);
    T <- ifelse(X>0.1, T, NA);
    T <- ifelse(T > 890 && T < 1250, T, NA);

    return(data.frame(Name=row_names,P=P,T_calc=T));
}

sensors.t.cpx_opx_fonarev_graphchikov_1991_d.args <- function(){
    ars <- list();
    ars$minerals <- c("Cpx");
    ars$ranges <- c("P");
    return(ars);
}

#sensors.t.cpx_opx_fonarev_graphchikov_1991_d.test <- function(){
#
#}