Matlab:DNA Melting Data Analysis

From Bioinstrumentation Teaching Lab Wiki
Jump to: navigation, search


This tutorial will help you write scripts to convert the raw voltages produced by the DNA melting apparatus into proper melting curves. The pro

The raw data you will take for each experimental run consists of periodic measurements of two voltages. The job of your data analysis scripts will be to:

  1. remove noise from the signals,
  2. convert the two voltages into temperature and dsDNA fraction data vectors,
  3. plot dsDNA fraction versus temperature (melting curve),
  4. plot the derivative of the melting curve (this is more accurately called the finite difference),
  5. estimate the melting temperature, Tm, from the melting curve and its derivative, and
  6. estimate ΔH°, and ΔS° for the annealing reaction by fitting the melting curve to a mathematical model.

Data analysis advice

In outline, the steps to produce a melting curve from <math>V_{RTD}</math> and <math>V_f</math> are:

  1. Filter V_RTD and V_f to remove noise.
  2. Transform RTD voltage to temperature.
  3. Transform photodiode current to relative fluorescence.
  4. Ensure that the melting function is uniquely values by combining samples with identical temperature values.
  5. Differentiate the resulting function with respect to temperature.

Tm can be estimated directly from the melting curve or by finding the peak of the melting curve's derivative with respect to temperature. (Why would you prefer one method over the other?) Your data analysis script will have to convert the RTD and fluorescence intensity voltage signals into estimates of the temperature and dsDNA fraction.


If you are not familiar with implementing digital filters in Matlab, review the Convolution and digital filtering in Matlab tutorial.

There are (at least)4 different convolution functions and 3 filtering functions in Matlab. Choosing the correct one is not always straightforward. Initial conditions Group delay


Sorting Binning