ORNL / ORNL/GridKit

Dense Eigensolver Dependency for Model Initialization

Open
#454 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
27
Forks
11
Avg merge
3d 8h
Merged PRs (30d)
23

Description

Summary

Either an in-house or a dependency for solving the generalized eigenvalue problem for small dense matrices, for the purpose of model initialization. A Shur/QR factorization would also complement this well.

Rationale

Some models in EMT require us to compute the left and right eigenvectors and the eigenvalues of a phase-domain matrix (whose dimension is $\leq$ the number of conductors) at initialization. This is absolutely necessary for passivity enforcement.

Description

An equivalent of Eigen C++ library, allowing us to solve small dense eigenvalue problems.

Additional information

While related, this does not necessarily need to use the same tool requested in a related issue #448, which is for sparse matrices.

Example: Frequency-dependent transmission line parameter modeling can be expressed in the form $0=F(\omega, y, \dot{y})$. To obtain the modal representation $\forall \omega$, we can use a dynamic eigenvalue tracking approach so we only need to solve the eigenvalue problem at initialization.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the requirements in this issue and the related sparse-matrix request in issue #448. Determine how small dense generalized eigenvalue problems, left and right eigenvectors, eigenvalues, and optional Schur/QR factorization should support EMT model initialization. Done means an in-house implementation or dependency is selected and integrated for the required passivity-enforcement workflow.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
backend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.