Различия
Здесь показаны различия между двумя версиями данной страницы.
Следующая версия | Предыдущая версия | ||
sensors:t:cpx_opx_kretz_1982_a [2017/01/17 13:44] 127.0.0.1 внешнее изменение |
sensors:t:cpx_opx_kretz_1982_a [2018/11/12 15:07] (текущий) |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
====== Cpx-Opx: Kretz, 1982 <A> ====== | ====== Cpx-Opx: Kretz, 1982 <A> ====== | ||
- | + | ||
+ | Cpx slope of the solvus surface based on Natural data for associated Ca pyroxene (Cpx) and orthopyroxene (Opx) or pigeonite are combined with experimental data for Fe-free pyroxenes. | ||
=== Details === | === Details === | ||
Строка 7: | Строка 9: | ||
</WRAP> | </WRAP> | ||
- | ^ Article | | | + | ^ Article | <ref:kretz1982> | |
- | ^ Collibration | | | + | ^ Callibration | Experimetal and data from Skaergaard and Bushveld | |
- | ^ Precision | | | + | ^ Precision | ±60°C | |
- | ^ Ranges | | | + | ^ Ranges | 750-1400 °C | |
- | ^ Renew sensors | | | + | ^ See also | [[sensors:t:cpx_opx_kretz_1982_b|Kretz, 1982 <B>]] | |
<use:sensors.t.cpx_opx_kretz_1982_a> | <use:sensors.t.cpx_opx_kretz_1982_a> | ||
Строка 31: | Строка 33: | ||
source("utilities_tpf.r"); | source("utilities_tpf.r"); | ||
- | sensors.t.cpx_opx_kretz_1982_a <- function(Cpx, Opx, ...){ | + | sensors.t.cpx_opx_kretz_1982_a <- function(Cpx, usePFU = FALSE, ...){ |
- | Cpx <- tpf.recalc_minaral("CPX",Cpx); | + | |
+ | row_names = Cpx$Name; | ||
+ | |||
+ | if(!usePFU) Cpx <- tpf.recalc_minaral("CPX",Cpx); | ||
X <- Cpx$Fe_p2_pfu / (Cpx$Fe_p2_pfu + Cpx$Mg_pfu); | X <- Cpx$Fe_p2_pfu / (Cpx$Fe_p2_pfu + Cpx$Mg_pfu); | ||
Y <- Cpx$Ca_pfu / (Cpx$Ca_pfu + Cpx$Mg_pfu + Cpx$Fe_p2_pfu); | Y <- Cpx$Ca_pfu / (Cpx$Ca_pfu + Cpx$Mg_pfu + Cpx$Fe_p2_pfu); | ||
TH <- (1000 / (0.468 + 0.246 * X - 0.123 * log(1 - 2 * Y))) - 273.15; | TH <- (1000 / (0.468 + 0.246 * X - 0.123 * log(1 - 2 * Y))) - 273.15; | ||
- | if (TH>1080.0) { | ||
- | T <- TH; | ||
- | warning(" ONLY CPX COMPOSITION IS INVOLVED IN CALCULATIONS, ACCURACY: +/-60 C"); | ||
- | } | ||
TL <- (1000 / (0.054 + 0.608 * X - 0.304 * log(1 - 2 * Y))) - 273.15; | TL <- (1000 / (0.054 + 0.608 * X - 0.304 * log(1 - 2 * Y))) - 273.15; | ||
- | if (TL<1080.0) { | + | |
- | T <- TL; | + | Ts <- data.frame(TH = TH, TL = TL, T = rep(NA, nrow(Cpx))); |
- | warning(" ONLY CPX COMPOSITION IS INVOLVED IN CALCULATIONS, ACCURACY: +/-60 C"); | + | Ts$T <- ifelse(Ts$TH>1080.0,Ts$TH,ifelse(Ts$TL<1080.0,TL,NA)); |
- | } | + | |
- | if (TH<1080.0) { | + | return(data.frame(Name=row_names,T_calc=Ts$T)); |
- | if (TL>1080.0) { | + | |
- | warning(" IS NOT TO BE USED FOR THESE COMPOSITIONS"); | + | |
- | } | + | |
- | } | + | |
- | return(data.frame(Name=paste0(Cpx$Name),T_calc=T)); | + | |
} | } | ||
sensors.t.cpx_opx_kretz_1982_a.args <- function(){ | sensors.t.cpx_opx_kretz_1982_a.args <- function(){ | ||
ars <- list(); | ars <- list(); | ||
- | ars$minerals <- c("Cpx", "Opx"); | + | ars$minerals <- c("Cpx"); |
ars$ranges <- c(); | ars$ranges <- c(); | ||
return(ars); | return(ars); | ||
Строка 66: | Строка 62: | ||
</Code> | </Code> | ||
- | {{tag> tpf Cpx }} | + | {{tag> tpf Cpx AP_igroup fixed}} |