Opx-Mag-Qtz: Fonarev, 1987

Details

This sensor from TPF collection

Article
Collibration
Presition
Ranges
Renew sensors

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

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

Source

source("utilities_tpf.r");

sensors.f.opx_mag_qtz_fonarev_1987 <- function(Opx, Mag, Qtz, Temp, P, ...){
T <- Temp;
    Opx <- tpf.recalc_minaral("OPX",Opx);

    X <- (Opx$Fe_p2_pfu + Opx$Fe_p3_pfu) / (Opx$Fe_p2_pfu + Opx$Fe_p3_pfu + Opx$Mg_pfu + Opx$Ca_pfu + Opx$Mn_pfu + Opx$Al_c6_pfu);
    Y <-  - 32.544 + 0.038462 * (T + 273.15);
    if (P>Y) {
    TT <- 1000 / (T + 273.15);
    FO2 <- 9.1502 - 6 * log(X) + 5.7041 * ((1 - X)^2 - 4.5514) * TT -          6.6233 * ((1 - X)^2 + 0.0223) * TT^2 + 151.2 * P * TT / 1000;
    LGFO2 <- FO2;
    }
    if (P<Y) {
    TT <- 1000 / (T + 273.15);
    LgFO2 <- 8.5044 - 6 * log(X) + 5.7041 * ((1 - X)^2 - 4.4556) * TT -          6.6233 * ((1 - X)^2 + 0.0223) * TT^2 + 168.0 * P * TT / 1000;
    }
    return(data.frame(Name=paste0(Opx$Name),Temp=Temp,P=P,LGFO2_calc=LGFO2));
}

sensors.f.opx_mag_qtz_fonarev_1987.args <- function(){
    ars <- list();
    ars$minerals <- c("Opx", "Mag", "Qtz");
    ars$ranges <- c("Temp", "P");
    return(ars);
}

#sensors.f.opx_mag_qtz_fonarev_1987.test <- function(){
#
#}
,