Perhaps I've missed something, but you seem to just want to append a vector (which you have already calculated) to a matrix.
Documentation for Append[] shows how to do it:

For your case since you already have a and b:
MapThread[Append, {a, b}] // MatrixForm 
A different approach enables you to join matrixes to make longer rows:
The following makes a 2 couldcolumn matrix from your b
b2 = Transpose[{b, b}]; b2 // MatrixForm 
The documentation for Join[] shows the way to do what you asked for in your comment:

Note that the 2 at the end of the Join[] operates as a level specification.
For your case:
Join[a, b2, 2]; % // MatrixForm 