ZELIG (Urban, 1990) is an individual tree simulator that simulates the establishment, annual diameter growth, and mortality of each tree on an array of model plots. Model states are recorded in a tally of all trees on a plot, with each tree labeled by species, size (diameter), height to base of live crowns, and vigor (based on recent growth history). The competitive environment of the plot is defined by the height, leaf area, and woody biomass of each individual tree determined by allometric relationships with diameter. Plot size is defined by the primary zone of influence of a single canopy-dominant tree. The plot is considered homogeneous horizontally, but vertical heterogeneity (canopy height and height to base of crown) is simulated in some detail. Adjacent cells interact through light interception at low sun angles. Establishment and annual diameter growth is first computed under optimal (nonlimiting) conditions, and then reduced based on the constraints of available light, soil moisture, soil fertility, and temperature. Climate effects are summed across simulated months. Seedling establishment, mortality, and regeneration are computed stochastically, while the growth stage is largely deterministic. Simulations can start or stop at any point within the life cycle of a forest.