Opx-Fe-Qtz: Fonarev, 1987

Details

This sensor from TPF collection

Article
Collibration
Presition
Ranges
Renew sensors

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

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

Source

  1. source("utilities_tpf.r");
  2.  
  3. sensors.f.opx_fe_qtz_fonarev_1987 <- function(Opx, Fe, Qtz, Temp, P, ...){
  4. T <- Temp;
  5. Opx <- tpf.recalc_minaral("OPX",Opx);
  6.  
  7. 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);
  8. Y <- - 32.544 + 0.038462 * (T + 273.15);
  9. if (P>Y) {
  10. TT <- 1000 / (T + 273.15);
  11. FO2 <- 8.9367 + 2 * log(X) - 1.9014 * ((1 - X)^2 + 15.9675) * TT + 2.2078 * ((1 - X)^2 + 0.0223) * TT^2 - 15.1 * P * TT / 1000;
  12. LGFO2 <- FO2;
  13. }
  14. if (P<Y) {
  15. TT <- 1000 / (T + 273.15);
  16. LgFO2 <- 9.1519 + 2 * log(X) - 1.9014 * ((1 - X)^2 + 16.0632) * TT + 2.2078 * ((1 - X)^2 + 0.0223) * TT^2 - 20.7 * P * TT / 1000;
  17. }
  18. return(data.frame(Name=paste0(Opx$Name),Temp=Temp,P=P,LGFO2_calc=LGFO2));
  19. }
  20.  
  21. sensors.f.opx_fe_qtz_fonarev_1987.args <- function(){
  22. ars <- list();
  23. ars$minerals <- c("Opx", "Fe", "Qtz");
  24. ars$ranges <- c("Temp", "P");
  25. return(ars);
  26. }
  27.  
  28. #sensors.f.opx_fe_qtz_fonarev_1987.test <- function(){
  29. #
  30. #}
,