eic / eic/EDM4eic

Consistent storage and interfacing of covariances

Open
#68 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
4
Forks
7
Avg merge
1d 8h
Merged PRs (30d)
3

Description

**Is your feature request related to a problem? Please describe.**
We store Cov2f, Cov3f, Cov4f as a diagonal followed by upper triangular by row. We store Cov6f as full upper triangular by row, with diagonals distributed through the data block. The inconsistency may lead to errors.

**Describe the solution you'd like**
A consistent covariant treatment would be desirable. Diagonal-first storage is least common and least likely to allow code reuse in Jacobian multiplications.

**Describe alternatives you've considered**
Diagonal-first has advantages because with default constructor arguments this allows a concise specification of diagonal-only covariance matrices. The indexing logic is more convoluted, though.

Contributor guide

No contributing guide indexed for this repository

Research direction

No files or tests are named. Start by locating the Cov2f, Cov3f, Cov4f, and Cov6f definitions and their indexing or Jacobian-multiplication interfaces, then compare the existing storage layouts. Done means an agreed consistent covariance representation and the affected interfaces and dependent code updated accordingly.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
data
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.