These graphs were drawn by an open source 3D program called Blender, the meshes were generated by a Blender python script as described on this page. The scripting mechanism for blender is described here.
<BAG version="0.0.1">
<Reference>Cartesian</Reference>
<Coords min="-5.0" max="5.0" zero="-5.0" line="0.00999999977648" />
<CamPos x="10.0" y="3.0" z="3.0" />
<CamDir x="-2.0" y="3.0" z="-1.29999995232" />
<Label>
multiply
</Label>
<ParU Min="-2.0" Max="2.0">
16
</ParU>
<ParV Min="-2.0" Max="2.0">
24
</ParV>
<Curve>
0
</Curve>
<Surface Wireframe="1" Smooth="0" alpha="0.9" emit="0.2" glow="0.2">
<matCol r="0.5" g="0.5" b="0.5" />
<fn1>
u
</fn1>
<fn2>
v
</fn2>
<fn3>
sqrt(u*u+v*v)-5
</fn3>
</Surface>
<Surface Wireframe="0" Smooth="0" alpha="0.9" emit="0.2" glow="0.2">
<matCol r="0.40000000596" g="0.40000000596" b="0.40000000596" />
<fn1>
u
</fn1>
<fn2>
v
</fn2>
<fn3>
sqrt(u*u+v*v)-5
</fn3>
</Surface>
</BAG>
<BAG version="0.0.1">
<Reference>Cartesian</Reference>
<Coords min="-5.0" max="5.0" zero="-5.0" line="0.00999999977648" />
<Offset x="0.0" y="0.0" z="-5.0" />
<CamPos x="10.0" y="3.0" z="3.0" />
<CamDir x="-2.0" y="3.0" z="-1.29999995232" />
<Label>
multiply
</Label>
<complex in="0" out="1" />
<ParU Min="-2.0" Max="2.0">
16
</ParU>
<ParV Min="-2.0" Max="2.0">
24
</ParV>
<Surface m1="4" m2="5" m3="6" m4="7">
<fn1>
u
</fn1>
<fn2>
v
</fn2>
<fn3>
sqrt(u*u-v*v)
</fn3>
</Surface>
<Material Wireframe="0" Smooth="1" alpha="0.8" emit="0.2" glow="0.2">
<matCol r="0.5" g="0.0" b="0.0" />
</Material>
<Material Wireframe="1" Smooth="0" alpha="0.9" emit="0.2" glow="0.2">
<matCol r="0.0" g="0.0" b="0.0" />
</Material>
<Material Wireframe="0" Smooth="1" alpha="0.8" emit="0.0" glow="0.0">
<matCol r="0.0" g="0.5" b="0.0" />
</Material>
<Material Wireframe="1" Smooth="0" alpha="0.9" emit="0.4" glow="0.3">
<matCol r="0.0" g="0.0" b="0.0" />
</Material>
</BAG>
<BAG version="0.0.1">
<Reference>Cartesian</Reference>
<Coords min="-5.0" max="5.0" zero="-5.0" line="0.00999999977648" />
<Offset x="0.0" y="0.0" z="-5.0" />
<CamPos x="5.0" y="5.0" z="3.0" />
<CamDir x="-2.3900001049" y="2.96000003815" z="-1.11000001431" />
<Label>
multiply
</Label>
<complex in="0" out="1" />
<ParU Min="-2.0" Max="2.0">
16
</ParU>
<ParV Min="-2.0" Max="2.0">
24
</ParV>
<Surface m1="4" m2="5" m3="6" m4="7">
<fn1>
(u+v)/2
</fn1>
<fn2>
(u-v)/2
</fn2>
<fn3>
sqrt(u*u-v*v)
</fn3>
</Surface>
<Material Wireframe="0" Smooth="1" alpha="0.899999976158" emit="0.20000000298" glow="0.0">
<matCol r="0.5" g="0.0" b="0.0" />
</Material>
<Material Wireframe="1" Smooth="0" alpha="0.9" emit="0.2" glow="0.2">
<matCol r="0.0" g="0.0" b="0.0" />
</Material>
<Material Wireframe="0" Smooth="1" alpha="0.899999976158" emit="0.20000000298" glow="0.0">
<matCol r="0.0" g="0.5" b="0.0" />
</Material>
<Material Wireframe="1" Smooth="0" alpha="0.9" emit="0.4" glow="0.3">
<matCol r="0.0" g="0.0" b="0.0" />
</Material>
</BAG>