Skip to content

Commit

Permalink
Added Part F
Browse files Browse the repository at this point in the history
  • Loading branch information
cjc13016 committed Dec 14, 2017
1 parent 990b2e4 commit e03b882
Showing 1 changed file with 67 additions and 0 deletions.
67 changes: 67 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,73 @@ end
![nxn Interior Nodes, n = 10](./figures/figure2.png)

### Part E
``` matlab
function [pw_se,w] = SE_diff(T,P,n)
% Call function from part c to obtain vector w
w = membrane_solution(T,P,n);
% Create All Nodes Matrix (Interior & Exterior)
m = zeros(n+2);
c = vec2mat(w,n); % Vector w rearranged to n x n matrix.
m(2:n+1,2:n+1) = c; % insert matrix c into middle of m matrix
% m = symmetric matrix
h = 10/(n+1); % h = delta_x = delta_y (micron)
% Compute w bar
w_bar = zeros(n+1,n+1);
for i = 1:n+1
for j = 1:n+1
w_bar(i,j) = (m(i,j)+m(i,j+1)+m(i+1,j)+m(i+1,j+1))/4;
end
end
% Left side of the equation
left_side = zeros(n+1,n+1);
for i = 1:(n+1)^2
left_side(i) = P * h^2*w_bar(i);
end
L = sum(sum(left_side));
% Compute dw_dx
dx = zeros(n+2,n+1);
for i = 2:n+2
dx(:,i-1)= (m(:,i)-m(:,i-1))/(h);
end
dw_dx = zeros(n+1,n+1);
for i = 1:n+1 % rows
for j = 1:n+1 % columns
dw_dx(i,j) = (dx(i,j)+dx(i+1,j))/2;
end
end
% Compute dw_dy
dy = zeros(n+1,n+2);
for i = 2:n+2
dy(i-1,:)= (m(i-1,:)-m(i,:))/(h);
end
dw_dy = zeros(n+1,n+1);
for i = 1:n+1 % rows
for j = 1:n+1 % columns
dw_dy(i,j) = (dy(i,j)+dy(i,j+1))/2;
end
end
right_side = zeros(n+1,n+1);
for i = 1:(n+1)^2
right_side(i) = (0.25*(dw_dx(i))^4+0.25*(dw_dy(i))^4+0.5*(dw_dx(i)*dw_dy(i))^2);
end
R = sum(sum(right_side));
R = (1000*10^3*0.3*10^-3*h^2)/(2*(1-0.31^2))*R;
pw_se = R - L;
end
```

### Part F

``` matlab
[pw_se,w] = SE_diff(T,P,n);
Expand Down

0 comments on commit e03b882

Please sign in to comment.