Advertisement
Guest User

Untitled

a guest
Jul 28th, 2017
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MatLab 0.50 KB | None | 0 0
  1. function final = iterate (initial, dx, dt, steps)
  2.     D = 1/6;
  3.     C = D * dt / (dx^2);
  4.     prev = initial;
  5.     curr = zeros(10, 1);
  6.     for n = 1:steps
  7.         % Dirichlet boundary conditions: psi(0, t) = psi(1, t) = 0
  8.         curr(1) = 0;
  9.         curr(10) = 0;
  10.         for i = 2:9
  11.             curr(i) = prev(i) + C * (prev(i+1) - 2*prev(i) + prev(i-1));
  12.         end
  13.         % Set the current solution as the previous solution for the next step
  14.         prev = curr;
  15.     end
  16.     final = curr;
  17. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement