Last updated: 2021-08-24

Checks: 7 0

Knit directory: emlr_obs_v_XXX/

This reproducible R Markdown analysis was created with workflowr (version 1.6.2). The Checks tab describes the reproducibility checks that were applied when the results were created. The Past versions tab lists the development history.


Great! Since the R Markdown file has been committed to the Git repository, you know the exact version of the code that produced these results.

Great job! The global environment was empty. Objects defined in the global environment can affect the analysis in your R Markdown file in unknown ways. For reproduciblity it’s best to always run the code in an empty environment.

The command set.seed(20200707) was run prior to running the code in the R Markdown file. Setting a seed ensures that any results that rely on randomness, e.g. subsampling or permutations, are reproducible.

Great job! Recording the operating system, R version, and package versions is critical for reproducibility.

Nice! There were no cached chunks for this analysis, so you can be confident that you successfully produced the results during this run.

Great job! Using relative paths to the files within your workflowr project makes it easier to run your code on other machines.

Great! You are using Git for version control. Tracking code development and connecting the code version to the results is critical for reproducibility.

The results in this page were generated with repository version a2eefa6. See the Past versions tab to see a history of the changes made to the R Markdown and HTML files.

Note that you need to be careful to ensure that all relevant files for the analysis have been committed to Git prior to generating the results (you can use wflow_publish or wflow_git_commit). workflowr only checks the R Markdown file, but you know if there are other scripts or data files that it depends on. Below is the status of the Git repository when the results were generated:


Ignored files:
    Ignored:    .Rhistory
    Ignored:    .Rproj.user/

Unstaged changes:
    Modified:   analysis/config_parameterization_local.Rmd
    Modified:   code/Workflowr_project_managment.R
    Modified:   data/auxillary/params_local.rds

Note that any generated files, e.g. HTML, png, CSS, etc., are not included in this status report because it is ok for generated content to have uncommitted changes.


These are the previous versions of the repository in which changes were made to the R Markdown (analysis/analysis_budgets.Rmd) and HTML (docs/analysis_budgets.html) files. If you’ve configured a remote Git repository (see ?wflow_git_remote), click on the hyperlinks in the table below to view the files as they were in that past version.

File Version Author Date Message
html deb425c jens-daniel-mueller 2021-08-24 Build site.
html 534854b jens-daniel-mueller 2021-08-19 Build site.
html 77f4ba7 jens-daniel-mueller 2021-08-19 Build site.
html ece96df jens-daniel-mueller 2021-08-19 Build site.
html 27c99b8 jens-daniel-mueller 2021-08-19 Build site.
html a03f2f0 jens-daniel-mueller 2021-08-18 Build site.
html 9335b31 jens-daniel-mueller 2021-08-10 Build site.
html 9943b45 jens-daniel-mueller 2021-08-10 Build site.
html 0b00a2b jens-daniel-mueller 2021-08-09 Build site.
html 755c6b1 jens-daniel-mueller 2021-08-09 Build site.
html cd8e0d5 jens-daniel-mueller 2021-08-06 Build site.
html 15773a0 jens-daniel-mueller 2021-08-06 included calculation of revelle factor
html da61d1a jens-daniel-mueller 2021-08-06 Build site.
html 340d731 jens-daniel-mueller 2021-08-06 Build site.
html 71546e4 jens-daniel-mueller 2021-08-06 test with stricter CANYON-B filtering
html 29444a1 jens-daniel-mueller 2021-08-05 Build site.
html 42e80c0 jens-daniel-mueller 2021-08-04 Build site.
html 48f6eed jens-daniel-mueller 2021-08-04 Build site.
html 1c597ab jens-daniel-mueller 2021-08-04 Build site.
html 81a46a4 jens-daniel-mueller 2021-08-03 Build site.
html b88c61b jens-daniel-mueller 2021-08-03 Build site.
html 0f0d5e5 jens-daniel-mueller 2021-08-03 Build site.
Rmd 4d7bb5a jens-daniel-mueller 2021-08-03 test rlm model fitting
html a53656d jens-daniel-mueller 2021-08-03 Build site.
html 88f7356 jens-daniel-mueller 2021-08-02 Build site.
html d759279 jens-daniel-mueller 2021-08-02 Build site.
html 127b801 jens-daniel-mueller 2021-07-24 Build site.
html 1f65ef1 jens-daniel-mueller 2021-07-23 Build site.
html 912d90e jens-daniel-mueller 2021-07-23 Build site.
html 2477316 jens-daniel-mueller 2021-07-23 rebuild: surface dcant mapping seperate
html c9ccc00 jens-daniel-mueller 2021-07-22 Build site.
Rmd 6a7f226 jens-daniel-mueller 2021-07-22 surface dcant mapping seperate
html 426b2df jens-daniel-mueller 2021-07-21 Build site.
html 971ce87 jens-daniel-mueller 2021-07-13 Build site.
Rmd 89d9fcb jens-daniel-mueller 2021-07-13 complete revision
html 910d64a jens-daniel-mueller 2021-07-02 Build site.
html 1cbf907 jens-daniel-mueller 2021-07-02 Build site.
html 955f5dc jens-daniel-mueller 2021-06-29 Build site.
html 9480f94 jens-daniel-mueller 2021-06-29 Build site.
html d054c39 jens-daniel-mueller 2021-06-24 Build site.
html 4fcd066 jens-daniel-mueller 2021-06-24 Build site.
html 3b6387f jens-daniel-mueller 2021-06-18 Build site.
html 7a8d5f8 jens-daniel-mueller 2021-06-15 Build site.
Rmd 3695731 jens-daniel-mueller 2021-06-15 included budget assesment
html e0660fe jens-daniel-mueller 2021-06-15 Build site.
Rmd 430b829 jens-daniel-mueller 2021-06-15 included budget assesment
html 3052a6c jens-daniel-mueller 2021-06-15 Build site.
html 3cb64bd jens-daniel-mueller 2021-06-15 Build site.
html c6b3da6 jens-daniel-mueller 2021-06-14 Build site.
html 48c73fc jens-daniel-mueller 2021-06-14 Build site.
html 439ee80 jens-daniel-mueller 2021-06-11 Build site.
html 33ffcab jens-daniel-mueller 2021-06-10 Build site.
html 7e1f407 jens-daniel-mueller 2021-06-10 Build site.
html 2cbe18c jens-daniel-mueller 2021-06-10 added zonal mean section control plots
html 69c79d0 jens-daniel-mueller 2021-06-08 Build site.
html 1772903 jens-daniel-mueller 2021-06-07 Build site.
html 594ed9a jens-daniel-mueller 2021-06-04 Build site.
html db7df0e jens-daniel-mueller 2021-06-04 rebuild without overlapping eras
html 2edc791 jens-daniel-mueller 2021-06-04 Build site.
html 207339d jens-daniel-mueller 2021-06-03 Build site.
html 315710b jens-daniel-mueller 2021-06-03 include anomalous changes
html be90356 jens-daniel-mueller 2021-06-02 Build site.
html d37a85d jens-daniel-mueller 2021-05-31 Build site.
html 4b7a5ee jens-daniel-mueller 2021-05-28 Build site.
html 12b455a jens-daniel-mueller 2021-05-27 Build site.
Rmd ee13efb jens-daniel-mueller 2021-05-27 optional source of local params fully implemented
html 8c736a6 jens-daniel-mueller 2021-05-27 Build site.
Rmd dc8e4e1 jens-daniel-mueller 2021-05-27 optional source of local params implemented
html 25bd183 jens-daniel-mueller 2021-05-26 Build site.
html b79cb2d jens-daniel-mueller 2021-05-20 Build site.
html 62bd574 jens-daniel-mueller 2021-05-20 Build site.
html 7c56c39 jens-daniel-mueller 2021-05-19 Build site.
html 0de759e jens-daniel-mueller 2021-05-13 Build site.
html 52e7583 jens-daniel-mueller 2021-05-12 Build site.
html 969e631 jens-daniel-mueller 2021-05-12 Build site.
html d2a83bc jens-daniel-mueller 2021-04-16 Build site.
html c0a47df jens-daniel-mueller 2021-04-16 Build site.
html 50290e8 jens-daniel-mueller 2021-04-16 overlapping eras
html a00ec94 jens-daniel-mueller 2021-04-16 Build site.
Rmd 82df560 jens-daniel-mueller 2021-04-16 corrected tref assignment
html b6fe355 jens-daniel-mueller 2021-04-16 Build site.
html 81b7c6d jens-daniel-mueller 2021-04-16 Build site.
html 0a6099c jens-daniel-mueller 2021-04-16 Build site.
html ddec5b7 jens-daniel-mueller 2021-04-15 Build site.
html 29edae5 jens-daniel-mueller 2021-04-14 Build site.
html 099d566 jens-daniel-mueller 2021-04-14 Build site.
html bb44686 jens-daniel-mueller 2021-04-14 Build site.
html bf40480 jens-daniel-mueller 2021-04-13 Build site.
html 9f31fe3 jens-daniel-mueller 2021-04-13 Build site.
html 6eecb54 jens-daniel-mueller 2021-04-13 Build site.
Rmd b9c18c8 jens-daniel-mueller 2021-04-13 included model data
html f6ed7de jens-daniel-mueller 2021-04-13 Build site.
Rmd 3efd03e jens-daniel-mueller 2021-04-13 included model data
html c98be84 jens-daniel-mueller 2021-04-13 Build site.
html 338dd3c jens-daniel-mueller 2021-04-09 Build site.
html a79ca2c jens-daniel-mueller 2021-04-09 included model data
html 7831fd3 jens-daniel-mueller 2021-04-09 Build site.
html 20b26d4 jens-daniel-mueller 2021-04-08 Build site.
html c0895f8 jens-daniel-mueller 2021-04-07 Build site.
html 156d5b7 jens-daniel-mueller 2021-04-07 Build site.
html d21a452 jens-daniel-mueller 2021-04-07 Build site.
Rmd 296db5c jens-daniel-mueller 2021-04-07 included model data

1 Version ID

The results displayed on this site correspond to the Version_ID: v_XXX

2 Data sources

dcant estimates from this sensitivity case:

  • Mean and SD per grid cell (lat, lon, depth)
  • Zonal mean and SD (basin, lat, depth)
  • Inventories (lat, lon)
# integrated per basin_AIP

dcant_budget_basin_AIP <-
  read_csv(paste(path_version_data,
                 "dcant_budget_basin_AIP.csv",
                 sep = "")) %>% 
  filter(method == "total") %>% 
  select(-method)

dcant_budget_basin_AIP_mod_truth <-
  read_csv(paste(
    path_version_data,
    "dcant_budget_basin_AIP_mod_truth.csv",
    sep = ""
  )) %>% 
  filter(method == "total") %>% 
  select(-method)

dcant_budget_basin_AIP <- bind_rows(dcant_budget_basin_AIP,
                                    dcant_budget_basin_AIP_mod_truth)

rm(dcant_budget_basin_AIP_mod_truth)

# globally integrated

