Calculates total drainage area given a dendritic network and incremental areas.
calculate_total_drainage_area(x)
data.frame with ID, toID, and area columns.
numeric with total area.
library(dplyr)
source(system.file("extdata", "walker_data.R", package = "nhdplusTools"))
catchment_area <- select(walker_flowline, COMID, AreaSqKM) %>%
right_join(prepare_nhdplus(walker_flowline, 0, 0,
purge_non_dendritic = FALSE, warn = FALSE), by = "COMID") %>%
select(ID = COMID, toID = toCOMID, area = AreaSqKM)
new_da <- calculate_total_drainage_area(catchment_area)
catchment_area$totda <- new_da
catchment_area$nhdptotda <- walker_flowline$TotDASqKM
mean(abs(catchment_area$totda - catchment_area$nhdptotda))
#> [1] 2.607233e-15
max(abs(catchment_area$totda - catchment_area$nhdptotda))
#> [1] 2.842171e-14