**Definition**

 GaussCurvature[f_] :=
 With[{dfu = D[f, u], dfv = D[f, v]},
 Simplify[(Det[{D[dfu, u], dfu, dfv}] Det[{D[dfv, v], dfu, dfv}] -
 Det[{D[f, u, v], dfu, dfv}]^2) / (dfu.dfu dfv.dfv - (dfu.dfv)^2)^2]];

**Sphere**

As @ ubpdqn already remarked

 GaussCurvature[{Cos[u] Sin[v], Sin[u] Sin[v], Cos[v]}]

> 1

**Ellipsoid**

 ellipsoid = {2 Cos[u] Sin[v], Sin[u] Sin[v], Cos[v]};

 cur = GaussCurvature[ellipsoid]

![enter image description here][1]


 plo =
 Plot3D[cur, {u, 0, Pi}, {v, 0, 2 Pi},
 ColorFunction -> "TemperatureMap",
 PlotRange -> Full]

![enter image description here][2]


 range = Last[PlotRange /. AbsoluteOptions[plo, PlotRange]]

> {0.25, 4.}

 ParametricPlot3D[ellipsoid, {u, 0, Pi}, {v, 0, 2 Pi},
 Mesh -> False,
 ColorFunction -> Function[{x, y, z, u, v},
 ColorData["TemperatureMap"][Rescale[cur, range]]],
 ColorFunctionScaling -> False]

![enter image description here][3]


**Torus**

 torus = {(2 + Cos[v]) Cos[u], (2 + Cos[v]) Sin[u], Sin[v]};

 cur = GaussCurvature[torus]

![enter image description here][4]


 plo =
 Plot3D[cur, {u, 0, 2 Pi}, {v, 0, 2 Pi},
 ColorFunction -> "TemperatureMap",
 PlotRange -> Full]

![enter image description here][5]


 range = Last[PlotRange /. AbsoluteOptions[plo, PlotRange]]

> {-1., 0.333333}

 par =
 ParametricPlot3D[
 torus, {u, 0, 2 Pi}, {v, 0, 2 Pi},
 ImageSize -> 400,
 Mesh -> False,
 ColorFunction -> Function[{x, y, z, u, v},
 ColorData["TemperatureMap"][Rescale[cur, range]]],
 ColorFunctionScaling -> False,
 PlotPoints -> 70];

 bar =
 BarLegend[{"TemperatureMap", range}, Automatic];

 Row[{par, bar}]

![enter image description here][6]

**Moebius with gaussian mesh lines**

 f = {Cos[v] (3 + u Cos[v/2]), Sin[v] (3 + u Cos[v/2]), u Sin[v/2]};
 cur = GaussCurvature[f];

 ParametricPlot3D[f, {u, -1.5, 1.5}, {v, 0, 2 Pi},
 Boxed -> False,
 PlotStyle -> Opacity[0.8],
 ImageSize -> 500,
 Mesh -> 12,
 PlotPoints -> 120,
 MeshFunctions -> Function[{x, y, z, u, v}, Rescale[cur, {-0.04, -0.02}]],
 ColorFunction -> Function[{x, y, z, u, v},
 ColorData["DarkRainbow"][Rescale[cur, {-0.04, -0.02}]]],
 ColorFunctionScaling -> False]

![enter image description here][7]


**Comparison with Mean Curvature**

 sincos = {u, v, Sin[u] Cos[v]};
 cur = GaussCurvature[sincos];
 range = Last[PlotRange /. AbsoluteOptions[plo, PlotRange]];

 p1 =
 ParametricPlot3D[sincos, {u, 0, 2 Pi}, {v, 0, 2 Pi},
 ImageSize -> 500,
 Mesh -> 6,
 PlotLabel -> Style["Gaussian Curvature\n", 16, Bold],
 PlotPoints -> 120,
 MeshFunctions -> Function[{x, y, z, u, v}, Rescale[cur, range]],
 ColorFunction -> Function[{x, y, z, u, v},
 ColorData["Rainbow"][Rescale[cur, range]]],
 ColorFunctionScaling -> False];

 MeanCurvature[f_] :=
 With[{du = D[f, u], dv = D[f, v]},
 Simplify[(Det[{D[du, u], du, dv}] * dv.dv -
 2 Det[{D[f, u, v], du, dv}] * du.dv + Det[{D[dv, v], du, dv}] * du.du) /
 (2 Simplify[(du.du*dv.dv - (du.dv)^2)]^(3/2))]];

 cur = MeanCurvature[sincos];
 plo = Plot3D[cur, {u, 0, 2 Pi}, {v, 0, 2 Pi}];
 range = Last[PlotRange /. AbsoluteOptions[plo, PlotRange]];

 p2 =
 ParametricPlot3D[sincos, {u, 0, 2 Pi}, {v, 0, 2 Pi},
 ImageSize -> 500,
 Mesh -> 6,
 PlotLabel -> Style["Mean Curvature\n", 16, Bold],
 PlotPoints -> 120,
 MeshFunctions -> Function[{x, y, z, u, v}, Rescale[cur, range]],
 ColorFunction -> Function[{x, y, z, u, v},
 ColorData["Rainbow"][Rescale[cur, range]]],
 ColorFunctionScaling -> False];

 Row[{p1, p2, BarLegend[{"Rainbow", range}, LegendMarkerSize -> 400]}]

![enter image description here][8]


**A nice novel about Gauss**

![enter image description here][9]


 [1]: https://i.sstatic.net/u670E.jpg
 [2]: https://i.sstatic.net/bQ7WV.jpg
 [3]: https://i.sstatic.net/FbVEj.jpg
 [4]: https://i.sstatic.net/wkdun.jpg
 [5]: https://i.sstatic.net/523xL.jpg
 [6]: https://i.sstatic.net/5WZc4.jpg
 [7]: https://i.sstatic.net/jLMJn.jpg
 [8]: https://i.sstatic.net/IXimL.jpg
 [9]: https://i.sstatic.net/zZ2u7.jpg