1. Preface
  2. Acknowledgements
  3. Why NADI?
  4. Who this book is for
  5. How to use this book
  6. How to Cite
  7. NADI System Setup
  8. Introduction
  9. Installation
  10. Plugins
  11. Network Detection (GIS)
  12. NADI GIS
  13. Example
  14. Network Analysis (DSL)
  15. Getting Started
  16. Core Concepts
    1. Task
    2. Attributes
    3. Node
    4. Network
    5. Expression
    6. String Template
    7. Node Function
    8. Network Function
    9. Cross Context Functions and Variables
    10. Plugins
    11. Further Reading
  17. Learn by Examples
    1. Attributes
    2. Control Flow
    3. Connections
    4. Counting Nodes
    5. Cumulative Sum
    6. Import Export Files
    7. String Templates
  18. NADI Extension Capabilities
  19. List of All Functions
  20. Example Research Problems
  21. Effects of Dams
    1. Validating Network
    2. Counting Ohio Dams
    3. Earliest Dam Year
  22. LaTeX Table
  23. Python Library
  24. NADI Python (nadi-py)
  25. Differences with Task System
  26. Plugins
  27. Examples
  28. Plugin Developer Guide
  29. Executable Plugins
  30. Compiled Plugins
    1. Internal Plugins
    2. External Plugins
    3. Functions
      1. Environment Functions
      2. Node Functions
      3. Network Functions
  31. List of Plugin Functions
  32. Internal Plugins
    1. Attributes
    2. Command
    3. Connections
    4. Core
    5. Debug
    6. Files
    7. Logic
    8. Regex
    9. Render
    10. Series
    11. Table
    12. Timeseries
    13. Visuals
  33. External Plugins
    1. Dams
    2. DataFill
    3. DSS
    4. Errors
    5. Fancy Print
    6. Gnuplot
    7. Graphics
    8. Graphviz
    9. HTML
    10. GIS
    11. Print Node
    12. Streamflow
    13. NADI PDF
  34. Developer Reference
  35. Software Architect
  36. Data Structure
    1. Node
    2. Network
    3. Timeseries
    4. String Templates
    5. Tables
    6. File Templates
    7. Tasks
    8. Node Functions
    9. Network Functions
  37. Developer Notes and Future Direction
  38. Developer Notes
    1. Motivation
    2. Why Rust?
    3. Plugin System Experiments
      1. First Prototype: cdylib
      2. Second Prototype: abi_stable
    4. Writing this Book
  39. Future Ideas to Implement
    1. Optimization Algorithms
    2. Interactive Plots