Overview

Gauss is a program to help students of algebra visualise lines and surfaces defined by algebraic expressions.

It displays graphs in a variety of forms - z defined as functions of x and y, or in polar co-ordinates as functions of r and theta. It will also show lines defiend by a function of a single parameter, or surfaces defined by two parameters. It supports a wide range of standard 'bulit-in' functions, and it is possible to define an unlimited number of other functions. These functions can have an unlimited number of arguments. Named values - called variables - can be set up, and the value of them altered. Values for e and pi are pre-defined.

Gauss is a Windows application which uses OpenGL to provide fast interactive 3d graphics.

Notation

The notation is similar to conventional mathematics except that -

Many more examples are given below

Functions

Built-in functions

The following are available:

Group

Notation

Meaning

Trigonometric

sin

sine (all angle measure is in radians )

 

cos

cosine

 

tan

tangent

 

acos

inverse cosine ( 0 to pi )

 

asin

inverse sine ( -pi/2 to +pi/2)

 

atan

inverse tan ( -pi/2 to pi/2 )

 

sec

sec or 1/cos

 

cosec

cosec or 1/sin

 

cot

cot or 1 / tan

Hyperbolic

cosh

cosh

 

sinh

sinh

 

tanh

tanh

Exponential

log

natural logarithm ( base e )

 

 

note exponentiation is ^ and e is predefined - so

 

 

the exponential function is e ^ x

Numeric

mod

absolute value, or |x|

 

!

factorial

 

ceil

ceiling : ceil(x) = smallest integer greater than x

 

floor

floor : floor(x) = largest integer less than x

 

sqrt

square root (positive root only)

Calculus

diff

differential coefficient - note there are 2 arguments - for examples

 

 

 

 

 

diffn

nth order differential coefficient - 3 arguments - for example

 

 

 

int

The proper integral of the first argument, with respect to the second, from the third -- example

   

Series

sum

Sum of series. The four parameters are the index to sum over, the first and last value sof it, and an expression for each term in the series. For example:

 

 

 

prod

Product of terms. Parameters as for sum. For example Wallis' product

 

 

Other

gamma

The gamma function

z = f(x,y)

A surface can be defined by making z depend on values of x and y. Select this option from the menu. For example:

This plots the paraboloid defined by z = x^2+y^2 (x squared plus y squared). The ranges for x and y can be chosen, and this will determine the grid axes as well as the calculated values. Clicking the Plot button will display the surface. The focus will shift to the main window so that the view can be adjusted. Click back in the dialog box to alter values and display again.

z=f(r,theta)

This menu option will display a surface defined in polar co-ordinates, such as the helicoid:

The range of r can be set. Usually theta would range from 0 to 2 pi radians, but the limits can be adjusted otherwise as in this example (all angle measure in Gauss is in radians : 2 pi radians = 360 degrees ).

Parametric lines

A way of defining a (usually curving ) line in 3d space is to define x,y and z as functions of some 'parameter'.

For example, suppose we define

x = 5 cos (3a)
y = 5 sin (3a)
z = a

Then as a varies, a set of (x,y,z) points are determined. This shows Gauss drawing this:


If the slider is altered, a white dot is drawn so you can see which part of the curve corresponds to which value of the parameter.

Parametric surfaces

If we use two parameters, then as they vary a surface will be swept out. For example:

This example is called the Enneper surface.

 

If the two sliders are used, values of the two parameters can be set, and lines will be drawn in the surface corresponding to those values. This becomes clearer if you go to Settings and swich off both Mesh and Surface - you then see the lines alone, as in this example:

 

 

 

 

 

 

 

 

 

 

Settings

The settings dialog can be used to control the number of 'steps' along an edge. For example here is part of a ring torus:

This is drawn with just 20 steps on each edge, and it is easy to see the straight line sections. Compare this with teh same shape drawn with 4 times as many steps:

The actual meaning of 'first edge' and 'second edge' depends on the plot type. For example, for z=f(x,y), these are the divisions through the x and y values. For a plot in polar co-ordinates, they are divisions through r and theta. For parametric plots (as here) they are the steps through the parameter values.

We can also select to view the option to view the 'mesh' drawn throughthese steps - such as

It is usually clearest to display a mesh with a smaller number of steps - otherwise the lines are too close together to see clearly.

View controls

It is best to think of this as being viewed by a 'camera' looking at the shape. When we do rotations, it might appear that we are rotating the shape. In fact we are moving the camera. Initially the camera is looking at a point very close to the origin (0,0,0). Camera position and look at point is shown on the screen.

Camera movement is usually controlled by the keyboard:

 

Keys

Effect

a and d

Rotate 'horizontally'. This means at right angles both to the 'up' direction for the camera, and the direction the camera is facing

e and x

Rotate 'over and under'

w and s

Move in and out

r

Reset camera position

t and y

Move the 'look at point' back and forth on the x axis

f and g

Move on the y axis

c and v

Move on the z axis

q and z

Move look at point towards and away from the camera

There is also mouse control. The mouse wheel does the same as keys w and s, effectively a zoom in and out. If the left button is held down, teh mouse will move the look at point.

Memo

The Memo menu option enables you to enter or edit notes about the current file. If expressions are set up, then the first time this is used, some details are automatically put in. Remember to alter these if you change them. The memo field is saved with the file, and is displayed when it is loaded.

Variables

In addition to parameters used to define lines and surfaes, expressions can include other 'variables'. These will initially have value zero, but menu options Variables..Setup and Variables..Vary enable them to be altered and the effect seen.

For example we can define a torus using parameters u and v as follows:

x = ( c + a cos v ) cos u
y = ( c + a cos v ) sin u
z = a sin v

a is the radius of the 'tube', and c is the radius of the 'ring'. So if a < c we get a conventional ring torus:

However if a=c, the size of the 'hole' shrinks to zero and we get a horn torus:

Here the range of v has been altered so we can 'see inside'.

Again if a>c, it 'goes inside' itself and we get a spindle torus: