-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DiagonalMatrix / Scalar #81
Comments
Yeah, like I mentioned in a commit message, DiagonalMatrices are in need of quite a bit of attention, they were left behind in a refactoring a while back - should I prioritise it higher? I actually didn't think they would be this useful, but you seem to be using them quite a bit. |
I've been working on integrating Dstats into SciD (definitely still a work in progress) and I need diagonal matrices for singular value decomposition and weighted least squares regression. That's where all this is coming from. Overall, though, I don't think diagonal matrices are that high a priority. I just seem to have stumbled on the few use cases where they're needed lately. Just to give a complete answer, here are the things I would put ahead of diagonal matrices, in order of priority. Maybe this should be on the wiki, too, with anything you would add:
|
scid\ops\expression.d(403): Error: static assert "Types 'BasicMatrix!(BasicDiagonalMatrixStorage!(RefCounted!(CowArray!(double),cast(RefCountedAutoInitialize)1),cast(DiagonalMatrixStorageType)0))' and 'double' do not define a promotion. "
scid\ops\expression.d(376): instantiated from here: PromotionImpl!(BasicMatrix!(BasicDiagonalMatrixStorage!(RefCounted!(CowArray!(double),cast(RefCountedAutoInitialize)1),cast(DiagonalMatrixStorageType)0)),double)
scid\ops\expression.d(312): instantiated from here: Promotion!(BasicMatrix!(BasicDiagonalMatrixStorage!(RefCounted!(CowArray!(double),cast(RefCountedAutoInitialize)1),cast(DiagonalMatrixStorageType)0)),double)
scid\ops\eval.d(70): instantiated from here: ExpressionResult!(Expression!(op,BasicMatrix!(BasicDiagonalMatrixStorage!(RefCounted!(CowArray!(double),cast(RefCountedAutoInitialize)1),cast(DiagonalMatrixStorageType)0)),Expression!(op,double,double)))
test.d(5): instantiated from here: eval!(Expression!(op,BasicMatrix!(BasicDiagonalMatrixStorage!(RefCounted!(CowArray!(double),cast(RefCountedAutoInitialize)1),cast(DiagonalMatrixStorageType)0)),Expression!(op,double,double)))
The text was updated successfully, but these errors were encountered: