As described by quantum mechanics, energy is absorbed and emitted from atoms in the form of photons with discrete energy values. When an atom absorbs or emits a photon, electrons transition up or down energy levels. The energy associated with these transition determines the frequency, i.e. color, of the absorbed or emitted light. Using Schrodinger’s equation to describe the atomic structure, and Maxwell’s equations to describe the light, a system of equations that fully describes the behavior of the light matter interaction can be derived. This system is known as the Maxwell-Bloch equations. In this talk, an algorithm for approximating solutions to the Maxwell-Bloch equations is discussed. Algorithms for an atom with 2 and 3 energy levels are discussed, as well as an algorithm for the more general M level problem. We also use these algorithms to probe the behavior of soliton solutions for the 2 and 3 energy level systems.