Skip to content

Commit 52af74b

Browse files
committed
fix dims type
1 parent 6d12ffb commit 52af74b

File tree

4 files changed

+11
-6
lines changed

4 files changed

+11
-6
lines changed

src/qobj/dimensions.jl

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -71,8 +71,7 @@ _gen_dimensions(dims::Any) = Dimensions(dims)
7171
# obtain dims in the type of SVector with integers
7272
dimensions_to_dims(dimensions::NTuple{N,AbstractSpace}) where {N} = vcat(map(dimensions_to_dims, dimensions)...)
7373
dimensions_to_dims(dimensions::Dimensions) = dimensions_to_dims(dimensions.to)
74-
dimensions_to_dims(dimensions::GeneralDimensions) =
75-
(dimensions_to_dims(dimensions.to), dimensions_to_dims(dimensions.from)) # tuple
74+
dimensions_to_dims(dimensions::GeneralDimensions) = SVector{2}(dimensions_to_dims(dimensions.to), dimensions_to_dims(dimensions.from))
7675

7776
Base.length(::AbstractDimensions{N}) where {N} = N
7877

@@ -85,3 +84,9 @@ Base.prod(spaces::NTuple{N,AbstractSpace}) where {N} = prod(_get_space_size, spa
8584
LinearAlgebra.transpose(dimensions::Dimensions) = dimensions
8685
LinearAlgebra.transpose(dimensions::GeneralDimensions) = GeneralDimensions(dimensions.from, dimensions.to) # switch `to` and `from`
8786
LinearAlgebra.adjoint(dimensions::AbstractDimensions) = transpose(dimensions)
87+
88+
_get_dims_string(dimensions::Dimensions) = string(dimensions_to_dims(dimensions))
89+
function _get_dims_string(dimensions::GeneralDimensions)
90+
dims = dimensions_to_dims(dimensions)
91+
return "[$(string(dims[1])), $(string(dims[2]))]"
92+
end

src/qobj/eigsolve.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ Base.iterate(res::EigsolveResult, ::Val{:vectors}) = (res.vectors, Val(:done))
9999
Base.iterate(res::EigsolveResult, ::Val{:done}) = nothing
100100

101101
function Base.show(io::IO, res::EigsolveResult)
102-
println(io, "EigsolveResult: type=", res.type, " dims=", res.dims)
102+
println(io, "EigsolveResult: type=", res.type, " dims=", _get_dims_string(res.dimensions))
103103
println(io, "values:")
104104
show(io, MIME("text/plain"), res.values)
105105
print(io, "\n")

src/qobj/quantum_object.jl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,7 @@ function Base.show(
149149
},
150150
}
151151
op_data = QO.data
152-
println(io, "Quantum Object: type=", QO.type, " dims=", QO.dims, " size=", size(op_data))
152+
println(io, "Quantum Object: type=", QO.type, " dims=", _get_dims_string(QO.dimensions), " size=", size(op_data))
153153
return show(io, MIME("text/plain"), op_data)
154154
end
155155

@@ -160,7 +160,7 @@ function Base.show(io::IO, QO::QuantumObject)
160160
"Quantum Object: type=",
161161
QO.type,
162162
" dims=",
163-
QO.dims,
163+
_get_dims_string(QO.dimensions),
164164
" size=",
165165
size(op_data),
166166
" ishermitian=",

src/qobj/quantum_object_evo.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,7 @@ function Base.show(io::IO, QO::QuantumObjectEvolution)
134134
"Quantum Object Evo.: type=",
135135
QO.type,
136136
" dims=",
137-
QO.dims,
137+
_get_dims_string(QO.dimensions),
138138
" size=",
139139
size(op_data),
140140
" ishermitian=",

0 commit comments

Comments
 (0)