function exercise10task3(theta,mu) T = 0.2; Nx = 21; x = linspace(0,1,Nx); dx = 1/(Nx-1); dt = mu*dx^2; t = 0:dt:floor(T/dt)*dt; U = sin(2*pi*x)'; U = U(1:end-1); A = -2*diag(ones(1,Nx-1)) + diag(ones(1,Nx-2),1) + diag(ones(1,Nx-2),-1); A(1,end) = 1; A(end,1) = 1; A1 = eye(Nx-1) + mu * theta * A; A2 = eye(Nx-1) - mu * (1-theta)* A; for k = 1:length(t)-1 U(:,k+1) = A2\(A1*U(:,k)); end U(Nx,:) = U(1,:); [T,X] = meshgrid(t,x); surf(x,t,U');