Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function [T,x]=generate_and_solve(N,k,h,Te)
- for i=1:N-1
- a(i)=h+2*k*N^2;
- end
- D1=diag(a);
- D=D1(1:N-1,1:N-1);
- for i=1:N-1
- b(i)=-k*N^2;
- end
- L1=diag(b,-1);
- L=L1(1:N-1,1:N-1);
- for i=1:N-1
- b(i)=-k*N^2;
- end
- U1=diag(b,1);
- U=U1(1:N-1,1:N-1);
- A=D+L+U;
- b=ones(N-1,1)*h*Te;
- [n, n] = size(A); % Find size of matrix A
- [n, k] = size(b); % Find size of matrix b
- T = zeros(n,k); % Initialize x
- for i = 1:n-1
- m = -A(i+1:n,i)/A(i,i); % multipliers
- A(i+1:n,:) = A(i+1:n,:) + m*A(i,:);
- b(i+1:n,:) = b(i+1:n,:) + m*b(i,:);
- end;
- % Use back substitution to find unknowns
- T(n,:) = b(n,:)/A(n,n);
- for i = n-1:-1:1
- T(i,:) = (b(i,:) - A(i,i+1:n)*T(i+1:n,:))/A(i,i);
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement