function cdr=coldrain(slope, mann, dt, resultsfile)

y1=1.5;
y2=0;
tol1=0.02;
deltat=dt;
b=1;
n=mann;
s=slope;
area=2834;
time=0;
iter=1;
resultsfn=resultsfile;
times=zeros(5000,1);
levels=zeros(5000,1);
vels=zeros(5000,1);
y2=1.5;

while y1>0.001
    
    absdiff=1;
    
    while absdiff>tol1
        y2=y2-(tol1/1000);
        if y2<0
           
            break
        end
        lhs=(1/n)*(y2^(2/3))*s^(1/2);
        rhs=(2*9.81*(y1-y2))^(1/2);
        absdiff=abs(lhs-rhs);
    end

    q=y2*rhs;
    vol=q*b*deltat;
    levdiff=vol/area;
    y1=y1-levdiff;
    y2=y1;
    time=time+deltat;
    timemins=time/60;
    iter=iter+1;
    if iter>5000
        break
    end
 
    times(iter)=time;
    levels(iter)=y1;
    vels(iter)=rhs;
    
end

results=zeros(iter,4);

results(1,1)=s;
results(2,1)=n;
results(3,1)=deltat;
results(1,2)=0.0;
results(1,3)=1.5;

for k=1:iter-1
    results(k,2)=times(k);
end
for k=1:iter-1
    results(k,3)=levels(k);
end
for k=1:iter-1
    results(k,4)=vels(k);
end

fid = fopen(resultsfn, 'wt');
for k=1:iter-1
        fprintf(fid, '%6.4f %7.0f %5.3f %7.3f\n', results(k,1), results(k,2), results(k,3), results(k,4));
end
fclose(fid);

return