Note: This page is no longer being maintained and is kept for archival purposes only.
For current information see our main page.
PlantStudio Kurtz-Fernhout Software
Developers of custom software and educational simulations.
Home ... News ... Products ... Download ... Order ... Support ... Consulting ... Company
Product area
Help System
Quick Tour
How it works

Numerical exceptions

PlantStudio grows and draws plants by grinding a lot of numbers. In the system PlantStudio was programmed in, numbers can only be represented by a limited amount of computer memory, which means they have to stay within a certain numerical range. The range is huge (gif/plantstudio00090001.gif 1.5 x 10-45 to gif/plantstudio00090001.gif 3.4 x 10+38 for most parameters), but numbers can still fall out of it. Out-of-range numbers can come from two sources: extreme input values and bugs. Parameter bounds minimize extreme input values, and testing minimizes bugs. But especially with the random variation introduced by breeding, numerical range errors (called numerical exceptions) can occur.

You don't have to pay any attention to numerical exceptions. In fact, the default option is for the numerical exceptions window never to appear. But if you are having problems with a plant (it doesn't draw, it is gigantic, it takes forever to draw), choose Numerical Exceptions from the Windows menu and see if there is anything in the list.

If numerical exceptions appear when you are using the breeder,
Try deleting some breeder plants, then regrow all the breeder plants (by changing the % max age at the bottom of the breeder) and see if the problem goes away. If you regrow all the plants and get no new exceptions, the plants you deleted were probably causing the problem. Any plants that cause numerical exceptions probably look pretty bizarre anyway, but if you want to keep a "bad" plant, try looking at its parameters to find one at the edge of its range. Change the parameter and see if it fixes the problem.

If numerical exceptions appear when you change a parameter,
It means our bound for that parameter is a little too loose, considering the constellation of parameter values you have right now. Change the value back and see if the problem goes away. In the future try to avoid that extreme, or change the bound permanently (see
Changing global parameter bounds and defaults.

If the problem doesn't go away or if it happens often
It could be a bug in the program. On the numerical exceptions window, click Save as and save the exceptions list to a text file. We would appreciate it if you could send us the contents of the file (in an email message) and your description of what happened.

Home ... News ... Products ... Download ... Order ... Support ... Consulting ... Company
Updated: March 10, 1999. Questions/comments on site to
Copyright © 1998, 1999 Paul D. Fernhout & Cynthia F. Kurtz.