dcant_budget_global <-
  read_csv(paste(path_version_data,
                 "dcant_budget_global.csv",
                 sep = "")) %>% 
  filter(method == "total") %>% 
  select(-method)

dcant_budget_global_mod_truth <-
  read_csv(paste(
    path_version_data,
    "dcant_budget_global_mod_truth.csv",
    sep = ""
  )) %>% 
  filter(method == "total") %>% 
  select(-method)

dcant_budget_global <- bind_rows(dcant_budget_global,
                                    dcant_budget_global_mod_truth)

rm(dcant_budget_global_mod_truth)

# reference year

tref <-
  read_csv(paste(path_version_data,
                 "tref.csv",
                 sep = ""))

3 Time periods

tref
# A tibble: 2 × 4
  era       median_year start   end
  <chr>           <dbl> <dbl> <dbl>
1 1982-1999        1994  1982  1999
2 2000-2009        2004  2000  2009
duration <- sort(tref$median_year)[2] - sort(tref$median_year)[1]
duration
[1] 10

4 Global

4.1 Standard depth

Results integrated over the upper 3000 m

dcant_budget_global %>%
  filter(inv_depth == params_global$inventory_depth_standard) %>%
  ggplot(aes(estimate, value, fill = data_source)) +
  scale_fill_brewer(palette = "Dark2") +
  geom_col(position = position_dodge2())

Version Author Date
deb425c jens-daniel-mueller 2021-08-24
534854b jens-daniel-mueller 2021-08-19
77f4ba7 jens-daniel-mueller 2021-08-19
ece96df jens-daniel-mueller 2021-08-19
27c99b8 jens-daniel-mueller 2021-08-19
a03f2f0 jens-daniel-mueller 2021-08-18
9335b31 jens-daniel-mueller 2021-08-10
9943b45 jens-daniel-mueller 2021-08-10
0b00a2b jens-daniel-mueller 2021-08-09
755c6b1 jens-daniel-mueller 2021-08-09
cd8e0d5 jens-daniel-mueller 2021-08-06
15773a0 jens-daniel-mueller 2021-08-06
da61d1a jens-daniel-mueller 2021-08-06
340d731 jens-daniel-mueller 2021-08-06
71546e4 jens-daniel-mueller 2021-08-06
29444a1 jens-daniel-mueller 2021-08-05
42e80c0 jens-daniel-mueller 2021-08-04
48f6eed jens-daniel-mueller 2021-08-04
81a46a4 jens-daniel-mueller 2021-08-03
b88c61b jens-daniel-mueller 2021-08-03
0f0d5e5 jens-daniel-mueller 2021-08-03
dcant_budget_global %>%
  filter(inv_depth == params_global$inventory_depth_standard) %>%
  select(-inv_depth) %>% 
  pivot_wider(names_from = estimate,
              values_from = value) %>% 
  gt(
    groupname_col = c("data_source")
  ) %>%
  summary_rows(groups = TRUE,
               fns = list(total = "sum"))
dcant dcant_pos
mod
18.242 19.775
obs
30.903 31.855
mod_truth
17.546 17.656
dcant_budget_global_bias <- dcant_budget_global %>%
  filter(data_source %in% c("mod", "mod_truth")) %>%
  select(data_source, inv_depth, estimate, value) %>%
  pivot_wider(names_from = data_source,
              values_from = value) %>%
  mutate(dcant_bias = mod - mod_truth,
         dcant_bias_rel = dcant_bias / mod_truth * 100)

dcant_budget_global_bias %>% 
  filter(inv_depth == params_global$inventory_depth_standard) %>% 
  ggplot(aes(dcant_bias, estimate)) +
  geom_vline(xintercept = 0) +
  geom_col() +
  scale_fill_brewer(palette = "Dark2")

Version Author Date
deb425c jens-daniel-mueller 2021-08-24
534854b jens-daniel-mueller 2021-08-19
77f4ba7 jens-daniel-mueller 2021-08-19
ece96df jens-daniel-mueller 2021-08-19
27c99b8 jens-daniel-mueller 2021-08-19
a03f2f0 jens-daniel-mueller 2021-08-18
9335b31 jens-daniel-mueller 2021-08-10
9943b45 jens-daniel-mueller 2021-08-10
0b00a2b jens-daniel-mueller 2021-08-09
755c6b1 jens-daniel-mueller 2021-08-09
cd8e0d5 jens-daniel-mueller 2021-08-06
15773a0 jens-daniel-mueller 2021-08-06
da61d1a jens-daniel-mueller 2021-08-06
340d731 jens-daniel-mueller 2021-08-06
71546e4 jens-daniel-mueller 2021-08-06
29444a1 jens-daniel-mueller 2021-08-05
42e80c0 jens-daniel-mueller 2021-08-04
48f6eed jens-daniel-mueller 2021-08-04
81a46a4 jens-daniel-mueller 2021-08-03
b88c61b jens-daniel-mueller 2021-08-03
0f0d5e5 jens-daniel-mueller 2021-08-03
dcant_budget_global_bias %>% 
  filter(inv_depth == params_global$inventory_depth_standard) %>% 
  ggplot(aes(dcant_bias_rel, estimate)) +
  geom_vline(xintercept = 0) +
  geom_col() +
  scale_fill_brewer(palette = "Dark2")

Version Author Date
deb425c jens-daniel-mueller 2021-08-24
534854b jens-daniel-mueller 2021-08-19
77f4ba7 jens-daniel-mueller 2021-08-19
ece96df jens-daniel-mueller 2021-08-19
27c99b8 jens-daniel-mueller 2021-08-19
a03f2f0 jens-daniel-mueller 2021-08-18
9335b31 jens-daniel-mueller 2021-08-10
9943b45 jens-daniel-mueller 2021-08-10
0b00a2b jens-daniel-mueller 2021-08-09
755c6b1 jens-daniel-mueller 2021-08-09
cd8e0d5 jens-daniel-mueller 2021-08-06
15773a0 jens-daniel-mueller 2021-08-06
da61d1a jens-daniel-mueller 2021-08-06
340d731 jens-daniel-mueller 2021-08-06
71546e4 jens-daniel-mueller 2021-08-06
29444a1 jens-daniel-mueller 2021-08-05
42e80c0 jens-daniel-mueller 2021-08-04
48f6eed jens-daniel-mueller 2021-08-04
81a46a4 jens-daniel-mueller 2021-08-03
b88c61b jens-daniel-mueller 2021-08-03
0f0d5e5 jens-daniel-mueller 2021-08-03
dcant_budget_global_bias %>%
  filter(inv_depth == params_global$inventory_depth_standard) %>%
  ggplot() +
  geom_col(aes(estimate, mod,
               fill = "eMLR")) +
  geom_col(aes(estimate, mod_truth,
               col = "truth"),
           fill = "transparent") +
  scale_fill_manual(values = "grey60") +
  scale_color_manual(values = c("red", "red")) +
  theme(legend.title = element_blank()) +
  labs(y = "value")

Version Author Date
deb425c jens-daniel-mueller 2021-08-24
534854b jens-daniel-mueller 2021-08-19
77f4ba7 jens-daniel-mueller 2021-08-19
ece96df jens-daniel-mueller 2021-08-19
27c99b8 jens-daniel-mueller 2021-08-19
a03f2f0 jens-daniel-mueller 2021-08-18
9335b31 jens-daniel-mueller 2021-08-10
9943b45 jens-daniel-mueller 2021-08-10
0b00a2b jens-daniel-mueller 2021-08-09
755c6b1 jens-daniel-mueller 2021-08-09
cd8e0d5 jens-daniel-mueller 2021-08-06
15773a0 jens-daniel-mueller 2021-08-06
da61d1a jens-daniel-mueller 2021-08-06
340d731 jens-daniel-mueller 2021-08-06
71546e4 jens-daniel-mueller 2021-08-06
29444a1 jens-daniel-mueller 2021-08-05
42e80c0 jens-daniel-mueller 2021-08-04
48f6eed jens-daniel-mueller 2021-08-04
81a46a4 jens-daniel-mueller 2021-08-03
b88c61b jens-daniel-mueller 2021-08-03
0f0d5e5 jens-daniel-mueller 2021-08-03
  # geom_segment(aes(
  #   x = estimate,
  #   y = mod,
  #   xend = estimate,
  #   yend = mod_truth,
  #   col = "truth"
  # )) +
  # geom_point(aes(x = estimate,
  #                y = mod_truth,
  #                col = "truth"))

4.2 Other depths

Results integrated over the upper 100, 500, 1000, 3000, 10^{4} m

dcant_budget_global <- dcant_budget_global %>%
  mutate(inv_depth = as.factor(inv_depth))

dcant_budget_global %>%
  ggplot() +
  scale_fill_viridis_d() +
  geom_col(aes(data_source, value, fill = inv_depth),
           position = position_dodge2()) +
  facet_grid(. ~ estimate, scales = "free_y")

Version Author Date
deb425c jens-daniel-mueller 2021-08-24
534854b jens-daniel-mueller 2021-08-19
77f4ba7 jens-daniel-mueller 2021-08-19
ece96df jens-daniel-mueller 2021-08-19
27c99b8 jens-daniel-mueller 2021-08-19
a03f2f0 jens-daniel-mueller 2021-08-18
9335b31 jens-daniel-mueller 2021-08-10
9943b45 jens-daniel-mueller 2021-08-10
0b00a2b jens-daniel-mueller 2021-08-09
755c6b1 jens-daniel-mueller 2021-08-09
cd8e0d5 jens-daniel-mueller 2021-08-06
15773a0 jens-daniel-mueller 2021-08-06
da61d1a jens-daniel-mueller 2021-08-06
340d731 jens-daniel-mueller 2021-08-06
71546e4 jens-daniel-mueller 2021-08-06
29444a1 jens-daniel-mueller 2021-08-05
42e80c0 jens-daniel-mueller 2021-08-04
48f6eed jens-daniel-mueller 2021-08-04
81a46a4 jens-daniel-mueller 2021-08-03
b88c61b jens-daniel-mueller 2021-08-03
0f0d5e5 jens-daniel-mueller 2021-08-03
dcant_budget_global %>%
  pivot_wider(names_from = estimate,
              values_from = value) %>% 
  gt(
    groupname_col = c("data_source", "inv_depth"),
    row_group.sep = " | Depth: "
  ) %>%
  summary_rows(groups = TRUE,
               fns = list(total = "sum"))
dcant dcant_pos
mod | Depth: 100
3.414 3.414
mod | Depth: 500
12.560 12.588
mod | Depth: 1000
16.476 16.689
mod | Depth: 3000
18.242 19.775
mod | Depth: 10000
17.699 20.542
obs | Depth: 100
3.924 3.924
obs | Depth: 500
13.647 13.903
obs | Depth: 1000
19.000 19.494
obs | Depth: 3000
30.903 31.855
obs | Depth: 10000
37.182 38.589
mod_truth | Depth: 100
3.225 3.225
mod_truth | Depth: 500
11.651 11.653
mod_truth | Depth: 1000
15.607 15.611
mod_truth | Depth: 3000
17.546 17.656
mod_truth | Depth: 10000
17.809 17.933
dcant_budget_global_bias %>% 
  ggplot(aes(dcant_bias, estimate)) +
  geom_vline(xintercept = 0) +
  geom_col() +
  scale_fill_brewer(palette = "Dark2") +
  facet_grid(inv_depth ~ .)

