-
-
Notifications
You must be signed in to change notification settings - Fork 9
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
Matrix functions for UniformScaling #695
Comments
Initial implementation: https://github.com/jagot/UniformScalingMatrixFunctions.jl |
There was some initial effort made in JuliaLang/julia#28872, but then got stale. |
Good to know! Maybe that PR should be revived instead? |
Yes. Actually, that PR had all that you are asking for here. So we could resolve merge conflicts there, merge, and open a new issue to track the ambitious unresolved broadcasting aspects. |
other similar from Base.Math: |
I've rebased JuliaLang/julia#28872 and pushed to my fork. Just need to build and test and then make a new PR? |
I've just resolved the merge conflicts there and one qualification issue, tests are running. If they pass, I'd suggest to merge JuliaLang/julia#28872, and then continue from there. |
Hmm, double work double the fun? |
Sounds good. Maybe update the OP to reflect the missing parts now that JuliaLang/julia#28872 is merged? One open issue there were matrix decompositions. |
Updated! |
I was surprised by this:
Since we already have a few matrix functions defined, such as
https://github.com/JuliaLang/julia/blob/e36fe95a639c6956aa39367bef8e727b174e52b2/stdlib/LinearAlgebra/src/dense.jl#L702-L759
it would seem reasonable to expect at least these elementary functions to be defined for
UniformScaling
as well:^(::UniformScaling, ::Number)
(already added in added ^ method for UniformScaling julia#34008)exp
,log
expm1
,logp1
sin
,cos
,tan
,csc
,sec
,cot
+ inverses and hyperbolic versionssqrt
,cbrt
pinv
,tr
real
,imag
,reim
All of the above have been added in JuliaLang/julia#28872, the question is now which additional functions are of interest, i.e. which are used for matrices? Candidates are
abs
- one could argue that the matrix generalization isdet
(which yields a scalar), but you can compute
abs(A)
asQ*abs.(λ)*Q'
, which is something different.abs2
log10
,log2
exp2
,exp10
sinc
,cosc
I am unsure if the functions below are sensible for matrices, possibly
with the exception of
sinpi
andcospi
.sinpi
,cospi
sind
,cosd
,tand
,secd
,cscd
,cotd
asind
,acosd
,atand
,asecd
,acscd
,acotd
deg2rad
,rad2deg
mod2pi
From JuliaLang/julia#28872 remains also the idea of matrix decompositions.
The text was updated successfully, but these errors were encountered: