function W = randomize_copy(X1,X2,Pd,teta,t)

N=10;                         % Number of the Antennas
% M=120;                        % Number of the directions
KK=1;
Pt=trace(X1);
T = length(teta);
shift=0;


[u1,v1]=eig(X1);
% [u2,v2]=eig(X2);
root_mat=u1*v1.^(.5);
% root_mat1=u2*v2.^(.5);
for shomara=1:1000
    disp(shomara)
%     Candidatewa=[];
    for lll=1:KK
        ran_vec=randn(N,1)+j*randn(N,1);
        ran_vec=ran_vec./abs(ran_vec);
        Candidatetemp=root_mat*ran_vec;
%       Candidatew=[Candidatew Candidatetemp];
    end
    for lll=1:N/2
        aaa=[Candidatetemp(lll,1) Candidatetemp(N-(lll-1),1) Candidatetemp(lll,2) Candidatetemp(N-(lll-1),2)];
        Candidatetemp(lll)= Candidatetemp(lll,1)/norm(aaa,1)*sqrt(Pt/10);
        Candidatetemp(N-(lll-1))= Candidatetemp(N-(lll-1),1)/norm(aaa,2)*sqrt(Pt/10);
        Candidatetemp(lll,2)= Candidatetemp(lll,2)/norm(aaa,3)*sqrt(Pt/10);
        Candidatetemp(N-(lll-1),2)= Candidatetemp(N-(lll-1),2)/norm(aaa,4)*sqrt(Pt/10);
    end
    
%     for lll=1:KK
%         ran_vec=randn(N,1)+j*randn(N,1);
%         ran_vec=ran_vec./abs(ran_vec);
%         Candidatetempa=root_mat1*ran_vec;
% %       Candidatew=[Candidatew Candidatetemp];
%     end
%     for llla=1:N/2
%         aaaa=[Candidatetempa(lll) Candidatetempa(N-(lll-1))];
%         Candidatetempa(lll)= Candidatetempa(lll,:)/norm(aaaa)*sqrt(Pt/10);
%         Candidatetempa(N-(lll-1))= Candidatetempa(N-(lll-1))/norm(aaaa)*sqrt(Pt/10);
%     end
    
    
    for ind1=1:T
%           temp(ind1)=abs(trace(matA(teta(ind1),N)*Candidatetemp*Candidatetemp') + trace(matA(teta(ind1),N)*Candidatetempa*Candidatetempa') - Pd(ind1));
          temp(ind1)=abs(trace(matA(teta(ind1),N)*Candidatetemp*Candidatetemp') - Pd(ind1));
    end
    Val1=max(temp);
    if (shomara ==1)
        Val=Val1;
        Candidatefinal=Candidatetemp;
%         Candidatefinala=Candidatetempa;
    else
        if ( abs(Val)- abs(Val1) > 0  )
            Val=Val1;
            Candidatefinal=Candidatetemp;
%             Candidatefinala=Candidatetempa;
        end
    end
end
W =[Candidatefinal(:,1) Candidatefinal(:,2) flipud(conj(Candidatefinal(:,1))) flipud(conj(Candidatefinal(:,2)))]/sqrt(2)
end