Working with cell arrays in TopoToolbox

Posted on Updated on

Do you work with MATLAB’s cell arrays? If yes, you’ll know that they are a convenient data format to store all kind of data such as strings, numeric data, and dates.

A = cell(1,3);
A{1} = 'Happy New Year';
A{2} = [1 2 3];
A{3} = datetime(2021,1,1);

>> A

A =

  1×3 cell array

    {'Happy New Year'}    {1×3 double}    {[01-Jan-2021]}

Now, you can also use cell arrays to store data generated using TopoToolbox. Today, I’ll show how you can make efficient use of cell arrays by exploiting some recent enhancements to the function STREAMobj2cell. To this end, these new functionalities enable several new ways to plot stream networks, to run analysis tasks in parallel, and to automate workflows.

Read the rest of this entry »

Plotting knickpoints using @PPS

Posted on

The new class PPS (Point Pattern on Stream networks) is available now for a while, but I missed to write about it. I hope that in the coming weeks, I’ll find some time.

Briefly, what is PPS good for? PPS implements methods of point pattern analysis on stream networks. Point pattern analysis is a branch in spatial statistics and aims to explore and to infer the mechanisms that generate events or phenoma represented as points distributed in space. The analysis of point patterns on networks is a very active branch of research and focusses on events that occur on or alongside networks. If you want to learn more about points on networks, you may want to look at the R package spatstat and many of the publications by Adrian Baddeley and his co-authors. Our paper on EarthArxiv may also be a good start and looks at point patterns on stream networks in particular.

Read the rest of this entry »

Location, location, location!

Posted on Updated on

This post is about a new function which adds to the tools for stream-network analysis. Admittedly, this function does no magic. It is rather generic and, to this end, I am wondering how you might use it in your own research. For me, the motivation to write it, was to identify locations where I’d expect knickpoints (abrupt changes in channel gradient) – given a model of knickpoint migration. This is something that we explored in our Roan Plateau paper. Other questions could be:

  • Where are the locations along the river network that are exactly some distance upstream from the stream outlet?
  • Where do rivers cross a specific elevation contour?
  • Where are locations with maximum ksn value?
Read the rest of this entry »

Use of Chi analysis in experimental landscapes (DULAB)

Posted on

This blog post is written by Kobi Havusha. Kobi is member of Liran Goran‘s group at the Department of Earth and Environmental Sciences of the Ben-Gurion University of the Negev. The blog post is a tutorial that shows how TopoToolbox is applied to study divide dynamics simulated in an experimental landscape.

Before using this tutorial, please make sure you have TopoToolbox, the DEM file “Diff_EXP_17hr”, the functions “ChiPrimeTransform”, “ChiAtNearestStream”, and “ChiAsymmetry” which can be found on this GitHub repository.

Read the rest of this entry »

How does lithological composition vary downstream (2)

Posted on Updated on

In my last blog post, I showed how TopoToolbox can be used to plot the lithological composition as a function of distance along a river profile. This worked rather nicely with a single river. But how do you visualize these patterns if you have a catchment with multiple streams.

Read the rest of this entry »

How does lithological composition vary downstream?

Posted on Updated on

Matthew Morris recently asked on Twitter whether it is possibly to plot river profiles together with the lithological composition of their upstream area. I found this idea challenging and so I decided to write some code that does it.

Read the rest of this entry »

To slide or not to slide: HyLands gives the answer

Posted on Updated on

This blog post is written by Benjamin Campforts and Charlie Shobe

Landslides change the shape of Earth’s surface in a geologic instant, with devastating consequences for societies and infrastructure in mountainous terrain. The threat of landslides as a natural hazard and their impressive ability to sculpt topography has inspired generations of geomorphologists. Predicting landslide occurrence is challenging due to the episodic nature of landslides. Thanks to many decades of tears and sweat, in challenging field sites, inspecting old faded and crumbled areal photos or, if you are so lucky to live in the present, Google Earth, much progress has been made in the establishment of relatively accurate landslide susceptibility indices and hazard maps.

Read the rest of this entry »

Calculating basin-averaged ksn values

Posted on Updated on

The normalized river steepness (Ksn) is one of the most frequently used topogrpahic metrics in tectonic geomorphology. TopoToolbox has the function ksn that enables calculating this metric for each node in the river network. Often, however, researchers are rather interested in calculating basin average values of ksn rather than a ksn value for each river node. This is more tricky. Hence, here is a quick solution.

Read the rest of this entry »

Introduction to @DIVIDEobj

Posted on Updated on

Fig01_streams_and_divides

This blog post was written by Dirk Scherler

In this blog entry, we demonstrate the funcionalities of the new class DIVIDEobj.

Read the rest of this entry »

geoglobe now in MATLAB R2020a

Posted on Updated on

In a previous post (here) I have shown how TopoToolbox is able to export data to kml-files which can be directly opened in Google Earth (or other digital globes such as ArcGIS Earth). Indeed, kml is a great way to share geographic data. However, if you want to visually explore your data, the step via kml and Google Earth may not be necessary any longer. Since its latest release, MATLAB’s Mapping Toolbox includes geoglobe, a geographic globe that allows navigating on the Earth surface and to add data. To this end, geoglobe will enable numerous applications that enhance the way we can explore data analyzed and generated using TopoToolbox.

Read the rest of this entry »