function [Node,Elem] = SUBSCellBeam(D,T,S,DIVI,Hole)

My_coding – CellularBeam_Mesh ©
function [Node,Elem] = SUBSCellBeam(D,T,S,DIVI,Hole)
% DEVELOP ONE SEGMENT...
[N1,E1] = GenerateMesh(D,T,S,DIVI);
N2 = [S-N1(:,1) N1(:,2)];
Nod = [N1;N2];
OvN = find(N1(:,1)>S/2-0.1);
%find overlap nodes (OvN)
RepE = [];
for i = 1:numel(OvN)
RepE = [RepE;find(E1==OvN(i))];
%find OvN in the Elem
end
E2 = E1+size(Nod,1)/2;
E2(RepE) = E1(RepE);
%replace OvN
E = [E1;E2(:,[2 1 4 3 5 8 7 6 9])];
Nod(OvN+size(N1,1),2) = -200;
clear N2 RepE E1 E2
%to separate unused nodes
% DUPLICATE MORE SEGMENTS...
NOD = zeros(size(Nod));
Elem = []; Node = [];
for i = 1:Hole
NOD = [Nod(:,1)+S*(i-1) Nod(:,2)];
Node = cat(1,Node,NOD);
Elem = cat(1,Elem,E+size(Nod,1)*(i-1));
end
clear nod NOD E