Aslam,
You should normally post your code using the third button on the formatting bar. Without seeing an example that reproduces your problem, it is harder to answer.
Also, You should never name anything beginning with capital letters because you might interfere with the internal workings of Mathematica.
it appears to me that you are not creating a vector in NDisp but a matrix:
vector = {1,2,3,4}
matrix = Transpose[{{1,2,3,4}}]
which is the same as
matrix = {{1},{2},{3},{4}}
To add elements, normally I use Join (although Insert works)
dv = Join[{0, 0, 0}, nd]
or
dv = Join[ConstantArray[0, 3], nd]
To fix your issue, you can convert your matrix to a vector:
Flatten[matrix]
or you can convert your inserted vector to a matrix
Join[Transpose[{{0, 0, 0}}, nd]
or
Join[Transpose[{ConstantArray[0, 3]}], nd]
You can see if the structure of what you create is consistent by doing a
dv //FullForm
to see the internal representation of your expression.
Regards
Neil