fit_flux_all <-
as_cmdstan_fit (list.files ("chains/flux_all/" , full.names = TRUE ))
site_plot_num <- data |>
filter (Treatment == "Logging" & trec > 3 ) |>
select (Site, plot_new) |>
mutate (sitenum = as.numeric (as.factor (Site))) |>
mutate (plotnum = as.numeric (as.factor (paste (Site, plot_new)))) |>
unique ()
alpha <- extract_draws (fit_flux_all, "alpha_p" ) |>
separate (variable, into = c (NA , NA , "plotnum" , NA ), remove = FALSE ) |>
mutate (plotnum = as.numeric (plotnum)) |>
rename (alpha = value) |>
left_join (site_plot_num)
lambda <- extract_draws (fit_flux_all, "lambda_s" ) |>
separate (variable, into = c (NA , NA , "sitenum" , NA )) |>
mutate (sitenum = as.numeric (sitenum)) |>
rename (lambda = value) |>
left_join (unique (select (site_plot_num, contains ("ite" ))))
tau <- extract_draws (fit_flux_all, "tau_s" ) |>
separate (variable, into = c (NA , NA , "sitenum" , NA )) |>
mutate (sitenum = as.numeric (sitenum)) |>
rename (tau = value) |>
left_join (unique (select (site_plot_num, contains ("ite" ))))
delta <- extract_draws (fit_flux_all, "delta_p" ) |>
separate (variable, into = c (NA , NA , "plotnum" , NA ), remove = FALSE ) |>
mutate (plotnum = as.numeric (plotnum)) |>
rename (delta = value) |>
left_join (site_plot_num)
int_p <- delta |>
inner_join (tau, by = join_by (Site, sitenum, iter)) |>
mutate (value = delta * exp (2 ) * tau / 4 , variable = "int_p" ) |>
group_by (Site, plot_new, variable) |>
summarise (
mean = mean (value),
median = median (value),
q5 = quantile (value, 0.05 ),
q95 = quantile (value, 0.95 )
) |>
select (Site, plot_new, variable, mean, median, q5, q95)
int_m <- alpha |>
inner_join (lambda, by = join_by (Site, sitenum, iter)) |>
mutate (value = alpha / lambda, variable = "int_m" ) |>
group_by (Site, plot_new, variable) |>
summarise (
mean = mean (value),
median = median (value),
q5 = quantile (value, 0.05 ),
q95 = quantile (value, 0.95 )
) |>
select (Site, plot_new, variable, mean, median, q5, q95)
eq_t95_p <- function (x, tau) {
abs (exp (- 2 / tau * x) * (x^ 2 / (2 * tau) + x / 2 + tau / 4 ) - tau / 80 )
}
t95_p <- tau |>
group_by (Site, iter) |>
mutate (value = optimize (function (x) eq_t95_p (x, tau), c (0 , 100 ))$ minimum) |>
group_by (Site) |>
summarise (
mean = mean (value),
median = median (value),
q5 = quantile (value, 0.05 ),
q95 = quantile (value, 0.95 )
) |>
mutate (variable = "t95_p" ) |>
select (Site, variable, mean, median, q5, q95)
t95_m <- lambda |>
mutate (value = log (20 ) / lambda) |>
group_by (Site) |>
summarise (
mean = mean (value),
median = median (value),
q5 = quantile (value, 0.05 ),
q95 = quantile (value, 0.95 )
) |>
mutate (variable = "t95_m" ) |>
select (Site, variable, mean, median, q5, q95)
fit_flux_all$ summary (variables = "omega_s" ) |>
separate (variable, into = c ("variable" , NA , "sitenum" , NA )) |>
mutate (sitenum = as.numeric (sitenum)) |>
left_join (unique (select (site_plot_num, contains ("ite" )))) |>
select (Site, variable, mean, median, q5, q95) |>
bind_rows (int_p) |>
bind_rows (int_m) |>
bind_rows (t95_p) |>
bind_rows (t95_m) |>
write.csv ("data/derived_data/params_flux_all.csv" , row.names = FALSE )