Version Author Date
deb425c jens-daniel-mueller 2021-08-24
534854b jens-daniel-mueller 2021-08-19
77f4ba7 jens-daniel-mueller 2021-08-19
ece96df jens-daniel-mueller 2021-08-19
27c99b8 jens-daniel-mueller 2021-08-19
a03f2f0 jens-daniel-mueller 2021-08-18
9335b31 jens-daniel-mueller 2021-08-10
9943b45 jens-daniel-mueller 2021-08-10
0b00a2b jens-daniel-mueller 2021-08-09
755c6b1 jens-daniel-mueller 2021-08-09
cd8e0d5 jens-daniel-mueller 2021-08-06
15773a0 jens-daniel-mueller 2021-08-06
da61d1a jens-daniel-mueller 2021-08-06
340d731 jens-daniel-mueller 2021-08-06
71546e4 jens-daniel-mueller 2021-08-06
29444a1 jens-daniel-mueller 2021-08-05
42e80c0 jens-daniel-mueller 2021-08-04
48f6eed jens-daniel-mueller 2021-08-04
81a46a4 jens-daniel-mueller 2021-08-03
b88c61b jens-daniel-mueller 2021-08-03
0f0d5e5 jens-daniel-mueller 2021-08-03
dcant_budget_global_bias %>% 
  ggplot(aes(dcant_bias_rel, estimate)) +
  geom_vline(xintercept = 0) +
  geom_col(position = "dodge") +
  scale_fill_brewer(palette = "Dark2") +
  facet_grid(inv_depth ~ .)

Version Author Date
deb425c jens-daniel-mueller 2021-08-24
534854b jens-daniel-mueller 2021-08-19
77f4ba7 jens-daniel-mueller 2021-08-19
ece96df jens-daniel-mueller 2021-08-19
27c99b8 jens-daniel-mueller 2021-08-19
a03f2f0 jens-daniel-mueller 2021-08-18
9335b31 jens-daniel-mueller 2021-08-10
9943b45 jens-daniel-mueller 2021-08-10
0b00a2b jens-daniel-mueller 2021-08-09
755c6b1 jens-daniel-mueller 2021-08-09
cd8e0d5 jens-daniel-mueller 2021-08-06
15773a0 jens-daniel-mueller 2021-08-06
da61d1a jens-daniel-mueller 2021-08-06
340d731 jens-daniel-mueller 2021-08-06
71546e4 jens-daniel-mueller 2021-08-06
29444a1 jens-daniel-mueller 2021-08-05
42e80c0 jens-daniel-mueller 2021-08-04
48f6eed jens-daniel-mueller 2021-08-04
81a46a4 jens-daniel-mueller 2021-08-03
b88c61b jens-daniel-mueller 2021-08-03
0f0d5e5 jens-daniel-mueller 2021-08-03
dcant_budget_global_bias %>%
  ggplot() +
  geom_vline(xintercept = 0) +
  geom_col(aes(mod, estimate, fill = "eMLR"),
           position = "dodge") +
  geom_col(aes(mod_truth, estimate,
               col = "truth"),
           fill = "transparent") +
  scale_fill_manual(values = "grey60") +
  scale_color_manual(values = c("red", "red")) +
  theme(legend.title = element_blank()) +
  labs(x = "value") +
  facet_grid(inv_depth ~ .)

Version Author Date
deb425c jens-daniel-mueller 2021-08-24
534854b jens-daniel-mueller 2021-08-19
77f4ba7 jens-daniel-mueller 2021-08-19
ece96df jens-daniel-mueller 2021-08-19
27c99b8 jens-daniel-mueller 2021-08-19
a03f2f0 jens-daniel-mueller 2021-08-18
9335b31 jens-daniel-mueller 2021-08-10
9943b45 jens-daniel-mueller 2021-08-10
0b00a2b jens-daniel-mueller 2021-08-09
755c6b1 jens-daniel-mueller 2021-08-09
cd8e0d5 jens-daniel-mueller 2021-08-06
15773a0 jens-daniel-mueller 2021-08-06
da61d1a jens-daniel-mueller 2021-08-06
340d731 jens-daniel-mueller 2021-08-06
71546e4 jens-daniel-mueller 2021-08-06
29444a1 jens-daniel-mueller 2021-08-05
42e80c0 jens-daniel-mueller 2021-08-04
48f6eed jens-daniel-mueller 2021-08-04
81a46a4 jens-daniel-mueller 2021-08-03
b88c61b jens-daniel-mueller 2021-08-03
0f0d5e5 jens-daniel-mueller 2021-08-03

5 Basin AIP

5.1 Standard depth

Results integrated over the upper 3000 m

dcant_budget_basin_AIP %>%
  filter(inv_depth == params_global$inventory_depth_standard) %>%
  ggplot(aes(estimate, value, fill=basin_AIP)) +
  scale_fill_brewer(palette = "Dark2") +
  geom_col() +
  facet_grid(~data_source)

