predeclared-variables

```general
Constants      hoc_ac_        hoc_cross_y_
float_epsilon  hoc_cross_x_   hoc_obj_
```

float_epsilon

```predeclared-variables
```

SYNTAX

`float_epsilon = 1e-11`

DESCRIPTION

The default value is 1e-11

Allows somewhat safer logical comparisons and integer truncation for floating point numbers. Most comparisons are treated as true if they are within float_epsilon of being true. eg.

```for (i = 0; i < 1; i += .1) {
print i, int(10*i)
}
float_epsilon = 0
// two bugs due to roundoff
for (i = 0; i < 1; i += .1) {
print i, int(10*i)
}
```

BUGS

I certainly haven't gotten every floating comparison in the program to use float_epsilon but I have most of them including all interpreter logical operations, int, array indices, and Vector logic methods.

hoc_ac_

```predeclared-variables
```
A variable used by the graphical interface to communicate with the interpreter. It is very volatile. It sometimes holds a value on a function call. If this value is needed by the user it should be copied to another variable prior to any other function call.

hoc_obj_

```predeclared-variables
```

SYNTAX

`hoc_obj_[0]`
`hoc_obj_[1]`

DESCRIPTION

When a line on a Graph is picked with the PickVector tool two new Vector 's are created containing the y and x coordinates of the line. The y vector is referenced by hoc_obj_[0] and the x vector is referenced by hoc_obj_[1].

hoc_cross_x_

```predeclared-variables
```

SYNTAX

`hoc_cross_x_`

DESCRIPTION

X coordinate value of the last Crosshair manipulation.

crosshair

hoc_cross_y_

```predeclared-variables
```

DESCRIPTION

Y coordinate value of the last Crosshair manipulation.

crosshair

Constants

```predeclared-variables
```
The following mathematical and physical constants are built-in:
```        "PI",   3.14159265358979323846,
"E",    2.71828182845904523536,
"GAMMA",0.57721566490153286060, /* Euler */