There are a few problems in your code.
Firstly, using a . before an operation indicates element wise operation. Secondly, h is an array and you are using it in some places like its not.
Lastly, .5*k*t(1+dt) in h(1+dt) = (sqrt(Initial_Height)-.5*k.*t(1+dt)).^2 is greater than sqrt(Initial_Height), since you are raising the whole thing to the power 2, your h value never reduces.
I hope it was helpful.