SD14: Visualisation 3
system:sage

{{{id=0|
x, y, z = var("x y z")
# Whitney's umbrella
f = x^2*y - z^2
whitney = implicit_plot3d(f, (-2, 2), (-2, 2), (-2, 2), plot_points=100)
whitney.show()
///
}}}

{{{id=1|
# A_4 singularity
f = x*y-z^5
a4_sing = implicit_plot3d(f, (-1, 1), (-1, 1), (-1, 1), plot_points=100)
a4_sing.show()
///
}}}

{{{id=2|
# Danielewski surface 1
f = x*z-y^2+1
one = implicit_plot3d(f, (-4, 4), (-4, 4), (-4, 4), plot_points=100)
one.show()
///
}}}

{{{id=3|
# Danielewski surface 2
f = x^2*z-y^2+1
two = implicit_plot3d(f, (-4, 4), (-4, 4), (-4, 4), plot_points=100)
two.show()
///
}}}

{{{id=4|
# a surprise surface
f = (2*x^2+y^2+z^2-1)^3 - 1/10*x^2*z^3 - y^2*z^3
surprise = implicit_plot3d(f, (-2, 2), (-2, 2), (-2, 2), plot_points=100, color='red', smooth=False)
surprise.show()
///
}}}

{{{id=5|

///
}}}