GC Simulatorthe free, open-source GC simulator

GC Simulator

Loading the compound library…

03 Chromatogram

ChromatogramSelected compoundOven temperature (°C)

Select a compound below to highlight its peak. Scroll to zoom, drag to pan, or double-click to fit. Click a resolution value to compare neighboring peaks.

Calculated column properties

04 Compounds & results

DB-5MS UI · 102-compound library
CompoundConc.
µM
tR
min
σ
s
k′ at elutionOn column
pmol
RsRemove

Calculation model

A chromatogram is a graph of detector signal against time. Each peak represents a compound leaving the column. The simulator predicts when each compound arrives, how wide its peak will be, and how much signal it produces. It then adds the individual peaks together.

In gas chromatography (GC), the carrier gas carries the sample through a narrow, hollow column. A thin coating on the inside wall—the stationary phase—temporarily holds back each compound. Compounds that spend more time in this coating travel more slowly. A compound is said to elute when it leaves the column.

The sections below follow the calculation from gas flow to the finished chromatogram. Each starts with an explanation you can follow without working through the equations. In the equations, t means time since injection, Δ means a small change, √ means square root, and exp is the exponential function. Use consistent units unless particular units are given.

Carrier gas, pressure, and travel time

Pressure pushes the carrier gas through the column. As the pressure falls toward the outlet, the gas expands and moves faster. The simulator accounts for this change in speed, as well as the effects of gas type, temperature, column length, and column diameter.

The pressure at a position along the column is calculated from the inlet and outlet pressures:

p(x) = √[pin2(1 − x/L) + pout2(x/L)]

Here x is distance from the inlet, L is column length, and pin and pout are absolute pressures. Absolute pressure is measured relative to a vacuum. The inlet control uses gauge pressure, measured above atmospheric pressure; the simulator adds 101.325 kPa before using it in these equations.

The local gas speed, u(x), follows the compressible-flow relationship for a round tube:

u(x) = (pin2 − pout2)dg2 / [64η L p(x)]

dg is the open gas-channel diameter: the column’s inner diameter minus twice the stationary-phase film thickness. η (eta) is gas viscosity, a measure of resistance to flow. It is estimated from the selected gas and temperature. With lengths in meters, pressure in pascals, and viscosity in Pa·s, the speed is in meters per second.

Hold-up time, t0, is how long an unretained compound takes to travel through the column at a fixed temperature. Adding the travel times through all the small sections of the column gives:

t0 = ∫0L dx/u(x)
uaverage = L/t0

The integral sign, ∫, means to add up these small contributions. In constant-flow mode, inlet pressure adjusts as the oven temperature changes. In constant-pressure mode, flow changes instead. The flow control uses volume normalized to 25 °C and one atmosphere, so its value is comparable across different column temperatures and pressures.

How temperature and the stationary phase affect retention

The retention factor, k′, describes how strongly a compound is held by the stationary phase. A larger value means slower travel. At a fixed temperature, k′ = 2 means a compound takes three times as long as an unretained compound to pass through the column. Raising the oven temperature generally reduces retention, allowing compounds to move faster.

The simulator uses measured retention data for each library compound on DB-5MS UI. It draws a smooth curve through the measured base-10 logarithms of retention factor. Within each interval, this curve has the form:

log10(k′reference) = a + bT + cT2 + dT3

T is oven temperature in °C here. The coefficients a, b, c, and d describe a fitted curve segment; they differ between compounds and temperature intervals. When only two measurements are available, the simulator uses a straight line instead. Raising 10 to the calculated logarithm gives the retention factor.

Changing the column diameter or film thickness changes the amount of stationary phase relative to gas. This is described by the phase ratio, β (beta):

β = (r − f)2 / [r2 − (r − f)2]
k′ = k′reference × βreference/β

r is the column’s inner radius before coating and f is film thickness, expressed in the same length units. The reference column has a 0.25 mm inner diameter and a 0.25 µm film. A thicker film gives more stationary phase relative to gas, increasing retention in this model.

When does each compound leave the column?

Retention time, tR, is the time from injection to the center of a compound’s peak. In an isothermal run, the oven stays at one temperature, so the retention factor stays constant:

tR = t0(1 + k′)

For example, if hold-up time is 1 minute and the retention factor is 2, the compound’s retention time is 3 minutes.

In a temperature-programmed run, the oven follows the holds and ramps entered in the controls. During each ramp:

T(t) = Tstart + q(t − tstart)

Tstart is the temperature at the start of that ramp, tstart is its start time, and q is the heating rate. Use time in minutes with a heating rate in °C/min. Once the target temperature is reached, it is held for the specified time. After the last ramp and hold, the final temperature continues.

Because temperature changes both gas speed and retention, the simulator follows each compound through small sections of the column. Its speed and the time needed to cross a short distance are:

vcompound = u/(1 + k′)
Δt ≈ Δx(1 + k′)/u

