Sometimes surface plots (Plot3D) in Mathematica can show discontinuous patches.

Use exclusions none (Make sure the exclusions are unphysical)

Plot3D[Re[Bands[J1val, J2val, kxval, kyval]], {kxval, kxv – delta,

kxv + delta}, {kyval, kyv – delta, kyv + delta}, **Exclusions -> None**]

courtesy and more details:

https://mathematica.stackexchange.com/questions/98813/can-anyone-explain-this-weird-plot3d-error