function [t,thk,Off,tria3,quad4]=offsetcalc(tria3,quad4,index_tria,index_quad,shell,shell_index)



% Espressione degli elementi aventi nodi in comune con elementi offsetati 
% come elementi unici aventi
% spessore uguale alla somma degli spessori dei singoli elementi

in_tri=length(index_tria);
in_quad=length(index_quad);

thk=zeros(in_tri+in_quad,2);

Elimina=[];
fnd=0;
c=1;
Off=zeros(length([index_tria;index_quad]),1);
for i=1:in_tri
    thk(index_tria(i),1)=shell(tria3(index_tria(i),2),3);
    thk(index_tria(i),2)=0;
    Off(index_tria(i),1)=tria3(index_tria(i),7);
if Off(index_tria(i),1)~=0
    fnd=1;
    fnd2=0;
    j=0;
    while fnd2==0 && j<in_tri
      j=j+1;
        if ismember(tria3(index_tria(j),3:5),tria3(index_tria(i),3:5))==[1 1 1] & tria3(index_tria(j),7)==0
            Elimina(c,1)=index_tria(i);
            thk(index_tria(j),1)=thk(index_tria(i))+shell(tria3(index_tria(j),2),3);
            thk(index_tria(j),2)=shell(tria3(index_tria(j),2),3);
            Off(index_tria(j),1)=tria3(index_tria(i),7);
            c=c+1;
            fnd2=1;
        end
    end
end
end

if fnd==1
tria3(Elimina,:)=[];
thk(Elimina,:)=[];
Off(Elimina)=[];
end




% Espressione degli elementi aventi nodi in comune con elementi offsetati 
% come elementi unici aventi
% spessore uguale alla somma degli spessori dei singoli elementi

Elimina=[];
fnd=0;
c=1;
for i=1:in_quad
    thk(index_quad(i),1)=shell(shell_index(quad4(index_quad(i),2)),3);
    thk(index_quad(i),2)=0;
    Off(index_quad(i),1)=quad4(index_quad(i),8);
if Off(index_quad(i),1)~=0
   fnd=1;
   fnd2=0;
   j=0;
    while fnd2==0 && j<in_quad
       j=j+1;
        if ismember(quad4(index_quad(j),3:6),quad4(index_quad(i),3:6))==[1 1 1 1] & quad4(index_quad(j),8)==0
            Elimina(c,1)=index_quad(i);
            thk(index_quad(j),1)=thk(index_quad(i))+shell(shell_index(quad4(index_quad(j),2)),3);
            thk(index_quad(j),2)=shell(shell_index(quad4(index_quad(j),2)),3);
            Off(index_quad(j),1)=quad4(index_quad(i),8);
            c=c+1;
            fnd2=1;
        end

    end
end
end

if fnd==1
quad4(Elimina,:)=[];
thk(Elimina,:)=[];
Off(Elimina)=[];
end

t=thk(:,1)./2;

end
