function [uzly1,prvky1,I1] = refine1d(uzly,prvky)

n = length(uzly);

uzly1 = [ uzly , (uzly(prvky(1,:))+uzly(prvky(2,:)))/2 ];
prvky1 = zeros(2,2*(n-1));

I1 = [speye(n);sparse(n-1,n)];
for i=1:n-1
    idx1 = prvky(1,i);
    idx2 = prvky(2,i);
    prvky1(:,2*i-1:2*i) = [ [idx1;n+i] [n+i;idx2] ];
    I1(n+i,[idx1,idx2]) = 1/2;
end