Version Author Date
deb425c jens-daniel-mueller 2021-08-24
534854b jens-daniel-mueller 2021-08-19
77f4ba7 jens-daniel-mueller 2021-08-19
ece96df jens-daniel-mueller 2021-08-19
27c99b8 jens-daniel-mueller 2021-08-19
a03f2f0 jens-daniel-mueller 2021-08-18
9335b31 jens-daniel-mueller 2021-08-10
9943b45 jens-daniel-mueller 2021-08-10
0b00a2b jens-daniel-mueller 2021-08-09
755c6b1 jens-daniel-mueller 2021-08-09
cd8e0d5 jens-daniel-mueller 2021-08-06
15773a0 jens-daniel-mueller 2021-08-06
da61d1a jens-daniel-mueller 2021-08-06
340d731 jens-daniel-mueller 2021-08-06
71546e4 jens-daniel-mueller 2021-08-06
29444a1 jens-daniel-mueller 2021-08-05
42e80c0 jens-daniel-mueller 2021-08-04
48f6eed jens-daniel-mueller 2021-08-04
81a46a4 jens-daniel-mueller 2021-08-03
b88c61b jens-daniel-mueller 2021-08-03
0f0d5e5 jens-daniel-mueller 2021-08-03
dcant_budget_basin_AIP %>%
  filter(inv_depth == params_global$inventory_depth_standard) %>%
  pivot_wider(names_from = estimate,
              values_from = value) %>% 
  gt(
    rowname_col = "basin_AIP",
    groupname_col = c("data_source", "inv_depth"),
    row_group.sep = " | Depth: "
  ) %>%
  summary_rows(groups = TRUE,
               fns = list(total = "sum"))
dcant dcant_pos
mod | Depth: 3000
Indian 5.001 5.463
Pacific 8.787 9.403
Atlantic 4.455 4.909
total 18.24 19.77
obs | Depth: 3000
Indian 12.110 12.344
Pacific 9.711 10.299
Atlantic 9.083 9.213
total 30.90 31.86
mod_truth | Depth: 3000
Indian 4.801 4.815
Pacific 8.319 8.404
Atlantic 4.426 4.437
total 17.55 17.66
dcant_budget_basin_AIP_bias <- dcant_budget_basin_AIP %>%
  filter(data_source %in% c("mod", "mod_truth")) %>%
  select(data_source, basin_AIP, inv_depth, estimate, value) %>%
  pivot_wider(names_from = data_source,
              values_from = value) %>%
  mutate(dcant_bias = mod - mod_truth,
         dcant_bias_rel = dcant_bias / mod_truth * 100)

dcant_budget_basin_AIP_bias %>% 
  filter(inv_depth == params_global$inventory_depth_standard) %>% 
  ggplot(aes(dcant_bias, estimate, fill=basin_AIP)) +
  geom_vline(xintercept = 0) +
  geom_col() +
  scale_fill_brewer(palette = "Dark2")

Version Author Date
deb425c jens-daniel-mueller 2021-08-24
534854b jens-daniel-mueller 2021-08-19
77f4ba7 jens-daniel-mueller 2021-08-19
ece96df jens-daniel-mueller 2021-08-19
27c99b8 jens-daniel-mueller 2021-08-19
a03f2f0 jens-daniel-mueller 2021-08-18
9335b31 jens-daniel-mueller 2021-08-10
9943b45 jens-daniel-mueller 2021-08-10
0b00a2b jens-daniel-mueller 2021-08-09
755c6b1 jens-daniel-mueller 2021-08-09
cd8e0d5 jens-daniel-mueller 2021-08-06
15773a0 jens-daniel-mueller 2021-08-06
da61d1a jens-daniel-mueller 2021-08-06
340d731 jens-daniel-mueller 2021-08-06
71546e4 jens-daniel-mueller 2021-08-06
29444a1 jens-daniel-mueller 2021-08-05
42e80c0 jens-daniel-mueller 2021-08-04
48f6eed jens-daniel-mueller 2021-08-04
81a46a4 jens-daniel-mueller 2021-08-03
b88c61b jens-daniel-mueller 2021-08-03
0f0d5e5 jens-daniel-mueller 2021-08-03
dcant_budget_basin_AIP_bias %>% 
  filter(inv_depth == params_global$inventory_depth_standard) %>% 
  ggplot(aes(dcant_bias_rel, estimate, fill=basin_AIP)) +
  geom_vline(xintercept = 0) +
  geom_col(position = "dodge") +
  scale_fill_brewer(palette = "Dark2")

Version Author Date
deb425c jens-daniel-mueller 2021-08-24
534854b jens-daniel-mueller 2021-08-19
77f4ba7 jens-daniel-mueller 2021-08-19
ece96df jens-daniel-mueller 2021-08-19
27c99b8 jens-daniel-mueller 2021-08-19
a03f2f0 jens-daniel-mueller 2021-08-18
9335b31 jens-daniel-mueller 2021-08-10
9943b45 jens-daniel-mueller 2021-08-10
0b00a2b jens-daniel-mueller 2021-08-09
755c6b1 jens-daniel-mueller 2021-08-09
cd8e0d5 jens-daniel-mueller 2021-08-06
15773a0 jens-daniel-mueller 2021-08-06
da61d1a jens-daniel-mueller 2021-08-06
340d731 jens-daniel-mueller 2021-08-06
71546e4 jens-daniel-mueller 2021-08-06
29444a1 jens-daniel-mueller 2021-08-05
42e80c0 jens-daniel-mueller 2021-08-04
48f6eed jens-daniel-mueller 2021-08-04
81a46a4 jens-daniel-mueller 2021-08-03
b88c61b jens-daniel-mueller 2021-08-03
0f0d5e5 jens-daniel-mueller 2021-08-03

5.2 Other depths

