New user self-registration is disabled due to spam. Please email eigen-core-team @ lists.tuxfamily.org if you need an account.
Before reporting a bug, please make sure that your Eigen version is up-to-date!
Bug 1433 - horizontal/vertical stacking for matrix assembly
Summary: horizontal/vertical stacking for matrix assembly
Status: CONFIRMED
Alias: None
Product: Eigen
Classification: Unclassified
Component: Core - general (show other bugs)
Version: 3.4 (development)
Hardware: All All
: Normal Feature Request
Assignee: Nobody
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 1420 3.x
  Show dependency treegraph
 
Reported: 2017-06-06 09:10 UTC by Gael Guennebaud
Modified: 2019-01-25 09:22 UTC (History)
3 users (show)



Attachments

Description Gael Guennebaud 2017-06-06 09:10:55 UTC
Here is an interesting proposal for matrix assembly via horizontal and vertical stacking: https://forum.kde.org/viewtopic.php?f=74&t=140012

It works with C++11.

Still need to debate on final API, implement proper unit tests, docs, etc.
Comment 1 Gael Guennebaud 2017-06-06 13:24:06 UTC
and for the record, here is the first attempt from the same author: https://forum.kde.org/viewtopic.php?f=74&t=123881&p=375217&hilit=initializer_list#p375217
Comment 2 Christoph Hertzberg 2017-07-18 12:33:58 UTC
Very interesting indeed. And probably the closest we can get to Matlab-style [,;] matrix stacking.
I always found the << operator inconvenient, as it requires to resize the target in advance, and makes inline usage of stacked matrices very ugly.
Maybe it would even be possible to support C++03 (for a limited number of concatenated matrices). OTOH, maybe Eigen3.4 will be a good time to start giving up C++03 support (at least not force new features into it).

Note You need to log in before you can comment on or make changes to this bug.