# Combining an SVector and an SMatrix, in a cat(2, vec, mat) style

**URL:** <https://discourse.julialang.org/t/combining-an-svector-and-an-smatrix-in-a-cat-2-vec-mat-style/8994>\
**Category:** General Usage\
**Tags:** question, array\
**Created:** [February 11, 2018, 3:00pm UTC](https://discourse.julialang.org/t/combining-an-svector-and-an-smatrix-in-a-cat-2-vec-mat-style/8994 "2018-02-11T15:00:17Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Datseris](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/datseris/32/13406_2.png) [@Datseris](https://discourse.julialang.org/u/Datseris)\
**Post date:** [February 11, 2018, 3:00pm UTC](https://discourse.julialang.org/t/combining-an-svector-and-an-smatrix-in-a-cat-2-vec-mat-style/8994/1 "2018-02-11T15:00:17Z")

</div>

What is the best way to combine an `SVector` and an `SMatrix`, in a `cat(2, vec, mat)` style?

```julia
D = 3
k = 2 # arguments

Q = rand(SMatrix{D,k})
u = rand(SVector{D})

# 1
@btime cat(2, u, Q) #doesn't return SMatrix

# 2
@btime SMatrix{D, k}(u..., Q...) # slower than 1

```

Or it is in general not possible / not advised?

---

<div class="post-metadata">

**Author:** ![Datseris](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/datseris/32/13406_2.png) [@Datseris](https://discourse.julialang.org/u/Datseris)\
**Post date:** [February 11, 2018, 3:03pm UTC](https://discourse.julialang.org/t/combining-an-svector-and-an-smatrix-in-a-cat-2-vec-mat-style/8994/2 "2018-02-11T15:03:14Z")

</div>

Answer by Gauthier Soleilhac (@gsoleilhac)

`hcat(vec, mat)`
