<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def concat_t_vars_np(self, vars_idx=None):
 """ Concatenate `self.np_t` with `self.np_vars` and return a single matrix. The first column corresponds to time, and the rest of the matrix is the variables. Returns ------- np.array : concatenated matrix """

        selected_np_vars = self.np_vars
        if vars_idx is not None:
            selected_np_vars = self.np_vars[:, vars_idx]

        return np.concatenate([self.np_t[:self.np_nrows].reshape((-1, 1)),
                               selected_np_vars[:self.np_nrows, :]], axis=1)