evaluate_treaty.Rd
Evaluate whether or not the treaty will be made in a confined or unconfined aquifer
evaluate_treaty(params, aquifer_type = NULL)
params | Parameter list (or data.frame with 1 row) containing
necessary parameters to evaluate the agreement. See |
---|---|
aquifer_type | Aquifer type as "confined" or "unconfined". If not specified
(default) |
Returns a 1-row tibble containing pumping, utility ranges needed for the treaty, and whether or not there is a treaty (i.e., if zRange > 0).
If the aquifer in the
game is confined (see ?check_params
for how aquifer type is determined) the solution is
exact. If the aquifer is unconfined, the solution is calculated numerically using multiroot
from the rootSolve
package, using default tolerance parameters. This means that there
could be small errors in the results for zMinSwiss
and zMaxFrench
. For unconfined aquifers,
zRange
is rounded to the 6th decimal place to minimize the effect of numerical errors on
the treaty outcome. If necessary, it can be recalculated as zRange = zMaxFrench - zMinSwiss
.
Evaluate the treaty given social, economic, and geophysical parameters.
Note that the cost of pumping is linear for confined aquifers, and nonlinear for unconfined aquifers, with the nonlinearity depending on the parameter l, with the key feature that the cost become infinite as h -> 0. For l = 0, the cost function is exponential and crosses 0 when h_i = dB_i. As l increases towards 1, the solution becomes more linear when the water table is near the surface. When l == 1, a linear solution is used and the cost remains linear even when the aquifer is fully depleted.
evaluate_treaty(example_params_confined)#> # A tibble: 1 x 10 #> treaty zRange zMinSwiss zMaxFrench qshat qfhat qsstar qfstar qsdouble qfdouble #> <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> #> 1 Y 0.0443 -0.0222 0.0222 6.87 6.87 8.74 8.74 9.04 9.04evaluate_treaty(example_params_unconfined)#> # A tibble: 1 x 10 #> treaty zRange zMinSwiss zMaxFrench qshat qfhat qsstar qfstar qsdouble #> <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> #> 1 Y 0.00954 -0.0236 -0.0141 5.98 5.09 6.85 6.10 6.96 #> # … with 1 more variable: qfdouble <dbl>