Science Score: 52.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
✓Institutional organization owner
Organization nek5000 has institutional domain (nek5000.mcs.anl.gov) -
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (17.6%) to scientific vocabulary
Repository
Model-Order Reduction Framework for Nek5000
Basic Info
Statistics
- Stars: 16
- Watchers: 5
- Forks: 5
- Open Issues: 60
- Releases: 1
Metadata Files
readme.md
NekROM - Model Order Reduction Framework for Nek5000
This package include tools to help apply model-order reduction (MOR) to data produced by Nek5000 to generate reduced-order models (ROM). The generated ROMs can be run either in the Fortran driver embedded inside the Nek5000 userchk subroutine or can be run separately by provided driver scripts in Matlab, Python, and Julia. Users can also provide their own drivers which read the ROM operators and QOI factors from the ops/ and qoi/ directories.
Documentation
Documentation for NekROM is available at https://nekrom.readthedocs.io/en/latest/ or can be built locally following the instructions in doc/README.md.
Setup & Procedure
Set shell variables (in .bashrc for BASH users):
export MOR_DIR="/path/to/NekROM"
export PATH="$MOR_DIR/bin:$PATH"
Required files in NekROM case directory:
- Nek5000 case files e.g., .rea, .map, SIZE
- \$caserom.usr, .usr file specific for NekROM cases (see
$MOR_DIR/examples) - LMOR, specifies compile-time parameters
- $case.mor, specifies run-time parameters
- file.list, contains list of paths to the snapshots (relative path)
Optional file:
- avg.list, contains list of paths to the average files
After ensuring the required files are in the case directory, run makerom $caserom to make a Nek5000 executable for ROM.
Parameters
Compile-time parameters (for setting memory allocation size) can be found in LMOR.
ls, maximum number of snapshotslb, maximum number of total modes
run-time parameters can be found in $case.mor.
- [general], header for general parameters
mode, off = offline, on = online, all = offline + onlinefield, v = velocity, t = temperature, vt = velocity + temperaturenb, number of POD modes (must be less than lb, default == lb)
- [pod], header for pod parameters
type, l2 = $L^2$ POD modes, h10, $H^1_0$ POD modesmode0, avg = average 0th mode, state = user-defined in ub,vb,wb,tbaugment, 0 = no ABM, 1 = 0th interactions, 2 = diagonals, 3 = 1 + 2
- [qoi], header for qoi parameters
freq, frequency of QOI dump, if <1 freq=iostepdrag, drag based on OBJ data
Contribution
Our procedure for updating the code is exclusively through pull requests (no pushing). Please submit issues and PR to https://github.com/Nek5000/NekROM. PRs should be the smallest coherent change to the code-base. Issue titles should describe the issue e.g., 'Error in x', 'Missing x', etc. PR titles should describe the modification made e.g., 'Fixed x', 'Improved x, etc. See the documentation for the coding style of this project when contributing.
Parameter File Support
In addition to the .rea support for setting internal parameters, .mor files are supported for par-like dictionary. The possible key/values are described in templates/mpar.template.
Owner
- Name: NEK
- Login: Nek5000
- Kind: organization
- Website: https://nek5000.mcs.anl.gov
- Twitter: nek5000
- Repositories: 14
- Profile: https://github.com/Nek5000
fast high-order scaleable CFD
Citation (CITATION.cff)
# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!
cff-version: 1.2.0
title: NekROM
message: >-
If you use this software, please cite it using the
metadata from this file.
type: software
authors:
- given-names: Kento
family-names: Kaneko
email: kento.kaneko@epfl.ch
affiliation: EPFL
- given-names: Ping-Hsuan
family-names: Tsai
email: pinghsuan@vt.edu
affiliation: Virginia Tech
orcid: 'https://orcid.org/0009-0003-2388-7580'
- given-names: Nicholas
family-names: Christensen
email: njchris2@illinois.edu
affiliation: University of Illinois at Urbana-Champaign
- given-names: Paul
family-names: Fischer
email: fischerp@illinois.edu
affiliation: University of Illinois at Urbana-Champaign
repository-code: 'https://github.com/Nek5000/NekROM'
abstract: >-
This package include tools to help apply model-order
reduction (MOR) to data produced by Nek5000 to generate
reduced-order models (ROM). The generated ROMs can be run
either in the Fortran driver embedded inside the Nek5000
userchk subroutine or can be run separately by provided
driver scripts in Matlab, Python, and Julia. Users can
also provide their own drivers which read the ROM
operators and QOI factors from the ops/ and qoi/
directories.
keywords:
- Model order reduction
- Spectral element method
- Boussinesq
license: MIT
date-released: '2025-03-10'
GitHub Events
Total
- Issues event: 12
- Watch event: 4
- Delete event: 3
- Issue comment event: 31
- Push event: 87
- Pull request review comment event: 7
- Pull request review event: 14
- Pull request event: 36
- Fork event: 2
- Create event: 15
Last Year
- Issues event: 12
- Watch event: 4
- Delete event: 3
- Issue comment event: 31
- Push event: 87
- Pull request review comment event: 7
- Pull request review event: 14
- Pull request event: 36
- Fork event: 2
- Create event: 15
Dependencies
- actions/checkout v2 composite
- actions/checkout v2 composite
- actions/checkout v2 composite
- actions/checkout v2 composite
- actions/checkout v2 composite