Length of Matlab Raised Cosine Filter Output Complex Vector If I instantiate in Matlab a filter, a vector, and use them in the following way:

vector = (complex(randn(1,k), randn(1,k)))';
filt = comm.RaisedCosineTransmitFilter('RolloffFactor',sdrqpsktx.RolloffFactor,'FilterSpanInSymbols',sdrqpsktx.RaisedCosineFilterSpan,'Gain',1,'OutputSamplesPerSymbol',sdrqpsktx.Interpolation)

  comm.RaisedCosineTransmitFilter with properties:

                     Shape: 'Square root'
             RolloffFactor: 0.5000
       FilterSpanInSymbols: 10
    OutputSamplesPerSymbol: 2
                      Gain: 1
output = filt(vector);


output will be a k*2 x 1 complex double. This is because of the OutputSamplesPerSymbol setting. The documentation on this function states that 


  The raised cosine filter has (FilterSpanInSymbols x
  InputSamplesPerSymbol + 1)  taps.


So this filter has 2*10+1 = 21 taps. How then is the output computed? If you take the convolution of the coefficients of filt and vector you will get a (k+taps-1)x1 complex double, which makes sense to me because the output of a FIR filter is the convolution of its impulse response with the input signal. How then is output a k*2 x 1 complex double?
The filter computes OutputSamplesPerSymbol output samples for each input value. You would get the complete convolution if OutputSamplesPerSymbol were equal to $1$ and if you added zeros to your input signal until the filter memory contains no non-zero input values anymore.

This is the standard way a filter routine works; if there is no interpolation or decimation, it computes one output sample per input sample because usually the complete input signal is not stored in a buffer, but it arrives either sample-per-sample or it is split into several blocks.