SICOPOLIS

Contents

  • 1. Introduction
  • 2. Getting started
  • 3. Dependencies
  • 4. Test simulations
  • 5. Plotting and tools
  • 6. Modelling choices
  • 7. Climate forcing
  • 8. Using automatic differentiation
    • 8.1. Contributors
    • 8.2. Introduction and features
    • 8.3. Installation
    • 8.4. Running SICOPOLIS-AD v2
    • 8.5. Activating variables
    • 8.6. Utilities
    • 8.7. Some FAQs
    • 8.8. Tutorials
      • 8.8.1. Tutorial 1: Writing your own tangent-linear and adjoint code
      • 8.8.2. Tutorial 2: Using Tapenade for a mountain glacier model
      • 8.8.3. Tutorial 3: Validating results of SICOPOLIS adjoint and tangent linear mode with Finite differences
    • 8.9. Acknowledgements
  • 9. Technical notes
  • 10. How to contribute
  • 11. Abbreviations and acronyms
  • 12. References
SICOPOLIS
  • 8. Using automatic differentiation
  • 8.8. Tutorials
  • View page source

8.8. Tutorials

  • 8.8.1. Tutorial 1: Writing your own tangent-linear and adjoint code
    • 8.8.1.1. Forward model
      • 8.8.1.1.1. Getting the finite difference gradient from the Forward model
    • 8.8.1.2. Tangent linear mode
    • 8.8.1.3. Adjoint mode
      • 8.8.1.3.1. Forward mode with tape used for adjoint
      • 8.8.1.3.2. Code for adjoint mode
  • 8.8.2. Tutorial 2: Using Tapenade for a mountain glacier model
    • 8.8.2.1. Mountain glacier model
      • 8.8.2.1.1. Model description
      • 8.8.2.1.2. Model parameters
      • 8.8.2.1.3. Discretization and Finite Volumes solution
      • 8.8.2.1.4. What sensitivities are we interested in?
    • 8.8.2.2. Forward Model code
    • 8.8.2.3. Finite Differences for validation
    • 8.8.2.4. Tangent Linear model
      • 8.8.2.4.1. Generating Tangent Linear model code using Tapenade
    • 8.8.2.5. Adjoint Model
      • 8.8.2.5.1. Generating Adjoint model code using Tapenade
    • 8.8.2.6. Driver Routine
    • 8.8.2.7. Combining all compilation commands into a Makefile
    • 8.8.2.8. Results
    • 8.8.2.9. A note on Binomial Checkpointing
      • 8.8.2.9.1. What is Checkpointing?
      • 8.8.2.9.2. What is Binomial Checkpointing?
      • 8.8.2.9.3. How to use Binomial Checkpointing with Tapenade?
  • 8.8.3. Tutorial 3: Validating results of SICOPOLIS adjoint and tangent linear mode with Finite differences
    • 8.8.3.1. Validation using automated Python script
    • 8.8.3.2. Results
Previous Next

© Copyright 2009-2025, SICOPOLIS Authors.

Built with Sphinx using a theme provided by Read the Docs.