// Estimateurs

function consist(p,m) // on illustre que le quantile empirique est fortement consistant
    k=cdfnor('X',0,1,1-p,p) // quantile d'ordre 1-p d'une loi normale
    t=grand(1,m,'nor',0,1)
    res=zeros(1,m)
    for i=1:m
        tt=gsort(t(1:i))
        res(i)=tt(floor(i*p)+1) // definition du quantile empirique
    end
    plot2d(1:m,res)
    plot2d(1:m, k*ones(1,m))
    title('Convergence presque sur du quantile empirique')
    xlabel('Taille de l échantillon')
    ylabel('Valeur du quantile empirique')
endfunction

function y=f(x)
    p=0.2
    k=cdfnor('X',0,1,1-p,p)
    sp=(p*(1-p))/((sqrt(1/(2*%pi))*exp(-p^2/2)))^2 
    y=1/sqrt(2*%pi*sp)*exp(-x^2/2*sp)
endfunction

function normal(p,m,n,c) // on illustre le fait que le quantile empirique est asymptotiquement normal
    k=cdfnor('X',0,1,1-p,p)
    sp=(p*(1-p))/((sqrt(1/(2*%pi))*exp(-p^2/2)))^2 // variance de la loi normale, la loi limite pour la normalité 
    res=zeros(m,n)
    for j=1:m
        t=grand(1,n,'nor',0,1) // on effectue un nouveau tirage pour chaque ligne de res pour tracer l'histogramme
        for i=1:n
            tt=gsort(t(1:i))
            res(j,i)=sqrt(n)*(tt(floor(i*p)+1)-k)
        end
    end
    u=[-10:0.1:10]
    histplot(c,res)
    plot2d(u,f(u))
    title('Convergence en loi du quantile empirique')
    xlabel('Taille de l échantillon')
endfunction
