It would seem that some symbolic evaluation is taking place or at least being attempted. Not good when one is doing SVD and relying on the min singular value. You can avoid this by restricting the function [Gamma]t so that it only is defined when the second argument is explicitly a number,
\[Gamma]t[Kpt_, kpc_?NumberQ] := ...
is the way to do this (and don't forget to first clear the current definition).