As of July 9 2026
This repository has been archived and is no longer maintained. The code is provided for historical reference and may contain unpatched or unknown vulnerabilities. It should not be used in production systems.
The purpose of hectordata is to provide a reproducible method for
generating emissions csv tables and ini files for
Hector, the simple climate model.
Users access pre-built inputs from hectordata or can use functions to
generate the inputs files on their own.
Use install_github from the remotes pacakge to install hectordata.
library(remotes)
install_github("JGCRI/hectordata")This example assumes that hectordata,
hector, and ggplot2 have already
been installed.
library(hector)
library(hectordata)
library(ggplot2)Take a look at the pre-built ini files included in hectordata using
the system.file call.
hectordata_dir <- system.file("input", package = "hectordata")
list.files(hectordata_dir, pattern = ".ini")## [1] "hector_ssp119.ini" "hector_ssp126.ini" "hector_ssp245.ini"
## [4] "hector_ssp370.ini" "hector_ssp434.ini" "hector_ssp460.ini"
## [7] "hector_ssp534-over.ini" "hector_ssp585.ini"
Let’s run hector for the ssp119, ssp460, and ssp585 scenarios. Start by defining the path to the ini files.
ini_ssp119 <- system.file("input/hector_ssp119.ini", package = "hectordata")
ini_ssp460 <- system.file("input/hector_ssp460.ini", package = "hectordata")
ini_ssp585 <- system.file("input/hector_ssp585.ini", package = "hectordata")Set up the hector cores.
core_ssp119 <- newcore(ini_ssp119, name = "ssp119")
core_ssp460 <- newcore(ini_ssp460, name = "ssp460")
core_ssp585 <- newcore(ini_ssp585, name = "ssp585")Run hector.
run(core_ssp119)## Hector core: ssp119
## Start date: 1745
## End date: 2300
## Current date: 2300
## Input file: /Users/dorh012/Library/R/3.6/library/hectordata/input/hector_ssp119.ini
run(core_ssp460)## Hector core: ssp460
## Start date: 1745
## End date: 2300
## Current date: 2300
## Input file: /Users/dorh012/Library/R/3.6/library/hectordata/input/hector_ssp460.ini
run(core_ssp585)## Hector core: ssp585
## Start date: 1745
## End date: 2300
## Current date: 2300
## Input file: /Users/dorh012/Library/R/3.6/library/hectordata/input/hector_ssp585.ini
Get the results for global mean temp for each run.
dates <- 1850:2100
var <- GLOBAL_TEMP()
dat1 <- fetchvars(core_ssp119, dates, var)
dat2 <- fetchvars(core_ssp460, dates, var)
dat3 <- fetchvars(core_ssp585, dates, var)
data <- rbind(dat1, dat2, dat3)Plot the results.
ggplot(data) +
geom_line(aes(year, value, color = scenario)) +
labs(title = "Hector Global Mean Temp.",
y = expression(~degree~"C"),
x = "Year")Shutdown Hector cores
shutdown(core_ssp119)
shutdown(core_ssp460)
shutdown(core_ssp585)