Margulis Research Group

Department of Civil and Environmental Engineering


Home PeopleResearch ThemesResearch ProjectsStudent/Postdoc OpportunitiesTeachingContact

Freely-distributed "Introduction to Hydrology" e-textbook

Over the last several years we have developed a freely-distributed electronic textbook for use in hydrology courses. It is currently used as the required textbook for the "C&EE 150: Introduction to Hydrology" undergraduate course at UCLA. The textbook provides a broad foundation in the topics of hydrologic science including: mass balance, basic atmospheric thermodynamics, radiation, atmospheric circulation, precipitation, snow, evapotranspiration, unsaturated flow and infiltration, groundwater, and runoff. The book is available in iBooks and PDF format and leverages many embedded multimedia resources to convey the topics. An emphasis is placed on real problem solving including numerical applications. As such a "Modular Distributed Watershed Educational Toolbox (MOD-WET)" of MATLAB functions are included with the book. The MOD-WET codes build up to a fully-distributed watershed model that is described in the final chapter. The fully-coupled MOD-WET model provides a basis for integrating the set of concepts covered in the class in the context of both qualitative and quantitative demonstrations and experiments. The book is optimized for use within iBooks (i.e. on an iPad or iBooks reader) to take full advantage of multimedia, but a PDF version is also provided (with embedded movies that play when using Adobe Reader) for those who would prefer that format.

The book was first offered in 2014. It is currently on its third major edition. Below we provide the new 2016b version (posted on 09/21/2016). The only differences between the 2016a and 2016b editions involve the fixing of minor typos and correcting Figure 11.2.

We would like to keep track of other faculty/universities that may use this book (either required or as a reference). So for faculty who choose to use this in their courses, please inform me via email ( of your intent to use the text. Also please refer students to download the book/codes from this site, which will aid in tracking its use.

Textbook downloads:

iBooks Version (2016b Edition)

PDF Version (2016b Edition)

The MOD-WET functions are provided in the zipped file shown below with functions grouped by chapter in the textbook:

zipped MOD-WET codes

The test basin files are provided separately (to reduce download and unzip time):

zipped MOD-WET test basin files

Additionally, there is a "User Guide" for the model provided below. While it provides examples specific to the UCLA computer system setup, it should be useful to all users:

MOD-WET User Guide

A presentation designed to provide a tutorial for MOD-WET setup is given in the following video (in 3 parts):

MOD-WET Tutorial (part 1 of 3)

MOD-WET Tutorial (part 2 of 3)

MOD-WET Tutorial (part 3 of 3)

Slides that can accompany the text may be useful to students and/or instructors:

Slides for each chapter

For instructors:

Solutions for problems in the textbook are available upon request.

Contact info:

Steve Margulis (



Errata/Omissions (for 2016b Edition): A running tabulation of errors (typographical or otherwise) will be kept here along with any MOD-WET modifications until the next edition is created.

-- Typo. in Example 1.7.1 on p. 31: The calculated rate dh/dt should be 1.15 m/year instead of 1.05 m/year. The correct rate should be propagated through the rest of the problem.

-- Typo. on p. 232: The sentence that reads: "If the soil moisture gradient is negative ... , then the matric head term is negative..." should instead be: "If the soil moisture gradient is negative ... , then the matric head term is positive...". The key point is that the matric head term draws water from areas of wet soil to areas of dry soil. So depending on the soil moisture profile, the matric head term can either reinforce or act against the gravity term.

-- Typo. in Example 9.2.1 on p. 293: The problem states a hydraulic conductivity of the aquifer of 5 m/day, but a value of 1 m/day is used in the calculations. The stated value should be used and propagated through the rest of the problem.

-- Typo. in Example 9.4.2 on p. 307: The radius of the well is 0.05 m, but a value of 0.1 m is used in the calculation. The correct value of 0.05 m should be used and propagated through the rest of the problem.

-- Typo. in Example 10.5.1 on p. 344: The calculation of excess precipitation is off by a factor of two. It should be 0.00335 m = 0.335 cm. That corrected answer should be propagated through the rest of the problem.