in  since the very beginning [@Martin1980], and the basic physical processes are summarized in Appendix C of @BFM. @VanHoof2004 describe the main improvements made since @BFM.

The grain model in  includes all relevant processes: absorption and scattering of light including stochastic heating effects, the photoelectric effect including Auger emissions in X-ray environments, collisional charging (electrons as well as atomic ions), thermionic emissions, collisional energy exchange between the grains and the gas, and a calculation of the grain drift velocity. We also consider molecular freeze-out on grain surfaces and grain surface reactions. These are discussed in Section \[molchem\].

The local radiation field, including the attenuated incident Spectral Eenergy Distribution (SED) and the spectrum emitted by the cloud (generally  is the most important) are all treated self-consistently, with grains providing the opacity affecting the light, and the light affecting the grain properties following absorption. The code fully treats stochastic heating of grains using a robust and efficient algorithm (which is a comprehensively upgraded version of a code originally written by K. Volk), implementing an improved version of the procedure described in @Guhathakurta1989. This includes an approximate treatment for stochastic heating by particle collisions. Combined with resolved size distributions, this will lead to 