-
Notifications
You must be signed in to change notification settings - Fork 526
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
mat: consider reconciling option passing in factorise methods #756
Comments
Using ORed bitfields for specifying various options feels quite low level and out-of-place in a matrix package but it 1) works, 2) does not look terrible, and most importantly 3) unlike just true/false the individual bits have names that appear at the call site. So I might prefer the SVD approach over Eigen. |
I agree with @vladimir-ch that ORed bit-fields are out of place. It's not clear to me that reconciling the
and be used as
In
and it will work as expected. |
There was more to that sentence. |
I don't follow |
Assuming you meant @vladimir-ch 's sentence, there was also more to my post? |
I was responding to the first sentence, yes. I don't think that there is a good justification for a common interface, but I do think there is a good reason for a general consistency in the approach taken to passing options. The first would be there to ensure code reusability between the factorising types, which I think is a non-goal since one factorisation is not the same as another factorisation (and the result accessors would be different anyway - so they should be part of the interface too if it existed which means there would not be a common interface). The existence of a consistent user interface (the signature vibe) means that learning one means that the user has the concepts necessary for rapidly learning others (the only difference being the exact semantics of the constants/parameters). |
At the moment there are three factorisation methods that take options, the methods on
Eigen
,EigenSym
,GSVD
andSVD
. These take different approaches to specifying options for factorisation.I'm not too sure whether these can be reconciled, or whether doing so would be a net benefit, but it is worth considering.
@btracey @vladimir-ch Views?
The text was updated successfully, but these errors were encountered: