Skip to main content
Ctrl+K
 - Home  - Home

For users

  • Installation
  • User Guide
    • Simulation
    • Morphology
    • Production
    • Counting
    • Projectile
    • Scaling
    • Surface
    • Target
    • Crater
    • Default Behavior
    • Visualizing the surface
  • Gallery
    • Simuation and Visualization
      • Manually emplace a single crater on the Moon and visualize it with PyVista
      • Create a DataSurface centered on Kepler crater
      • Load a DEM of phobos
      • Run a simulation of the Moon and visualize with PyVista
      • Run a simulation of the Moon with basins emplaced using QuasiMC mode
      • Emplace a crater a specific distance and bearing from the center of a HiResLocalSurface
      • Export Cratermaker data to GeoPackage and visualize with GeoPandas
      • Run a simulation of a local region on Mars.
    • Production Functions and Monte Carlo Utilities
      • Plot the NPF Chronology function for the Moon and Mars
      • Plot a distribution of random impact angles
      • Plot a distribution of random sizes
      • Plot the Neukum projectile CSFD
      • Plot a distribution of random locations
      • Sample a power law and lunar Neukum Production Function
      • Plot a distribution of random velocities given a mean
      • Plot isochrons for the Moon and Mars for 1 Ma, 1 Ga, and 4 Ga using the Neukum Production Function
    • Projectiles and Scaling
      • Plot random projectile impact angles
      • Plot a distribution of random velocities given a mean
      • Plot a distribution of random locations
      • The simple-to-complex transition diameter
      • Crater scaling for various planetary surfaces
    • Topography
      • Create a crater and ejecta profile with the “basicmoon” morphology model
      • Create a shaded topographic representation of a crater
      • Plot the ray intensity map for a crater
      • Topographic Diffusion
    • Counting
      • Compute the degradation state of a crater
      • Fit a crater rim given a DEM and approximate crater size and location
  • API Reference
    • Simulation
    • Crater
    • Morphology
    • Production
    • Projectile
    • Scaling
    • Surface
    • Target
    • Counting
    • Utility functions
      • cratermaker.utils.montecarlo_utils.get_random_location
      • cratermaker.utils.montecarlo_utils.get_random_impact_angle
      • cratermaker.utils.montecarlo_utils.get_random_velocity
      • cratermaker.utils.montecarlo_utils.get_random_size
      • cratermaker.utils.montecarlo_utils.bounded_norm
      • cratermaker.utils.general_utils.Parameter
      • cratermaker.utils.general_utils.normalize_coords
      • cratermaker.utils.general_utils.validate_and_normalize_location
      • cratermaker.utils.general_utils.get_saved_interval_numbers
      • cratermaker.utils.general_utils.format_large_units
      • cratermaker.utils.general_utils.toggle_pyvista_actor
      • cratermaker.utils.general_utils.update_pyvista_help_message
      • cratermaker.utils.general_utils.cleanup
    • Base
      • cratermaker.core.base.import_components
  • Publications

For developers/contributors

  • Contributing Guide
  • What's New
  • GitHub repository
  • GitHub discussions
  • License
  • Repository
  • Suggest edit
  • Open issue
  • .rst

Example Gallery

Contents

  • Simuation and Visualization
  • Production Functions and Monte Carlo Utilities
  • Projectiles and Scaling
  • Topography
  • Counting

Example Gallery#

Below you will find a selection of examples that demonstrate how to use Cratermaker. The gallery is organized by the main components of Cratermaker. Each example is fully working and can be run directly.

Simuation and Visualization#

This section provides examples of how to run simulations using the main Simulation component of Cratermaker to emplace craters on a surface and visualize the results with various tools.

Manually emplace a single crater on the Moon and visualize it with PyVista

Manually emplace a single crater on the Moon and visualize it with PyVista

Create a DataSurface centered on Kepler crater

Create a DataSurface centered on Kepler crater

Load a DEM of phobos

Load a DEM of phobos

Run a simulation of the Moon and visualize with PyVista

Run a simulation of the Moon and visualize with PyVista

Run a simulation of the Moon with basins emplaced using QuasiMC mode

Run a simulation of the Moon with basins emplaced using QuasiMC mode

Emplace a crater a specific distance and bearing from the center of a HiResLocalSurface

Emplace a crater a specific distance and bearing from the center of a HiResLocalSurface

Export Cratermaker data to GeoPackage and visualize with GeoPandas

Export Cratermaker data to GeoPackage and visualize with GeoPandas

Run a simulation of a local region on Mars.

Run a simulation of a local region on Mars.

Production Functions and Monte Carlo Utilities#

This section provides examples of how to generate both projectile and crater populations using the Production component, as well as how to use the functions contained in the Monte Carlo utilities.

Plot the NPF Chronology function for the Moon and Mars

Plot the NPF Chronology function for the Moon and Mars

Plot a distribution of random impact angles

Plot a distribution of random impact angles

Plot a distribution of random sizes

Plot a distribution of random sizes

Plot the Neukum projectile CSFD

Plot the Neukum projectile CSFD

Plot a distribution of random locations

Plot a distribution of random locations

Sample a power law and lunar Neukum Production Function

Sample a power law and lunar Neukum Production Function

Plot a distribution of random velocities given a mean

Plot a distribution of random velocities given a mean

Plot isochrons for the Moon and Mars for 1 Ma, 1 Ga, and 4 Ga using the Neukum Production Function

Plot isochrons for the Moon and Mars for 1 Ma, 1 Ga, and 4 Ga using the Neukum Production Function

Projectiles and Scaling#

This section provides examples of the use of the Projectile and Scaling components of Cratermaker to model projectil populations and projectile-crater size scaling relationships.

Plot random projectile impact angles

Plot random projectile impact angles

Plot a distribution of random velocities given a mean

Plot a distribution of random velocities given a mean

Plot a distribution of random locations

Plot a distribution of random locations

The simple-to-complex transition diameter

The simple-to-complex transition diameter

Crater scaling for various planetary surfaces

Crater scaling for various planetary surfaces

Topography#

This section provides examples of how to use the Surface and Morphology components of Cratermaker to model the surface topography of craters and the topographic evolution of cratered surfaces.

Create a crater and ejecta profile with the “basicmoon” morphology model

Create a crater and ejecta profile with the "basicmoon" morphology model

Create a shaded topographic representation of a crater

Create a shaded topographic representation of a crater

Plot the ray intensity map for a crater

Plot the ray intensity map for a crater

Topographic Diffusion

Topographic Diffusion

Counting#

This section provides examples of how to use the Counting component of Cratermaker to analye crater statistics from a Cratermaker simulation.

Compute the degradation state of a crater

Compute the degradation state of a crater

Fit a crater rim given a DEM and approximate crater size and location

Fit a crater rim given a DEM and approximate crater size and location

Download all examples in Python source code: auto_examples_python.zip

Download all examples in Jupyter notebooks: auto_examples_jupyter.zip

Gallery generated by Sphinx-Gallery

previous

Visualizing the surface

next

Simuation and Visualization

Contents
  • Simuation and Visualization
  • Production Functions and Monte Carlo Utilities
  • Projectiles and Scaling
  • Topography
  • Counting

By David A. Minton

© Copyright 2026, David A. Minton.

Development of Cratermaker was supported by NASA Lunar Data Analysis Program Grants #80NSSC21K1719 and #80NSSC25K7050
Theme by the Executable Book Project