The most obvious way to solve a linear equation is to apply the Gauss elimination method [PFTV88]. Unfortunately it fails to solve the radiosity equation for more complex models effectively, since it has complexity, and also it accumulates the round of errors of digital computers and magnifies these errors to the extent that the matrix is close to singular.
Fortunately another technique, called iteration, can overcome both problems. Examining the radiosity equation,
we will see that it gives the equality of the energy which has to be radiated due to emission and reflection (right side) and the energy really emitted (left side). Suppose that only estimates are available for radiosities, not exact values. These estimates can be regarded as right side values, thus having substituted them into the radiosity equation, better estimates can be expected on the left sides. If these estimates were exact -- that is they satisfied the radiosity equation --, then the iteration would not alter the radiosity values. Thus, if this iteration converges, its limit will be the solution of the original radiosity equation.
In order to examine the method formally, the matrix version of the radiosity equation is used to describe a single step of the iteration:
A similar equation holds for the previous iteration too. Subtracting the two equations, and applying the same consideration recursively, we get:
The iteration converges if
for some matrix norm. Let us use the norm defined as the maximum of absolute row sums
and a vector norm that is compatible with it:
Denoting by q, we have:
according to the properties of matrix norms. Since represents the portion of the radiated energy of surface i, which actually reaches surface j, is that portion which is radiated towards any other surface. This obviously cannot exceed 1, and for physically correct models, diffuse reflectance , giving a norm that is definitely less than 1. Consequently q<1, which provides the convergence with, at least, the speed of a geometric series.
The complexity of the iteration solution depends on the operations needed for a single step and the number of iterations providing convergence. A single step of the iteration requires the multiplication of an N dimensional vector and an dimensional matrix, which requires operations.
Concerning the number of necessary steps, we concluded that the speed of the convergence is at least geometric by a factor . The infinite norm of is close to being independent of the number of surface elements, since as the number of surface elements increases, the value of form factors decreases, sustaining a constant sum of rows, representing that portion of the energy radiated by surface i, which is gathered by other surfaces, multiplied by the diffuse coefficient of surface i. Consequently, the number of necessary iterations is independent of the number of surface elements, making the iteration solution an process.