The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.

Analyze Catchment Area Characteristics

Setup

Load HYPEtools Package and Import Files

# Load Package
library(HYPEtools)

# Get Path to HYPEtools Model Example Files
model_path <- system.file("demo_model", package = "HYPEtools")

# Import HYPE Model Files
gd <- ReadGeoData(file.path(model_path, "GeoData.txt"))
gcl <- ReadGeoClass(file.path(model_path, "GeoClass.txt"))

Import Checks

Look at names of Soil and Land Use Classes

# Read Comment in GeoClass.txt
comment(gcl)
#> [1] "!Landuses: 1=Water; 2=Coniferous forest; 3=Agricultural land\t\t\t\t\t\t\t\t\t\t\t\t\t"                                                                      
#> [2] "!Soils: 1=Fine soil; 2=Coarse soil\t\t\t\t\t\t\t\t\t\t\t\t\t"                                                                                                
#> [3] "!Combination\tLanduse\tSoil\tCropid-main\tCropid-2nd\tRotation\tVegetationstyp\tSpecial-class\tTile-depth\tDrain-depth\t#Soil-layers\tDepth1\tDepth2\tDepth3"

Summarize Upstream Soil Fractions for a Gauge

Summarize fractions for the whole drainage area upstream of the gauge.


# Select SUBID for which you want to summarize the upstream characteristics
Qobs.sbd <- 3587

# Upstream soil fractions in percent
sof <- as.numeric(UpstreamGroupSLCClasses(subid = Qobs.sbd, gd = gd, gc = gcl, type = "soil", progbar = FALSE)[, -1] * 100)

# Show how many classes are in each soil category
length(sof)
#> [1] 2

# Calculate how many soil classes have a value greater than 0
sum(sof != 0)
#> [1] 2

# Add names for soil categories
names(sof) <- c("Fine soil", "Coarse soil")

# Display the upstream soil percentages
sof
#>   Fine soil Coarse soil 
#>       95.30        4.74

Summarize Upstream Land Use Fractions for a Gauge

Summarize fractions for the whole drainage area upstream of the gauge.


# Select SUBID for which you want to summarize the upstream characteristics
Qobs.sbd <- 3587

# Upstream land use fractions in percent
luf <- as.numeric(UpstreamGroupSLCClasses(subid = Qobs.sbd, gd = gd, gc = gcl, type = "landuse", progbar = FALSE)[, -1] * 100)

# Show how many land use classes there are
length(luf)
#> [1] 3

# Calculate how many land use classes have a value greater than 0
sum(luf != 0)
#> [1] 3

# Add names for land use categories
names(luf) <- c("Water", "Coniferous", "Agriculture")

# Display the upstream land use percentages
luf
#>       Water  Coniferous Agriculture 
#>        7.13       81.90       10.90

Plot Upstream Soil and Land Use Fractions

Plot fractions for the whole drainage area upstream of the gauge.

# Plot Upstream Soil Fractions
barplot(sof, ylab = "Area (%)", names.arg = "", col = "red", ylim = c(0, 100), xlab = "Soil fraction")
mtext(text = names(sof), side = 3, at = seq(.7, by = 1.2, length.out = 5), line = -.1, padj = .5, cex = .9, las = 3, adj = 1)
mtext(Qobs.sbd, side = 1, adj = 0, font = 3)
box()


# Plot Upstream Land Use Fractions
barplot(luf, ylab = "Area (%)", names.arg = "", col = "green", ylim = c(0, 100), xlab = "Land use fraction")
mtext(text = names(luf), side = 3, at = seq(.7, by = 1.2, length.out = 8), line = -.1, padj = .5, cex = .9, las = 3, adj = 1)
mtext(Qobs.sbd, side = 1, adj = 0, font = 3)
box()

Summarize Upstream Soil and Land Use Fractions for All Subbasins

This summarizes the soil and land use fractions for the total upstream area for each subbasin.

# Get a vector of all subids in the model from GeoData
sbd <- gd$SUBID

# Summarize upstream soils
sof.all <- UpstreamGroupSLCClasses(gd = gd, gcl = gcl, type = "soil", progbar = FALSE)[, -1] * 100
sof.all <- cbind("SUBID" = sbd, sof.all)
sof.all
#>    SUBID soil_1  soil_2
#> 1   3344   84.8 15.3000
#> 2   3396   99.9  0.0623
#> 3   3407   99.8  0.1610
#> 4   3466   90.3  9.6900
#> 5   3558   99.9  0.1090
#> 6   3555   99.4  0.5550
#> 7   3607  100.0  0.0000
#> 8  63804   92.4  7.6200
#> 9  63931   96.7  3.3200
#> 10  3564   96.6  3.4200
#> 11  3581   93.6  6.3600
#> 12  3547   95.0  4.9800
#> 13  3594   95.3  4.7300
#> 14 40556   94.0  6.0400
#> 15 40541   94.4  5.6400
#> 16  3486   94.6  5.4000
#> 17  3361   94.7  5.3000
#> 18  3427   96.2  3.8200
#> 19  3435   95.7  4.3500
#> 20  3432   95.2  4.8000
#> 21 63794   94.9  5.1300
#> 22 63938   98.3  1.7500
#> 23 63937   95.2  4.8300
#> 24  3532   95.3  4.7000
#> 25  3587   95.3  4.7400

# Summarize upstream land use
luf.all <- UpstreamGroupSLCClasses(gd = gd, gcl = gcl, type = "landuse", progbar = FALSE)[, -1] * 100
luf.all <- cbind("SUBID" = sbd, luf.all)
luf.all
#>    SUBID landuse_1 landuse_2 landuse_3
#> 1   3344      1.30      85.2    13.600
#> 2   3396     10.80      74.2    15.000
#> 3   3407     10.70      73.6    15.800
#> 4   3466      3.89      80.2    15.900
#> 5   3558     26.10      73.4     0.497
#> 6   3555     11.80      83.7     4.500
#> 7   3607      7.80      91.3     0.920
#> 8  63804      6.73      84.1     9.200
#> 9  63931     12.70      81.3     6.060
#> 10  3564     12.60      81.2     6.180
#> 11  3581      3.18      90.0     6.860
#> 12  3547      7.33      86.3     6.400
#> 13  3594      7.04      86.9     6.080
#> 14 40556      6.25      84.6     9.200
#> 15 40541      6.71      83.8     9.450
#> 16  3486      6.55      83.4    10.000
#> 17  3361     14.00      85.3     0.745
#> 18  3427     11.60      87.8     0.593
#> 19  3435     12.50      85.1     2.450
#> 20  3432      8.54      84.0     7.440
#> 21 63794      6.66      83.3    10.000
#> 22 63938      7.70      80.4    11.900
#> 23 63937      6.75      83.1    10.200
#> 24  3532      7.18      82.0    10.800
#> 25  3587      7.13      81.9    10.900

Summarize Soil and Land Use by Individual Subbasins

This summarizes the soil and land use fractions within just each subbasin area.

# Summarize subbasin soils
sof.sbd.all <- GroupSLCClasses(gd = gd, gcl = gcl, type = "soil", verbose = FALSE)[, -1] * 100
sof.sbd.all <- cbind("SUBID" = sbd, sof.sbd.all)
sof.sbd.all
#>    SUBID       AREA   soil_1  soil_2
#> 1   3344 2012608500  84.7500 15.2501
#> 2   3396 1112100200  99.9376  0.0623
#> 3   3407   10551800  89.4554 10.5444
#> 4   3466 2359837800  90.5252  9.4750
#> 5   3558  154308900  99.8914  0.1087
#> 6   3555  187596400  99.0778  0.9220
#> 7   3607 1563873200 100.0000  0.0000
#> 8  63804  853734600  92.3847  7.6151
#> 9  63931 1762503100  95.8143  4.1858
#> 10  3564   14564400  69.1240 30.8759
#> 11  3581 6261965800  93.6349  6.3648
#> 12  3547  615319700  98.4508  1.5492
#> 13  3594 1226245300  97.5376  2.4621
#> 14 40556 3592919600  94.5337  5.4660
#> 15 40541 1632334200  99.7367  0.2632
#> 16  3486 1073738400  99.6694  0.3307
#> 17  3361 1070852700  94.6982  5.3018
#> 18  3427  480763600  99.4852  0.5149
#> 19  3435 1216238400  94.9739  5.0261
#> 20  3432 1739028400  94.4824  5.5178
#> 21 63794 1259415200  98.8926  1.1073
#> 22 63938 2913067100  98.2519  1.7482
#> 23 63937    7209200  99.7633  0.2366
#> 24  3532 1098516200  99.5008  0.4992
#> 25  3587  231451000  88.2830 11.7169

# Summarize subbasin land use
luf.sbd.all <- GroupSLCClasses(gd = gd, gcl = gcl, type = "landuse", verbose = FALSE)[, -1] * 100
luf.sbd.all <- cbind("SUBID" = sbd, luf.sbd.all)
luf.sbd.all
#>    SUBID       AREA landuse_1 landuse_2 landuse_3
#> 1   3344 2012608500    1.2984   85.1508   13.5509
#> 2   3396 1112100200   10.7671   74.2386   14.9942
#> 3   3407   10551800    0.0000    2.7361   97.2637
#> 4   3466 2359837800    2.8875   79.2264   17.8863
#> 5   3558  154308900   26.0620   73.4415    0.4966
#> 6   3555  187596400    0.0000   92.2010    7.7988
#> 7   3607 1563873200    7.8028   91.2776    0.9196
#> 8  63804  853734600    6.7265   84.0698    9.2035
#> 9  63931 1762503100   19.8918   71.0023    9.1060
#> 10  3564   14564400    0.0000   59.9522   40.0477
#> 11  3581 6261965800    3.1752   89.9599    6.8646
#> 12  3547  615319700   13.4997   83.4072    3.0931
#> 13  3594 1226245300    4.3993   92.3861    3.2143
#> 14 40556 3592919600    6.6157   83.2779   10.1061
#> 15 40541 1632334200   12.8052   74.3974   12.7973
#> 16  3486 1073738400    3.2067   73.8250   22.9684
#> 17  3361 1070852700   13.9634   85.2920    0.7446
#> 18  3427  480763600    6.2788   93.4668    0.2545
#> 19  3435 1216238400   13.6581   81.5245    4.8174
#> 20  3432 1739028400    2.2440   82.3727   15.3835
#> 21 63794 1259415200    2.0353   79.5062   18.4584
#> 22 63938 2913067100    7.6999   80.3565   11.9437
#> 23 63937    7209200    0.0000   78.0271   21.9728
#> 24  3532 1098516200   20.0171   49.3721   30.6108
#> 25  3587  231451000    0.0000   74.7462   25.2537

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.