eros(size(X_));
u(1, :) = f;
u(:, 1) = 0; u(:, M + 1) = 0;

va = (-r + s) * ones(1, M - 2);
vc = (-r - s) * ones(1, M - 2);
vb = bsxfun(@plus, ones(1, M - 1), r * 2);

for jj = 1 : N - 1
    u(jj + 1, 2 : end - 1) = thomas_algo(va, vb, vc, u(jj, 2 : end - 1))';
end
figure; mesh(X_, T_, u);
xlabel('x'); ylabel('t'); zlabel('u(numerical)');
%% Value of Slices
%%%
% 
%   function plotSlice_2_6_3( t_slice, dt, u, x_ )
%       global u u_exact x_
%       t_slice_id = round(t_slice / dt) + 1;
%       u_slice_num 