scieee AI-readable full text Open interactive document viewer

Cratermaker: A Modern Python-Based Cratered Terrain Evolution Model

Minton, David

Full text

Cratermaker: A Modern Python-Based Cratered Terrain Evolution Model. D. A. Minton1, 1Department of Earth, Atmospheric, and Planetary Sciences, Purdue University, West Lafayette, Indiana 47907, USA ([email protected]). Introduction: Over the past decade, our group has been actively developing and using the Fortranbased Cratered Terrain Evolution Model (CTEM). CTEM was originally written to investigate the problem of crater equilibrium [1], but has proven itself to be a useful tool for investigating a variety of problems in cratering science, including: investigating the influence of seismic shaking on asteroid craters [2], testing models for the size-frequency distribution of ancient lunar impactors [3], studying the transport of material across highland/mare boundaries [4], investigating regolith production and regolith evolution [4,5], modeling the age distribution of impact melts [6,7] (see also Blevins et al. in this meeting), determining the processes that set equilibrium cratering for small simple craters [8] and large complex craters [9], and more. Despite its many successful uses, it is a somewhat difficult piece of software to use and develop, and also contains some major structural limitations that make it difficult to apply to some problems. The promise and problems of CTEM have motivated us to develop a replacement tool, which we call Cratermaker. Cratermaker is a clean-sheet re-design of CTEM, aimed at addressing the shortcomings of its predecessor. Cratermaker is still in its very early stages, as development only began in late October 2023, and it does not yet contain the full set of capabilities of CTEM. Here we describe the components of Cratermaker that are currently implemented, as well as a roadmap for future development. Overcoming the tyranny of the flat square grid: A major roadblock for CTEM’s use in many problems stems from its representation of a surface as that of a flat, 2D square grid with repeating boundary conditions. For “local scale” simulations, where the size of the simulation domain is small relative to the surface of the body, the geometry is a reasonable approximation. However, for global-scale simulations, the artificial simulation geometry becomes much more problematic. In addition, in [8] we demonstrated that even small-scale local simulations need to account for ejecta arising from large craters outside the simulation domain, which we implemented with an ad-hoc solution called the “superdomain.” From the start, Cratermaker is designed to simulate a surface as a fully three-dimensional unstructured mesh. The use of an unstructured mesh allows Cratermaker to accurately model the surfaces of spheroidal bodies, like the Moon, as well as irregular bodies like asteroids and small moons. It also allows for variable resolution surfaces, so that small-scale local regions of interest can be simulated at high resolution, while resolution is reduced in more distance regions. Such variable resolution meshes will obviate the need for the “superdomain” of CTEM. Improved crater scaling and chronology models: A core component of CTEM is the projectile-tocrater scaling model. The inputs to CTEM are files describing the projectile size and velocity distribution, and a user supplied configuration file defines parameters used in a crater scaling model based on Holsapple’s 1993 model [9]. A specific crater production function cannot be modeled directly in CTEM. In order to generate a particular crater production function, the user must construct a projectile population that would result in the desired crater population. In addition, the default Python or IDL-based front-ends used to manage CTEM simulations assume that craters accumulate at a constant rate. Therefore, interpreting the “time” variable from a CTEM simulation results requires the use of a user-supplied crater chronology model for post-processing. In order to address these shortcomings, Cratermaker is designed with a much more flexible and robust set of tools modeling various types of production functions. In Cratermaker, when a projectile is created, a corresponding crater is computed and vice versa. Therefore, a user can supply either a projectilebased or a crater-based production population. Furthermore, unlike CTEM, the crater scaling relationships are built using an object-oriented design framework so that the Holsapple (1993) crater scaling model or the default crater production functions can be overridden by other models relatively easily. Making Cratermaker make craters for everyone: Cratermaker has been designed from the start to be much easier to use than its predecessor. CTEM is primarily a Fortran-based program that is managed by a front-end. The original front-end was a set of IDL scripts, which were converted to Python. To install CTEM requires a user to compile the Fortran code, manually set up a directory structure for a simulation, copy or link the executable and edit the main configuration file, which contains many poorly-documented parameters. Few people outside of the main developers of CTEM are able to run even simple simulations without assistance. In contrast, the majority of Cratermaker is written in Python, though it also has the capability of using compiled Fortran or C libraries when performance is critical. In addition, Cratermaker is extensively documented, and work is ongoing to ensure that documentation is developed alongside code functionality. To run a simulation in CTEM required the user to edit or generate files to set model parameters and inputs. These are prone to error and require a great deal of work to develop and troubleshoot any time a new project is begun. In contrast, Cratermaker includes built-in libraries of several target bodies (e.g. Moon, Mercury, Mars, Ceres, etc.) and crater scaling relationship parameters (e.g. hard rock, soft rock, sand, ice, etc.). By default, Cratermaker will use “reasonable” default values (target body is the Moon, production function is the Neukum PF, etc.) that can be overridden with relatively intuitive inputs. Roadmap for future development: At the time of writing, the crater scaling, production function, and core monte carlo models have been fully implemented in Cratermaker (see Figure 1). We have also implemented basic morphology and ejecta models, including a preliminary ejecta ray model (see Figure 2). Recently, our group developed a sophisticated new morphology model for complex craters that is based in rigorous data analysis [11,12], which we are in the process of implementing. We are also embarking on a new study to develop a model for secondary craters and crater rays. Ejecta models and the more advanced capabilities of CTEM, such as regolith evolution, material transport and mixing, topographic diffusion, and crater counting, are still in development. The development of Cratermaker is fully open, and despite still being in a relatively immature state, we have made both the code repository itself as well as the documentation available on GitHub and readthedocs.io, respectively: https://github.com/profminton/cratermaker https://cratermaker.readthedocs.io/en/latest/ We welcome anyone who would like to contribute to either development or testing of Cratermaker. References: [1] Richardson J. E. (2009) Icarus 204, 697–715. [2] Richardson J. E. et al. (2020) Icarus 347, 113811. [3] Minton D. A. et al. (2015) Icarus 247, 172–190. [4] Huang Y.-H. et al. (2017) J. Geophys. Res. 122, 1158–1180. [5] Richardson J. E. and Abramov O. (2020) Planet. Sci. J. 1, 2. [6] Huang Y.-H. et al. (2018) Geophysical Research Letters 45, 6805–6813. [7] Blevins A. M. et al. (2025) Journal of Geophysical Research: Planets 130, e2024JE008722. [8] Minton D. A. et al. (2019) Icarus 326, 63–87. [9] Riedel C. et al. (2020) Journal of Geophysical Research: Planets 125, e2019JE006273. [10] Holsapple K. A. (1993) Annu. Rev. Earth Planet. Sci. 21, 333–373. [11] Du J. et al. (2024) Journal of Geophysical Research: Planets 129, e2024JE008357. [12] Du J. et al. (2024) Journal of Geophysical Research: Planets Submitted Dec. 5. Figure 1. 100 sampled crater production populations using the Neukum Production Function model in Cratermaker. Figure 2. Orientale ejecta degradation intensity function using the preliminary ejecta ray model in Cratermaker.