F[x_, y_] := Sin[x + y^2]; Manipulate[ f = F[d, e]; g = Cos[d + e^2]; h = 2 e*Cos[d + e^2]; a = {Arrowheads[Large], Arrow[{{d, e, f}, {g, e, f}}]}; b = {Arrowheads[Large], Arrow[{{d, e, f}, {d, h, f}}]}; S1=Plot3D[Sin[x + y^2], {x,-2, 2}, {y, -2, 2},Axes->False,Boxed->False,ImageSize->200]; S2=Graphics3D[{Red, a},Boxed->False,ImageSize->100]; S3=Graphics3D[{Blue, b},Boxed->False,ImageSize->100]; Row[{S1,S2,S3},ImageSize->420],{d, -2, 2}, {e, -2, 2}] F[x_,y_] := Sin[x + y^2]; l[u_,v_]:=Sqrt[u^2+v^2+1]; nablax[x_,y_]:=-D[F[xx,yy],xx] /. xx->x /. yy->y; nablay[x_,y_]:=-D[F[xx,yy],yy] /. xx->x /. yy->y; S1=Plot3D[F[x,y], {x,-2, 2}, {y, -2, 2},ViewPoint -> {-2.5,-1,2},ViewVertical -> {0,0,1}, Axes->False,Boxed->False,ImageSize->600,PlotRange->{-1,2}]; S2[d_,e_,u_,v_]:={Red,Thickness[0.01],Arrow[{{d, e, F[d,e]},{d+u/l[u,v],e+v/l[u,v],F[d,e]+1/l[u,v]}}]}; Manipulate[u=nablax[d,e];v=nablay[d,e];Show[{S1,Graphics3D[S2[d,e,u,v]]}],{d,-1,1}, {e,-1,1}]