Skip to content
emgr - EMpirical GRamian Framework
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
py
CHANGELOG
CITATION
CODE
LICENSE
README.md
RUNME.m
curios.m
emgr-ref.pdf
emgr.m
emgr.png
emgr_lgc.m
emgr_oct.m
emgrtest.m
examples.m
moretests.m
testall.m
testobj.m

README.md

emgr logo emgr - EMpirical GRamian Framework

code meta-data. zenodo listed. matlab compatible

  • emgr - EMpirical GRamian Framework (gramian.de)
  • version: 5.7 (2019-02-26)
  • by: Christian Himpe (0000-0003-2194-6754)
  • under: BSD-2-Clause License
  • summary: Empirical Gramians for (model reduction of) input-output systems.

Scope

  • Model Reduction / Model Order Reduction (MOR)
    • parametric Model Order Reduction (pMOR) / Robust Reduction
    • nonlinear Model Order Reduction (nMOR)
    • Parameter Identification / Parameter Reduction
    • Combined State and Parameter Reduction (Combined Reduction)
  • Sensitivity Analysis
  • Decentralized Control
  • Optimal Sensor Placement / Optimal Actuator Placement
  • Nonlinearity Quantification

Empirical Gramians (Empirical Gramian Matrix Types)

  • Empirical Controllability Gramian
  • Empirical Observability Gramian
  • Empirical Cross Gramian
  • Empirical Linear Cross Gramian
  • Empirical Sensitivity Gramian
  • Empirical Augmented Observability Gramian (Empirical Identifiability Gramian)
  • Empirical Joint Gramian (Empirical Cross-Identifiability Gramian)

Features

  • Interfaces for:
    • custom solvers / integrators
    • custom inner products / dot products / kernels / pseudo-kernels
    • distributed / partitioned / low-rank cross Gramian
  • Non-symmetric cross gramian option for:
    • Empirical Cross Gramian
    • Empirical Linear Cross Gramian
    • Empirical Joint Gramian
  • Compatible with:
    • GNU Octave
    • Mathworks MATLAB
  • Vectorized and parallelizable
    • matrix transformation as bulk operations
    • parfor hints highlighting outer-most parallelizable loops
  • Functional design

Algorithm

For a mathematical summary and technical documentation of the empirical Gramian framework detailing all features and capabilities see:

Compatibility

  • GNU Octave >=4.2.0 (available in Ubuntu 18.04 LTS repositories)
  • Mathworks MATLAB >=2016b (use emgr_lgc.m for earlier version)
  • Python 2.X and 3.X

Citation

Getting Started

Run a minimal example in a Matlab interpreter like OCTAVE or MATLAB:

RUNME

To run all tests use:

testall

To run demos use:

examples(id) % with id one of 'hnm', 'isp', 'fss', 'nrc', 'rqo', 'lte', 'fbc', 'qso'

Files and Folders

README.md Basic Information

CODE Meta Information

CITATION Citation Information

LICENSE License Information

CHANGELOG Version Information

RUNME.m Minimal Code Example

emgr.m Empirical Gramian Framework (main file, crc32:52e9f192)

emgr_oct.m Empirical Gramian Framework (Optional Octave variant)

emgr_lgc.m Empirical Gramian Framework (Pre 2016b Matlab variant)

curios.m Clearing Up Reducibility of Input-Output Systems (simple frontend)

emgrtest.m System Tests

moretests.m Component Tests

examples.m Run demo (sample applications)

  • 'hnm' Hyperbolic Network Model
  • 'isp' Inverse Sylvester Procedure
  • 'fss' Flexible Space Structures
  • 'nrc' Nonlinear Resistor-Capacitor Cascade
  • 'rqo' Random Diagonal System with Quadratic Output
  • 'lte' Linear Transport Equation
  • 'fbc' Five Body Choreography
  • 'qso' Quasi-Stable Orbits Inside Black Holes

testobj.m State-Space Object Tests

emgr-ref.pdf emgr reference cheat sheet

py/emgr.py Empirical Gramian Framework (Python variant)

py/moretests.py Component Tests (Python variant)

Documentation Table-of-Contents

Summary

Scope

Download

License

Disclaimer

Usage

Arguments

Empirical Gramian Types

Option Flags

Custom Solver

Utility

Tests

Demos

About

References

Contact

Links

Notes

Troubleshooting

More information at: https://gramian.de

Follow @modelreduction for emgr news.

You can’t perform that action at this time.