News
PhD Computational Science
UC Berkeley
MS Computer Science
UC Berkeley
MS Evolutionary Ecology
U Minnesota
Publications
20XX
Fill-Spill-Merge: Flow routing in depression hierarchies
Barnes, Callaghan, Wickert
Earth Surface Dynamics (Accepted)
Abstract Code 10.5194/esurf-2020-31Gerrymandering and Compactness: Implementation Flexibility and Abuse
Barnes and Solomon
Political Analysis (Accepted)
Abstract Code 10.1017/pan.2020.36 arXiv: 1803.028572020
BusTr: predicting bus travel times from real-time traffic
Barnes, Buthpitiya, Cook, Fabrikant, Tomkins, Xu
ACM SIGKDD
Abstract 10.1145/3394486.3403376 arXiv: 2007.00882Finding hierarchies in depressions and morphological segmentations
Barnes, Callaghan, Wickert
Earth Surface Dynamics
Abstract Code 10.5194/esurf-8-431-20202019
Rescal-snow: Simulating snow dunes with cellular automata
Kochanski, Defazio, Green, Barnes, Downie, Rubin, and Rountree
Journal of Open Source Software
Abstract PDF Code 21105/joss.01699Optimal orientations of discrete global grids and the Poles of Inaccessibility
Barnes
International Journal of Digital Earth
Abstract PDF Code 10.1080/17538947.2019.1576786Accelerating a fluvial incision and landscape evolution model with parallelism
Barnes
Geomorphology 330
Abstract PDF Code 10.1016/j.geomorph.2019.01.002 arXiv: 1803.029772017
Parallel Non-divergent Flow Accumulation For Trillion Cell Digital Elevation Models On Desktops Or Clusters
Barnes
Environmental Modelling & Software 92: 202–212
Abstract PDF Code 10.1016/j.envsoft.2017.02.02265 Million Years of Change in Temperature and Topography Explain Evolutionary History in Eastern North American Plethodontid Salamanders
Barnes and Clark
American Naturalist 190(1)
Abstract PDF Code 10.1086/6917962016
Parallel Priority-Flood Depression Filling For Trillion Cell Digital Elevation Models On Desktops Or Clusters
Barnes
Computers & Geosciences (Volume 96, Nov 2016, pp. 56–68)
Abstract PDF Code 10.1016/j.cageo.2016.07.001A Pipeline Strategy For Crop Domestication
DeHaan, VanTassel, Anderson, Asselin, Barnes, Baute, Cattani, Culman, Dorn, Hulke, Kantar, Larson, Marks, Miller, Poland, Ravetta, Rude, Ryan, Wyse, Zhang
Crop Science (Volume 56, May–Jun 2016, Pages 1–14)
Abstract PDF 10.2135/cropsci2015.06.03562014
The Reflective Plant Breeding Paradigm: A Robust System of Germplasm Development to Support Strategic Diversification of Agroecosystems
Runck, Kantar, Jordan, Anderson, Wyse, Eckberg, Barnes, Lehman, DeHaan, Stupar, Sheaffer, Porter
Crop Science (Volume 54, Sep–Oct 2014, Pages 1939–1948)
Abstract PDF 10.2135/cropsci2014.03.0195An Efficient Assignment of Drainage Direction Over Flat Surfaces in Raster Digital Elevation Models
Barnes, Lehman, Mulla
Computers & Geosciences. Vol 62, Jan 2014, pp 128-135, ISSN 0098-3004.
Abstract PDF Code 10.1016/j.cageo.2013.01.009Priority-Flood: An Optimal Depression-Filling and Watershed-Labeling Algorithm for Digital Elevation Models
Barnes, Lehman, Mulla
Computers & Geosciences. Vol 62, Jan 2014, pp 117-127, ISSN 0098-3004.
Abstract PDF Code 10.1016/j.cageo.2013.04.0242013
Modeling of Bovine Spongiform Encephalopathy in a Two-Species Feedback Loop
Barnes and Lehman
Epidemics (Volume 5, Issue 2, June 2013, Pages 85–91)
Abstract PDF Code 10.1016/j.epidem.2013.04.0012012
E-tracers: Development of a low cost wireless technique for exploring sub-surface hydrological systems
Bagshaw, Burrow, Wadham, Bowden, Lishman, Salter, Barnes, Nienow
Hydrological Processes. Vol 26, Issue 20, Jul 2012, Pages 3157–3160.
Abstract PDF 10.1002/hyp.9451Trading Space for Time: Constant-Speed Algorithms for Managing Future Events in Scientific Simulations
Lehman, Keen, Barnes
CSC
Abstract PDF2011
Distributed Parallel D8 Up-Slope Area Calculation in Digital Elevation Models
Barnes, Lehman, Mulla
PDPTA
Abstract 10.5281/zenodo.11623922008
Developing a Text-Based MMORPG to Motivate Students in CS1
Barnes and Gini
AAAI Conference – AI Education Workshop
Abstract 10.5281/zenodo.3780678Software

dggridR
Spatial analyses involving binning requires that every bin have the same area, but this is impossible using a rectangular grid laid over the Earth or over any projection of the Earth. Discrete global grids use hexagons, triangles, and diamonds to overcome this issue, overlaying the Earth with equally-sized bins. This package provides utilities for working with discrete global grids, along with utilities to aid in plotting such data.

Webglobe
You want to understand your data, but it's spatially distributed and you're afraid that trying to make sense of it on something gross, like a Mercator projection, is going to lead you to bad intuitions. Webglobe can help you fix this! It allows you to interactively visualize your data on either a three-dimensional globe or a flat map.

RichDEM
RichDEM is a set of hydrologic analysis tools for use on digital elevation models (DEMs). RichDEM uses parallel processing and state of the art algorithms to quickly process even very large DEMs.
RichDEM can use both the D8 and D∞ (Tarboton) flow metrics. It can resolve terrain depressions (or pits) either by filling or by channel carving. It can calculate contributing/up-slope areas, slopes, curvatures, and aspects.
The present version is built in C++ for speed and uses OpenMP to achieve parallelism; future versions may use Intel's Thread Building Blocks to achieve additional increases in speed.
RichDEM has resulted in the following publications:
- Parallel Non-divergent Flow Accumulation For Trillion Cell Digital Elevation Models On Desktops Or Clusters (Link)
- Parallel Priority-Flood Depression Filling For Trillion Cell Digital Elevation Models On Desktops Or Clusters (Link)
- An Efficient Assignment of Drainage Direction Over Flat Surfaces in Raster Digital Elevation Models (Link)
- Priority-Flood: An Optimal Depression-Filling and Watershed-Labeling Algorithm for Digital Elevation Models (Link)
- Distributed Parallel D8 Up-Slope Area Calculation in Digital Elevation Models (Link)


Grid Engine
grid_engine is a C++ class for flexibily working with different kinds of two-dimensional grids.
It can handle hexagonal, 4-connected, and 8-connected grids.
Any of these grids can be used as a toroid, such that the edges of the grid wrap around.
The same grid may be treated as a toroid, non-toroid, 4-, 8-, or hex-connected without needing to perform any modifications to the data structure. Toroidness and connectivity are not treated as fundamental aspects of a grid, but, rather, as artefacts of the way a grid is traversed.
Adjaceny neighbourhoods and visuals are generated with Python.

Climate Tracker
Climate Tracker is a simple model for visualizing historic climate data from the United States and Canada as tracks running across the landscape and through time.
Climate Tracker uses OpenLayers to display climate maps, aggregates data with C++, and uses Python and NumPy to fit the models. PHP routes respones from the client to the server.
The tracks Climate Tracker produces can be used to calculate climate velocities producing a simple means of understanding climate, its changes, and its interactions with the landcsape.
Projects
- All
- Hardware
- Science
- Web