GNUPLOT demo: singulr.dem
# $Id: singulr.dem%v 3.38.2.97 1993/03/16 15:07:24 woo Exp woo $
#
# Demo that plots some surfaces with singularities.
# Author: Carsten Steger
#
# (x,y,x^2-y^2,2xy) is the graph of w=z^2 in 4-space.
# Therefore (x^2-y^2,2xy,x,y) is the graph of w=sqrt(z) in 4-space.
# Coordinates 1, 2, and 3 give the real part of either function,
# whereas coordinates 1, 2, and 4 give the imaginary part.
# The same holds for the cube function w=z^3. The graphs are given by
# (x,y,x^3-3xy^2,3x^2y-y^3) and (x^3-3xy^2,3x^2y-y^3,x,y).
# And so on...
set parametric
set hidden3d
set isosamples 21
set autoscale
set view 60,30
set urange [-3:3]
set vrange [-3:3]
set title "Real part of complex square root function"
splot u**2-v**2,2*u*v,u
pause -1 "Hit return to continue (1)"
set view 60,210
set title "Real part of complex square root function (different view)"
replot
pause -1 "Hit return to continue (2)"
set view 60,120
set urange [-3:3]
set vrange [-3:3]
set title "Imaginary part of complex square root function"
splot u**2-v**2,2*u*v,v
pause -1 "Hit return to continue (3)"
set view 60,300
set title "Imaginary part of complex square root function (different view)"
replot
pause -1 "Hit return to continue (4)"
set view 60,30
set urange [-3:3]
set vrange [-3:3]
set title "Real part of complex cube root function"
splot u**3-3*u*v**2,3*u**2*v-v**3,u
pause -1 "Hit return to continue (5)"
set view 60,210
set title "Real part of complex cube root function (different view)"
replot
pause -1 "Hit return to continue (6)"
set view 60,30
set urange [-3:3]
set vrange [-3:3]
set title "Imaginary part of complex cube root function"
splot u**3-3*u*v**2,3*u**2*v-v**3,v
pause -1 "Hit return to continue (7)"
set view 60,210
set title "Imaginary part of complex cube root function (different view)"
replot
pause -1 "Hit return to continue (8)"
set view 60,30
set isosamples 31
set urange [-1:1]
set vrange [-1:1]
set title "Real part of complex 4th root function"
splot u**4-6*u**2*v**2+v**4,4*u**3*v-4*u*v**3,u
pause -1 "Hit return to continue (9)"
set view 60,210
set title "Real part of complex 4th root function (different view)"
replot
pause -1 "Hit return to continue (10)"
set view 60,120
set urange [-1:1]
set vrange [-1:1]
set title "Imaginary part of complex 4th root function"
splot u**4-6*u**2*v**2+v**4,4*u**3*v-4*u*v**3,v
pause -1 "Hit return to continue (11)"
set view 60,300
set title "Imaginary part of complex 4th root function (different view)"
replot
pause -1 "Hit return to continue (12)"
set isosamples 21
set view 60,20
set urange [-3:3]
set vrange [-3:3]
set title "Enneper's surface"
splot u-u**3/3+u*v**2,v-v**3/3+v*u**2,u**2-v**2
pause -1 "Hit return to continue (13)"
set view 60,110
set title "Enneper's surface (different view)"
replot
pause -1 "Hit return to continue (14)"
set isosamples 31,11
set view 60,30
set title "Moebius strip"
set urange [0:2*pi]
set vrange [-0.25:0.25]
splot (2-v*sin(u/2))*sin(u),(2-v*sin(u/2))*cos(u),v*cos(u/2)
pause -1 "Hit return to continue (15)"
set view 60,210
set title "Moebius strip (view from opposite side)"
replot
pause -1 "Hit return to continue (16)"
set nokey
set xrange [-10:10]
set yrange [-10:10]
set zrange [-3:3]
set urange [0:2*pi]
set vrange [0:2*pi]
set isosamples 39,60
set view 60,120
set title "Klein bottle"
splot (2*sin(u)*cos(v/2)-sin(2*u)*sin(v/2)+8)*cos(v), \
(2*sin(u)*cos(v/2)-sin(2*u)*sin(v/2)+8)*sin(v), \
2*sin(u)*sin(v/2)+sin(2*u)*cos(v/2)
pause -1 "Hit return to continue (17)"
set urange [0:2*pi]
set vrange [0:4*pi/3]
set isosamples 39,40
set view 60,20
set title "Klein bottle with look at the 'inside'"
replot
pause -1 "Hit return to continue (18)"
set data style lines
set xrange [-12:12]
set yrange [-12:12]
set zrange [-1:15]
set nohidden3d
set view 50,15
set title "Klein bottle, glassblowers' version (look-through)"
splot "klein.dat"
pause -1 "Hit return to continue (19)"
set hidden3d
set view 70,305
set title "Klein bottle, glassblowers' version (solid)"
splot "klein.dat"
pause -1 "Hit return to continue (20)"
set autoscale
set title ""
set key
set noparametric
set nohidden3d
set samples 100
set isosamples 10
set view 60,30