@@ -238,7 +238,7 @@ struct TimesOperator{T,BW,SZ,O<:Operator{T},BBW,SBBW} <: Operator{T}
238238 # check compatible
239239 for k = 1 : length (ops)- 1
240240 size (ops[k], 2 ) == size (ops[k+ 1 ], 1 ) || throw (ArgumentError (" incompatible operator sizes" ))
241- spacescompatible (domainspace (ops[k]), rangespace (ops[k+ 1 ])) || throw (ArgumentError (" imcompatible spaces at index $k " ))
241+ spacescompatible (domainspace (ops[k]), rangespace (ops[k+ 1 ])) || throw (ArgumentError (" incompatible spaces at index $k " ))
242242 end
243243
244244 # remove TimesOperators buried inside ops
@@ -313,12 +313,12 @@ else
313313end
314314@inline function _promotetimes (opsin,
315315 dsp= domainspace (last (opsin)),
316- sz= _timessize (opsin),
317316 anytimesop= true )
318317
319318 @assert length (opsin) > 1 " need at least 2 operators"
320319 ops, bw, bbw, sbbw, ibbb, irb = __promotetimes (opsin, dsp, anytimesop)
321- TimesOperator (ops, bw, sz, bbw, sbbw, ibbb, irb)
320+ sz = _timessize (ops)
321+ TimesOperator (convert_vector (ops), bw, sz, bbw, sbbw, ibbb, irb)
322322end
323323function __promotetimes (opsin, dsp, anytimesop)
324324 ops = Vector {Operator{promote_eltypeof(opsin)}} (undef, 0 )
@@ -341,7 +341,7 @@ function __promotetimes(opsin, dsp, anytimesop)
341341 all (israggedbelow, ops)
342342end
343343@inline function _op_bws (op)
344- [op] , bandwidths (op), blockbandwidths (op),
344+ (op,) , bandwidths (op), blockbandwidths (op),
345345 subblockbandwidths (op), isbandedblockbanded (op),
346346 israggedbelow (op)
347347end
364364 op2_dsp = op2: dsp
365365 op1_dsp = op1: rangespace (op2_dsp)
366366 ops = (op1_dsp, op2_dsp)
367- return [ ops... ] , bandwidthssum (ops),
367+ return ops, bandwidthssum (ops),
368368 bandwidthssum (ops, blockbandwidths),
369369 bandwidthssum (ops, subblockbandwidths),
370370 all (isbandedblockbanded, ops),
@@ -600,8 +600,7 @@ function A_mul_B(A::Operator, B::Operator; dspB=domainspace(B), rspA=rangespace(
600600 elseif isconstop (B)
601601 promotedomainspace (strictconvert (Number, B) * A, dspB)
602602 else
603- promotetimes (collateops (* , A, B),
604- dspB, _timessize ((A, B)), false )
603+ promotetimes (collateops (* , A, B), dspB, false )
605604 end
606605end
607606
0 commit comments