You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

31 lines
849 B

%--------------------------
% @Author: Jingqiao Hu
% @Date: 2020-10-29 15:04:18
% @LastEditTime: 2021-03-13 16:52:53
%--------------------------
% F(x) of every point x is 2*2:
% [duxdx, duxdy
% duydx, duydy];
% For one macro-ele & one gauss point:
% F(x) is sum of 4 nodes
% [ux1, 2, 3, 4 * [dN1dx, dN1dy
% uy1, 2, 3, 4] dN2dx, dN2dy
% dN3dx, dN3dy
% dN4dx, dN4dy]
function F = deform_grad_1scale(edofMat, U, gradN)
eleNum = size(edofMat, 1);
F = cell(4, 1);
for gp = 1:4
B = gradN{gp};
Fm = zeros(4, eleNum);
for ele = 1:eleNum
edof = edofMat(ele, :);
ue = reshape(U(edof), 2, []);
Fe = eye(2) + ue * B'; % NOTE: + 1
Fm(:, ele) = Fe(:);
end
F{gp, 1} = Fm;
end
end