Различия
Здесь показаны различия между двумя версиями данной страницы.
spdgrams:lan_c1_chondrite_sun_wm_taylor [2016/12/15 19:47] f0ma |
spdgrams:lan_c1_chondrite_sun_wm_taylor [2018/11/12 15:07] |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | ====== C1 Chondrite, Sun McDonough, 1989 + Mantle Taylor, McLennan, 1985 ====== | ||
- | C1 Chondrite + Mantle (3 ex) | ||
- | |||
- | === Details === | ||
- | |||
- | | Reference | <ref:sun1989> |</del> | ||
- | | Data | bulk | | ||
- | | Input | ppm | | ||
- | |||
- | <use:spdgrams.lan_c1_chondrite_sun_wm_taylor> | ||
- | <test:spdgrams.lan_c1_chondrite_sun_wm_taylor> | ||
- | |||
- | <WRAP center round todo 60%> | ||
- | * заголовок | ||
- | * краткое описание | ||
- | * статья | ||
- | * ссылка | ||
- | * карточка | ||
- | * подробное описание | ||
- | * код | ||
- | * тест | ||
- | </WRAP> | ||
- | |||
- | === Source === | ||
- | |||
- | <Code linenums lang-r> | ||
- | require('ggplot2'); | ||
- | |||
- | cmp <- read.csv("constants_oceanic_basalts_compositions.csv", sep=";", stringsAsFactors=F); | ||
- | crust <- read.csv("constants_continental_curst_taylor1985.csv", sep=",", stringsAsFactors=F); | ||
- | |||
- | spdgrams.lan_c1_chondrite_sun_wm_taylor <- function(ppm_data, el_order = NULL) | ||
- | { | ||
- | |||
- | ns <- el_order; | ||
- | |||
- | if (is.null(el_order)) { | ||
- | ns <- c('La','Ce','Pr','Nd','Sm','Eu','Gd','Tb','Dy','Ho','Er','Tm','Yb','Lu'); | ||
- | } | ||
- | |||
- | pmsc <- c(); | ||
- | |||
- | for (n in ns) | ||
- | pmsc <- c(pmsc, subset(cmp, element == n)$c1_chondrite); | ||
- | |||
- | lcrust <- c(); | ||
- | mcrust <- c(); | ||
- | ucrust <- c(); | ||
- | |||
- | for (n in ns) { | ||
- | lcrust <- c(lcrust, subset(crust, Element == n)$lower_crust); | ||
- | mcrust <- c(mcrust, subset(crust, Element == n)$middle_crust); | ||
- | ucrust <- c(ucrust, subset(crust, Element == n)$upper_crust); | ||
- | } | ||
- | |||
- | lcurst <- c("Lower Crust",lcrust); | ||
- | mcurst <- c("Middle Crust",mcrust); | ||
- | ucurst <- c("Upper Crust",ucrust); | ||
- | |||
- | cr <- data.frame(rbind(lcurst,mcurst,ucurst)); | ||
- | |||
- | print(cr); | ||
- | print(crust$Element); | ||
- | print(c("Name",ns)); | ||
- | |||
- | names(cr) <- c("Name",ns); | ||
- | |||
- | ds <- selectNames(ppm_data,c(paste0(ns,'_ppm'))); | ||
- | |||
- | print(cr); | ||
- | #ds_curst <- selectNames(tcurst, ns); | ||
- | |||
- | ds <-rbind(ds,cr); | ||
- | |||
- | names(ds) <- ns; | ||
- | |||
- | ret <- c(); | ||
- | |||
- | values <- cbind(ppm_data$Name, rowApply(`/`,ds,pmsc)); | ||
- | names(values)[1] <- 'Name'; | ||
- | |||
- | ret$values <- values; | ||
- | ret$grades <- ns; | ||
- | ret$labels <- c('REE', 'Sample/C1 Chondrite'); | ||
- | |||
- | return(ret); | ||
- | } | ||
- | |||
- | spdgrams.lan_c1_chondrite_sun_wm_taylor.test <- function() | ||
- | { | ||
- | spdgrams.lan_c1_chondrite_sun_wm_taylor(data.frame(Name=c('Test'),Eu_ppm=c(34.5))); | ||
- | } | ||
- | </Code> | ||
- | |||
- | {{tag>spdgrams chondrite}} |