Calculate concentrations from absorbance measurements using the Beer-Lambert law – from the classic single absorber (1 component) to several simultaneously present, spectrally overlapping absorbers (via matrix inversion, least squares), including the coefficient of determination R² and a condition number as a warning indicator for poorly distinguishable spectra.
Where possible, measure at more wavelengths than you have components (an overdetermined system) – this makes the solution more robust against measurement noise and gives a meaningful R².
The simple Beer-Lambert law A = ε·c·l assumes only a single absorber is present in the solution. If a sample contains several substances whose absorption spectra overlap, a single absorbance measurement is no longer enough to separate the concentrations.
Since the contributions of all components simply add up at each wavelength (absorbances are additive), the problem can be written as a linear system of equations and solved for the individual concentrations using matrix inversion (or a least-squares fit when there are more measurement points than unknowns).
Beer-Lambert law for mixtures
A(λᵢ) = l · Σⱼ εⱼ(λᵢ) · cⱼ
Molar extinction coefficient (ε)
A substance-specific constant indicating how strongly a component absorbs at a given wavelength. Must be known for every component at every wavelength used (e.g. from a calibration measurement with the pure substances).
Condition number
A measure of how well the components can be distinguished from each other based on their spectra at the chosen wavelengths. A high condition number means the spectra are too similar – small measurement errors are then strongly amplified, and the calculated concentrations can be significantly distorted. Remedy: choose different, more distinguishing wavelengths.
A solution contains dichromate (Cr₂O₇²⁻) and permanganate (MnO₄⁻) at the same time. At 440 nm, ε(Cr₂O₇²⁻)=95, ε(MnO₄⁻)=2350 L·mol⁻¹·cm⁻¹; at 545 nm, ε(Cr₂O₇²⁻)=370, ε(MnO₄⁻)=2260 L·mol⁻¹·cm⁻¹. Measured: A(440 nm)=0.1013 and A(545 nm)=0.1531 at l=1 cm.
Given
A 2×2 system of equations from the two absorbance equations at 440 nm and 545 nm
Solution
Matrix inversion gives c(Cr₂O₇²⁻) = 2.0·10⁻⁴ mol/L and c(MnO₄⁻) = 3.5·10⁻⁵ mol/L.
The most common mistake is choosing wavelengths where the components' spectra are too similar (high condition number) – then the solution reacts extremely sensitively to the smallest measurement errors. A second common mistake: mixing ε values from different sources/solvents, even though ε can be solvent- and possibly pH-dependent.
The best approach
Choose wavelengths at the absorption maxima of the individual components (that's usually where the spectra differ most), measure at more wavelengths than you have components if possible, and check both R² and the condition number after the calculation before using the result.