u is the local carrier-gas speed and Δx is the length of a small column section. The calculation updates temperature, retention, and gas speed along the journey. Adding the section travel times gives the retention time when the compound reaches the outlet. This allows a compound to be strongly retained early in a run and move much faster as the oven heats.

Why do peaks have a width?

Molecules of the same compound do not all arrive at precisely the same time. Random molecular motion—diffusion—spreads them out, and molecules take time to move between the gas and the stationary phase. These effects turn a narrow band of sample into a wider peak.

The simulator uses the Golay equation for an open tubular column. It describes spreading per unit column length as a plate height, H:

H = 2Dg/u
+ [(1 + 6k′ + 11k′2)/(96(1 + k′)2)] × dg2u/Dg
+ [2k′/(3(1 + k′)2)] × f2u/Ds

Dg and Ds are diffusion coefficients in the gas and stationary phase: they describe how quickly molecules spread in each phase. u is gas speed, dg is the open gas-channel diameter, and f is film thickness. The first term describes spreading along the column by diffusion. The other terms describe the time needed to move through the gas and the film. Slow flow gives diffusion more time to spread a band; very fast flow leaves less time for molecules to exchange between phases.

Smaller plate height means less spreading. Column efficiency is also expressed as a number of theoretical plates:

N = L/Haverage

N is plate count and Haverage is plate height averaged along the compound’s path. There are no physical plates inside the column; this is a way to describe its efficiency. The simulator estimates diffusion using representative solute properties rather than a separate measured diffusion coefficient for every compound.

The calculation also includes the initial band spread from the injection liner, adds column spreading along the journey, and adjusts the band’s spatial width as the gas expands. At the outlet, it converts that width into a spread in arrival times and adds detector broadening:

σ2 = sexit2/vexit2 + τ2

sexit is the standard deviation of the band’s position near the outlet, including injection and column effects. vexit is the compound’s speed there, and τ (tau) is the detector time constant. σ (sigma) is the resulting peak standard deviation in seconds. Squared standard deviations are called variances; independent broadening contributions add as variances. A larger detector time constant produces a broader peak.

For a Gaussian, or bell-shaped, peak, the width halfway up is about 2.355σ, and the conventional baseline width is about 4σ. The simulator represents peaks as symmetric; it does not model tailing, column overload, or oven thermal lag.

Peak height and the detector signal

A larger amount of compound produces more signal. For the same amount and flow, a narrower peak is taller because the compound reaches the detector over a shorter time.

The amount of each compound entering the column depends on its sample concentration, injection volume, and split setting:

n = csampleVinj/(S + 1)   (split injection)
n = csampleVinj   (splitless injection)

n is amount on column, csample is sample concentration, and Vinj is injection volume. S is the split ratio: at 100:1, one part enters the column for every 100 parts sent to the split vent. Concentration in µM multiplied by volume in µL gives amount in picomoles (pmol).

For each compound i, the simulator draws a Gaussian peak:

ci(t) = ni/[Fiσi√(2π)]
× exp[−(t − tR,i)2/(2σi2)]

ci(t) is the compound’s contribution to the detector signal at time t. Its retention time sets the peak center, and σi sets its width. Fi is the normalized carrier flow at elution, treated as constant across that peak. With amount in moles, flow in liters per second, and times in seconds, the equation gives mol/L. The graph displays concentration in suitable units, usually µM. π is the circle constant.

The final chromatogram adds all the peaks, the baseline offset, and simulated detector noise:

ctotal(t) = ∑i ci(t) + coffset + εnoise(t)

∑ means to add the contributions from all sample compounds. coffset shifts the baseline, and εnoise adds random fluctuations around it. Overlapping peaks add together, so two compounds may appear as one peak if they leave the column at nearly the same time.

This is an ideal detector with the same molar response for every compound. Real flame ionization detectors (FID) and mass spectrometers (MS) have responses that depend on compound chemistry. The simulator is intended to explain relationships between settings and separations, rather than reproduce a calibrated detector response.

How well are two peaks separated?

Resolution compares the distance between two peak centers with their widths. Peaks are easier to distinguish when their centers are farther apart or their widths are smaller:

Rs = |tR,2 − tR,1| / [2(σ1 + σ2)]

Rs is resolution, a number without units. Subscripts 1 and 2 identify the two compounds; their retention times and peak standard deviations must use the same time units. The vertical bars mean absolute value, so the difference in time is always positive.

For example, two peaks with centers 12 seconds apart and standard deviations of 2 seconds each have a resolution of 12/[2(2 + 2)] = 1.5. If both peaks become twice as wide without moving their centers, their resolution falls to 0.75.

For each compound, the table compares the preceding and following peaks in elution order and reports the smaller resolution. Clicking that value highlights the pair being compared. This helps you see which separation needs the most improvement.

Reference: For further reading on GC theory, see Leonid M. Blumberg, Temperature-Programmed Gas Chromatography. Wiley-VCH, 2010.