-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathavmatrix.asv
More file actions
38 lines (27 loc) · 1.42 KB
/
avmatrix.asv
File metadata and controls
38 lines (27 loc) · 1.42 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
function [AvE, AvS ] = avmatrix(DUs, SS )
global DOMAIN CONNEC
nXElem = DOMAIN(1); % Number of elements in the x-direction
nYElem = DOMAIN(2); % Number of elements in the y-direction
lXElem = DOMAIN(3); % Length of elements in the x-direction
%coordinates=[];
size_coordinates = (nXElem+1)*(nYElem+1);
AreaOmega = zeros(size_coordinates,1);
AvE = zeros(size_coordinates,3);
AvS = zeros(size_coordinates,3);
area = (lXElem)^2;
for iElem = 1:(nYElem*nXElem)
N1 = CONNEC(iElem,2); % Node 1 for current element
N2 = CONNEC(iElem,3); % Node 2 for current element
N3 = CONNEC(iElem,4); % Node 3 for current element
N4 = CONNEC(iElem,5); % Node 4 for current element
NN = [N1 N2 N3 N4];
% for j=1:size(NN,1)
AreaOmega(NN,:) = AreaOmega(NN,:)+area;
%disp(AvE(NN(j,:),:))
%disp(area*[1;1;1]*DUs(j,:))
AvE(NN,:) = AvE(NN,:)+area*[1;1;1;1]*DUs(iElem,:);
AvS(NN,:) = AvS(NN,:)+area*[1;1;1;1]*SS(iElem,:);
%end
end
AvE = AvE./(AreaOmega*[1,1,1]);
AvS = AvS./(AreaOmega*[1,1,1]);