Results integrated over the upper 100, 500, 1000, 3000, 10^{4} m

dcant_budget_basin_AIP %>%
  ggplot(aes(data_source, value, fill=basin_AIP)) +
  scale_fill_brewer(palette = "Dark2") +
  geom_col() +
  facet_grid(inv_depth ~ estimate, scales = "free_y")

Version Author Date
deb425c jens-daniel-mueller 2021-08-24
534854b jens-daniel-mueller 2021-08-19
77f4ba7 jens-daniel-mueller 2021-08-19
ece96df jens-daniel-mueller 2021-08-19
27c99b8 jens-daniel-mueller 2021-08-19
a03f2f0 jens-daniel-mueller 2021-08-18
9335b31 jens-daniel-mueller 2021-08-10
9943b45 jens-daniel-mueller 2021-08-10
0b00a2b jens-daniel-mueller 2021-08-09
755c6b1 jens-daniel-mueller 2021-08-09
cd8e0d5 jens-daniel-mueller 2021-08-06
15773a0 jens-daniel-mueller 2021-08-06
da61d1a jens-daniel-mueller 2021-08-06
340d731 jens-daniel-mueller 2021-08-06
71546e4 jens-daniel-mueller 2021-08-06
29444a1 jens-daniel-mueller 2021-08-05
42e80c0 jens-daniel-mueller 2021-08-04
48f6eed jens-daniel-mueller 2021-08-04
81a46a4 jens-daniel-mueller 2021-08-03
b88c61b jens-daniel-mueller 2021-08-03
0f0d5e5 jens-daniel-mueller 2021-08-03
dcant_budget_basin_AIP %>%
  pivot_wider(names_from = estimate,
              values_from = value) %>% 
  gt(
    rowname_col = "basin_AIP",
    groupname_col = c("data_source", "inv_depth"),
    row_group.sep = " | Depth: "
  ) %>%
  summary_rows(groups = TRUE,
               fns = list(total = "sum"))
dcant dcant_pos
mod | Depth: 100
Indian 0.744 0.744
Pacific 1.797 1.797
Atlantic 0.873 0.873
total 3.41 3.41
mod | Depth: 500
Indian 3.000 3.006
Pacific 6.448 6.464
Atlantic 3.113 3.118
total 12.56 12.59
mod | Depth: 1000
Indian 4.487 4.520
Pacific 7.928 8.051
Atlantic 4.060 4.118
total 16.48 16.69
mod | Depth: 3000
Indian 5.001 5.463
Pacific 8.787 9.403
Atlantic 4.455 4.909
total 18.24 19.77
mod | Depth: 10000
Indian 4.835 5.544
Pacific 8.242 9.886
Atlantic 4.622 5.112
total 17.70 20.54
obs | Depth: 100
Indian 0.851 0.851
Pacific 2.039 2.039
Atlantic 1.034 1.034
total 3.92 3.92
obs | Depth: 500
Indian 3.444 3.617
Pacific 6.820 6.879
Atlantic 3.383 3.406
total 13.65 13.90
obs | Depth: 1000
Indian 5.812 6.040
Pacific 8.544 8.690
Atlantic 4.644 4.765
total 19.00 19.49
obs | Depth: 3000
Indian 12.110 12.344
Pacific 9.711 10.299
Atlantic 9.083 9.213
total 30.90 31.86
obs | Depth: 10000
Indian 14.856 15.092
Pacific 10.858 11.898
Atlantic 11.468 11.599
total 37.18 38.59
mod_truth | Depth: 100
Indian 0.712 0.712
Pacific 1.678 1.678
Atlantic 0.836 0.836
total 3.23 3.23
mod_truth | Depth: 500
Indian 2.730 2.730
Pacific 5.986 5.987
Atlantic 2.936 2.937
total 11.65 11.65
mod_truth | Depth: 1000
Indian 4.083 4.084
Pacific 7.660 7.662
Atlantic 3.863 3.865
total 15.61 15.61
mod_truth | Depth: 3000
Indian 4.801 4.815
Pacific 8.319 8.404
Atlantic 4.426 4.437
total 17.55 17.66
mod_truth | Depth: 10000
Indian 4.853 4.871
Pacific 8.499 8.589
Atlantic 4.457 4.472
total 17.81 17.93
dcant_budget_basin_AIP_bias %>% 
  ggplot(aes(dcant_bias, estimate, fill=basin_AIP)) +
  geom_vline(xintercept = 0) +
  geom_col() +
  scale_fill_brewer(palette = "Dark2") +
  facet_grid(inv_depth ~ .)

Version Author Date
deb425c jens-daniel-mueller 2021-08-24
534854b jens-daniel-mueller 2021-08-19
77f4ba7 jens-daniel-mueller 2021-08-19
ece96df jens-daniel-mueller 2021-08-19
27c99b8 jens-daniel-mueller 2021-08-19
a03f2f0 jens-daniel-mueller 2021-08-18
9335b31 jens-daniel-mueller 2021-08-10
9943b45 jens-daniel-mueller 2021-08-10
0b00a2b jens-daniel-mueller 2021-08-09
755c6b1 jens-daniel-mueller 2021-08-09
cd8e0d5 jens-daniel-mueller 2021-08-06
15773a0 jens-daniel-mueller 2021-08-06
da61d1a jens-daniel-mueller 2021-08-06
340d731 jens-daniel-mueller 2021-08-06
71546e4 jens-daniel-mueller 2021-08-06
29444a1 jens-daniel-mueller 2021-08-05
42e80c0 jens-daniel-mueller 2021-08-04
48f6eed jens-daniel-mueller 2021-08-04
81a46a4 jens-daniel-mueller 2021-08-03
b88c61b jens-daniel-mueller 2021-08-03
0f0d5e5 jens-daniel-mueller 2021-08-03
dcant_budget_basin_AIP_bias %>% 
  ggplot(aes(dcant_bias_rel, estimate, fill=basin_AIP)) +
  geom_vline(xintercept = 0) +
  geom_col(position = "dodge") +
  scale_fill_brewer(palette = "Dark2") +
  facet_grid(inv_depth ~ .)

Version Author Date
deb425c jens-daniel-mueller 2021-08-24
534854b jens-daniel-mueller 2021-08-19
77f4ba7 jens-daniel-mueller 2021-08-19
ece96df jens-daniel-mueller 2021-08-19
27c99b8 jens-daniel-mueller 2021-08-19
a03f2f0 jens-daniel-mueller 2021-08-18
9335b31 jens-daniel-mueller 2021-08-10
9943b45 jens-daniel-mueller 2021-08-10
0b00a2b jens-daniel-mueller 2021-08-09
755c6b1 jens-daniel-mueller 2021-08-09
cd8e0d5 jens-daniel-mueller 2021-08-06
15773a0 jens-daniel-mueller 2021-08-06
da61d1a jens-daniel-mueller 2021-08-06
340d731 jens-daniel-mueller 2021-08-06
71546e4 jens-daniel-mueller 2021-08-06
29444a1 jens-daniel-mueller 2021-08-05
42e80c0 jens-daniel-mueller 2021-08-04
48f6eed jens-daniel-mueller 2021-08-04
81a46a4 jens-daniel-mueller 2021-08-03
b88c61b jens-daniel-mueller 2021-08-03
0f0d5e5 jens-daniel-mueller 2021-08-03

6 Write files

dcant_budget_basin_AIP_bias %>%
  write_csv(paste(path_version_data,
                  "dcant_budget_basin_AIP_bias.csv", sep = ""))

dcant_budget_global_bias %>%
  write_csv(paste(path_version_data,
                  "dcant_budget_global_bias.csv", sep = ""))

sessionInfo()
R version 4.0.3 (2020-10-10)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: openSUSE Leap 15.2

Matrix products: default
BLAS:   /usr/local/R-4.0.3/lib64/R/lib/libRblas.so
LAPACK: /usr/local/R-4.0.3/lib64/R/lib/libRlapack.so

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              
 [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8    
 [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   
 [7] LC_PAPER=en_US.UTF-8       LC_NAME=C                 
 [9] LC_ADDRESS=C               LC_TELEPHONE=C            
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
 [1] gt_0.2.2         kableExtra_1.3.1 marelac_2.1.10   shape_1.4.5     
 [5] scales_1.1.1     ggforce_0.3.3    metR_0.9.0       scico_1.2.0     
 [9] patchwork_1.1.1  collapse_1.5.0   forcats_0.5.0    stringr_1.4.0   
[13] dplyr_1.0.5      purrr_0.3.4      readr_1.4.0      tidyr_1.1.3     
[17] tibble_3.1.3     ggplot2_3.3.5    tidyverse_1.3.0  workflowr_1.6.2 

loaded via a namespace (and not attached):
 [1] fs_1.5.0                 gsw_1.0-5                lubridate_1.7.9         
 [4] RColorBrewer_1.1-2       webshot_0.5.2            httr_1.4.2              
 [7] rprojroot_2.0.2          tools_4.0.3              backports_1.1.10        
[10] bslib_0.2.5.1            utf8_1.1.4               R6_2.5.0                
[13] DBI_1.1.0                colorspace_2.0-2         withr_2.3.0             
[16] tidyselect_1.1.0         compiler_4.0.3           git2r_0.27.1            
[19] cli_3.0.1                rvest_0.3.6              xml2_1.3.2              
[22] labeling_0.4.2           sass_0.4.0               checkmate_2.0.0         
[25] digest_0.6.27            rmarkdown_2.10           oce_1.2-0               
[28] pkgconfig_2.0.3          htmltools_0.5.1.1        highr_0.8               
[31] dbplyr_1.4.4             rlang_0.4.11             readxl_1.3.1            
[34] rstudioapi_0.13          jquerylib_0.1.4          generics_0.1.0          
[37] farver_2.0.3             jsonlite_1.7.1           magrittr_1.5            
[40] Matrix_1.2-18            Rcpp_1.0.5               munsell_0.5.0           
[43] fansi_0.4.1              lifecycle_1.0.0          stringi_1.5.3           
[46] whisker_0.4              yaml_2.2.1               MASS_7.3-53             
[49] grid_4.0.3               blob_1.2.1               parallel_4.0.3          
[52] promises_1.1.1           crayon_1.3.4             lattice_0.20-41         
[55] haven_2.3.1              hms_0.5.3                seacarb_3.2.14          
[58] knitr_1.33               pillar_1.6.2             reprex_0.3.0            
[61] glue_1.4.2               evaluate_0.14            RcppArmadillo_0.10.1.2.0
[64] data.table_1.14.0        modelr_0.1.8             vctrs_0.3.8             
[67] tweenr_1.0.2             httpuv_1.5.4             testthat_2.3.2          
[70] cellranger_1.1.0         gtable_0.3.0             polyclip_1.10-0         
[73] assertthat_0.2.1         xfun_0.25                broom_0.7.9             
[76] RcppEigen_0.3.3.7.0      later_1.2.0              viridisLite_0.3.0       
[79] ellipsis_0.3.2           here_0.1