Skip to content

File Summary

Shane edited this page Feb 5, 2021 · 5 revisions

Utilities

  • config.py: Configuration file containing project directives for file and folder names, constants for the geometry and chemistry of the problem, plot customizations, and so forth.
  • utils.py: Utilities for logging and timing operations, loading and saving data, and saving figures.
  • chemistry_conversions.py: Tools for chemistry-related data conversions.
  • data_processing.py: Tools for (un)lifting and (un)scaling data.
  • inventory.py: Script for listing saved data and ROM files.

Main Routines

  • step1_unpack.py: Read the GEMS output directly from .tar archives, compile it into a single data set of size (num_variables * domain_size)x(num_snapshots), and save it in HDF5 format.
  • step2_preprocess.py: Generate training data for reduced-order model learning. The process has three steps, decoupled into the following routines.
    • step2a_transform.py: Transform (lift) the GEMS data to the learning variables and scale each variable appropriately. Save the processed data.
    • step2b_basis.py: Compute the POD basis (the dominant left singular vectors) of the lifted, scaled snapshot training data. Save the basis and information on how the data was scaled.
    • step2c_project.py: Project the lifted, scaled snapshot training data to the low-dimensional subspace spanned by the columns of the POD basis, compute time derivative information for the projected snapshots, and save the projected data.
  • step3_train.py: Use projected data to learn reduced-order models via Operator Inference with optimal regularization parameter selection.
  • step4_plot.py: Simulate learned ROMs and visualize results. Figures are saved in the folder given by config.figures_path().
  • step5_export.py: Write Tecplot-readable ASCII (text) files from simulation data. The resulting files can be used with Tecplot to visualize snapshots over the entire computational domain.

Other Files

  • log.log: Logging files (created as needed). For experiments with a specified number of training snapshots k, a separate log file is created (e.g., activity for k = 10,000 is logged to config.BASE_FOLDER/k10000/log.log.
  • requirements.txt: Python package requirements for this repository. Use python3 -m pip install --user -r requirements.txt to install the prerequisites.

Problem Statement: computational domain, state variables, and description of the data.

Installation and Setup: how to download the source code and the data files.

File Summary: short descriptions of each file in the repository.

Documentation: how to use the repository for reduced-order model learning.

Results: plots and figures, including many additional results that are not in the publications.

References: short list of primary references.

Clone this wiki locally