You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
function [w] =membrane_solution3(T,P)
% T = Tension (microNewton/micrometer)% P = Pressure (MPa)
od =ones(8,1);
od(3:3:end) =0;
k =-4*diag(ones(9,1))+diag(ones(9-3,1),3)+diag(ones(9-3,1),-3)+diag(od,1)+diag(od,-1);
y = -(10/4)^2*(P/T)*ones(9,1);
w =k\y;
% Solves for displacement (micrometers)% Output w is a vector% Solution represents a 2D data set w(x,y)
[x,y] =meshgrid(0:10/4:10,0:10/4:10);
z =zeros(size(x));
z(2:end-1,2:end-1) =reshape(w,[33]);
surf(x,y,z)
title('Membrane Displacement')
zlabel('Displacement (micrometer)')
% Membrane displacement is shown on chartend
Part B
% Part B Script
[w] =membrane_solution3(0.006,0.001);
Part C
function [w] =membrane_solution(T,P,n)
% T = Tension (microNewton/micrometer)% P = Pressure (MPa)% n = # of interior nodes
od =ones(n^2-1,1);
od(n:n:end) =0;
k =-4*diag(ones(n^2,1))+diag(ones((n^2)-n,1),n)+diag(ones((n^2)-n,1),-n)+diag(od,1)+diag(od,-1);
y = -(10/(n+1))^2*(P/T)*ones(n^2,1);
w =k\y;
% Solves for displacement (micrometers)% Output w is a vector% Solution represents a 2D data set w(x,y)
[x,y] =meshgrid(0:10/(n+1):10,0:10/(n+1):10);
z =zeros(size(x));
z(2:end-1,2:end-1) =reshape(w,[nn]);
surf(x,y,z)
title('Membrane Displacement')
zlabel('Displacement (micrometer)')
% Membrane displacement is shown on chartend
Part D
% Part D Script
[w] =membrane_solution(0.006,0.001,10)
Part E
function [pw_se,w]=SE_diff(T,P,n)
E =1; %TPa Units may need to be changed
v =.31; %Poissons ratio
t =.3; %nm
h =10/(n+1); %nm
w =membrane_solution(T,P,n);
z =zeros(n+2);
z(2:end-1,2:end-1) =reshape(w,[nn]);
num =n+1;
wbar =zeros(num);
for i =1:numfor j =1:numwbar(i,j) =mean([z(i,j),z(i+1,j),z(i,j+1),z(i+1,j+1)]);
endend
pw =sum(sum(wbar.*h^2.*P));
dwdx =zeros(num);
dwdy =zeros(num);
for i =1:numfor j =1:numdwdx(i,j) =mean([z(i+1,j)-z(i,j),z(i+1,j+1)-z(i,j+1)]);
dwdy(i,j) =mean([z(i,j+1)-z(i,j),z(i+1,j+1)-z(i+1,j)]);
endend
se =E*t*h^2/(2*(1-v^2))*sum(sum(0.25.*dwdx.^4+.25.*dwdy.^4+0.5.*(dwdx.*dwdy).^2));
pw_se =pw-se;