You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The line in question in functionmap.jl is doing a very simple check of dimensions of the linear operator compared to the input vector. My caller is just attempting to compute A*x. The operator A is based a simple function call that operates on a vector of Float64; it is instantiated with a simple call, e.g., Gb1t = LinearMap(Fb1t,length(D1[:id1])), where Fb1t is the function.
This use case is so simple, I wonder if there was some fundamental change to LinearMaps from v3.3.0 to v.3.8.0. Maybe you have seen something like this before?
Using Infiltrator I have been able to verify that the sizes of the A and x objects are correct before the call to A*x in both the working and non-working cases. I have not studied the functionmap.jl code extensively, but I wonder if some kind of type aliasing may occur prior to the test at line 46 which somehow alters the apparent dimensions, or something like that.
-Ed
The text was updated successfully, but these errors were encountered:
Aha -- In the new version of the LinearMaps.jl package, it is necessary to instantiate the linear map with both dimensions of the operator, e.g., Gb1t = LinearMap(Fb1t,M,N)
for the non-square case.
-thx, Daniel. For some reason the old code worked when I merely specified the size of the input vector. The new code works if I explicitly pass the sizes of the domain and range when I instantiate the LinearMap. Fb1t is a function.
Greetings LinearMaps.jl Enthusiasts:
I have a piece of code which uses LinearMaps v3.3.0 inside Julia version 1.6.1. This version of the code works without error.
When I run this identical code on another machine using LinearMaps v3.8.0 inside Julia version 1.7.2, I receive an error:
The line in question in functionmap.jl is doing a very simple check of dimensions of the linear operator compared to the input vector. My caller is just attempting to compute
A*x
. The operatorA
is based a simple function call that operates on a vector of Float64; it is instantiated with a simple call, e.g.,Gb1t = LinearMap(Fb1t,length(D1[:id1]))
, whereFb1t
is the function.This use case is so simple, I wonder if there was some fundamental change to LinearMaps from v3.3.0 to v.3.8.0. Maybe you have seen something like this before?
Using Infiltrator I have been able to verify that the sizes of the
A
andx
objects are correct before the call toA*x
in both the working and non-working cases. I have not studied the functionmap.jl code extensively, but I wonder if some kind of type aliasing may occur prior to the test at line 46 which somehow alters the apparent dimensions, or something like that.-Ed
The text was updated successfully, but these errors were encountered: