<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.pymol.org/index.php?action=history&amp;feed=atom&amp;title=Forster_distance_calculator</id>
	<title>Forster distance calculator - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.pymol.org/index.php?action=history&amp;feed=atom&amp;title=Forster_distance_calculator"/>
	<link rel="alternate" type="text/html" href="https://wiki.pymol.org/index.php?title=Forster_distance_calculator&amp;action=history"/>
	<updated>2026-04-25T10:48:15Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.35.1</generator>
	<entry>
		<id>https://wiki.pymol.org/index.php?title=Forster_distance_calculator&amp;diff=7967&amp;oldid=prev</id>
		<title>Pyadmin: 1 revision</title>
		<link rel="alternate" type="text/html" href="https://wiki.pymol.org/index.php?title=Forster_distance_calculator&amp;diff=7967&amp;oldid=prev"/>
		<updated>2014-03-28T02:16:25Z</updated>

		<summary type="html">&lt;p&gt;1 revision&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 02:16, 28 March 2014&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Pyadmin</name></author>
	</entry>
	<entry>
		<id>https://wiki.pymol.org/index.php?title=Forster_distance_calculator&amp;diff=7966&amp;oldid=prev</id>
		<title>Tlinnet: /* How to run the script */</title>
		<link rel="alternate" type="text/html" href="https://wiki.pymol.org/index.php?title=Forster_distance_calculator&amp;diff=7966&amp;oldid=prev"/>
		<updated>2012-01-15T15:04:01Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;How to run the script&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Infobox script-repo&lt;br /&gt;
|type      = script&lt;br /&gt;
|filename  = forster_distance_calculator.py&lt;br /&gt;
|author    = [[User:Tlinnet|Troels E. Linnet]]&lt;br /&gt;
|license   = BSD&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
This script can be handsome, if one is working with Förster resonance energy transfer in proteins. The script calculates the [http://en.wikipedia.org/wiki/F%C3%B6rster_resonance_energy_transfer Förster distance]: R0, from two dyes excitation/emission spectres. &amp;lt;br /&amp;gt;&lt;br /&gt;
This script is very handsome, if one want's to pick two dyes from different companies, and the Förster distance is not provided in a table.&lt;br /&gt;
&lt;br /&gt;
This script does no calculation of proteins in pymol, but is made as a &amp;quot;hack/shortcut&amp;quot; for a python script. &amp;lt;br /&amp;gt;&lt;br /&gt;
We use the python part of pymol to do the calculations, so a student would not need to install python at home, but simply pymol. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Spectre input ==&lt;br /&gt;
'''There should be provided the path to four datafiles:'''  &amp;lt;br /&amp;gt;&lt;br /&gt;
Excitation and Emission spectre for the Donor dye: D_Exi=&amp;quot;path.txt&amp;quot;   D_Emi=&amp;quot;path.txt &amp;lt;br /&amp;gt;&lt;br /&gt;
Excitation and Emission spectre for the Acceptor dye: A_Exi=&amp;quot;path.txt&amp;quot;   A_Emi=&amp;quot;path.txt &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Each of the files shall be a two column file. Separated by space. Numbers are &amp;quot;.&amp;quot; dot noted and not by &amp;quot;,&amp;quot; comma. One can for example prepare the files by search-and-replace in a small text editor.  &amp;lt;br /&amp;gt;&lt;br /&gt;
The first column is the wavelength in nanometers &amp;quot;nm&amp;quot; or centimetres &amp;quot;cm&amp;quot;. Second column is the arbitrary units of excitation/emission.&lt;br /&gt;
'''For example:'''&lt;br /&gt;
&amp;lt;source lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
Absorption&lt;br /&gt;
Wavelength &amp;quot;Alexa Fluor 488 H2O (AB)&amp;quot; &lt;br /&gt;
&lt;br /&gt;
300.00 0.1949100000 &lt;br /&gt;
301.00 0.1991200000 &lt;br /&gt;
302.00 0.2045100000 &lt;br /&gt;
303.00 0.2078800000 &lt;br /&gt;
....&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Getting spectres ==&lt;br /&gt;
For example provides the company [http://www.atto-tec.com/index.php?id=128&amp;amp;L=1&amp;amp;language=en ATTO-TEC] spectre for their dyes in excel format [https://www.atto-tec.com/index.php?id=113&amp;amp;no_cache=1&amp;amp;L=1 Spectre(excel-file)]. These can easily be copied from excel to a flat two column file.&lt;br /&gt;
&lt;br /&gt;
Some of the most cited dyes are the Alexa Fluor dyes from the company [http://www.invitrogen.com/site/us/en/home/References/Molecular-Probes-The-Handbook/Fluorophores-and-Their-Amine-Reactive-Derivatives/Alexa-Fluor-Dyes-Spanning-the-Visible-and-Infrared-Spectrum.html invitrogen]. Invitrogen does not provide spectres for their dyes in dataformat, but as flat picture files.&lt;br /&gt;
&lt;br /&gt;
Luckily, a group on University of Arizona have traced several spectre of dyes from the literature with a graphics program. They have made these spectre easily public at http://www.spectra.arizona.edu/. I highly recommend this homepage. &lt;br /&gt;
With these Spectra, the script can calculate the Forster Distance for different dyes from different companies. &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Download one spectrum at the time by &amp;quot;deselecting&amp;quot; in the right side of the graph window. Then get the datafile with the button in the lower right corner. &lt;br /&gt;
&lt;br /&gt;
== Input values ==&lt;br /&gt;
The calculation needs input for:&lt;br /&gt;
* '''Qd''': Fluorescence quantum yield of the donor in the absence of the acceptor.&lt;br /&gt;
*: This is normally provided from the manufacture, and this information is normally also available in the [http://www.spectra.arizona.edu/ database].&lt;br /&gt;
*: It is recognized in the literature, that the value for '''Qd''', changes on behalf on which position its located on the protein.&lt;br /&gt;
*: Changes in 5-10 % is normal, but much larger values can be expected if the dye make hydrophobic interactions with the protein. This is dye-nature dependant.&lt;br /&gt;
*: This value can only be determined precisely with experiments for the protein at hand.&lt;br /&gt;
*: But anyway, for a &amp;quot;starting&amp;quot; selection for a FRET pair, the manufacture '''Qd''' should be &amp;quot;ok&amp;quot;.&lt;br /&gt;
* '''Kappa2 = 2.0/3.0''': Dipole orientation factor.&lt;br /&gt;
*: In the literature, I often see this equal 2/3=0,667 This corresponds for free diffusing dye.&lt;br /&gt;
*: For a dye attached to a protein, and restricted in one direction, the value is equal Kappa2=0.476&lt;br /&gt;
*: But since we take the 6th root of the value, the difference ends up only being 5% in relative difference for the R0 value.&lt;br /&gt;
*: Kappa2=2/3 can be a valid fast approximation, for the purpose of ordering dyes. But be careful and check the literature for discussions.&lt;br /&gt;
* '''n = 1.33''': &lt;br /&gt;
*: water=1.33, protein=1.4, n(2M GuHCl)=1.375&lt;br /&gt;
*: Again, we take the sixth root, so the differences are &amp;quot;not so important&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== How the script works ==&lt;br /&gt;
* The script integrate the Donor emission spectre, to divide with it.&lt;br /&gt;
*: This is done by simple numerical integration by the [http://en.wikipedia.org/wiki/Rectangle_method Rectangle method]&lt;br /&gt;
* All datapoints for the Acceptor excitation spectre are scaled, so that '''e'''(molar extinction coefficient) fits the wavelength where it is determined.&lt;br /&gt;
* For the multiplication of the spectre, the script test that both data points exist before multiplication.&lt;br /&gt;
*: This can be troublesome, if there is 1-2 nm between each data point. Or if they are &amp;quot;un-even&amp;quot;. Like Donor has 100.2 100.4 100.4 and Acceptor has 100.1 100.3 100.5&lt;br /&gt;
*: But most spectre have much better resolution. Mostly 0.2 nm, and &amp;quot;even spaced&amp;quot;&lt;br /&gt;
*: So this should work quite good as well.&lt;br /&gt;
&lt;br /&gt;
The output is a text file, with all the datapoints.&lt;br /&gt;
# Column: Donor: The input Emission wavelength.&lt;br /&gt;
# Column: Donor: The input Emission, arbitrary units of excitation.&lt;br /&gt;
# Column: Donor: The input Emission, arbitrary units of excitation, divided by the integrated area.&lt;br /&gt;
# Column: Acceptor: The input excitation wavelength.&lt;br /&gt;
# Column: Acceptor: The input excitation '''e'''(molar extinction coefficient).&lt;br /&gt;
# Column: Acceptor: The input excitation '''e'''(molar extinction coefficient), scaled correctly.&lt;br /&gt;
# Column: The calculated overlap for this datapoint.&lt;br /&gt;
# Column: The summed values for calculated overlap, until this datapoint.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It also automatically generates a [http://www.gnuplot.info/ gnuplot] .plt file, for super fast making graphs of the spectres. In linux, gnuplot is normally part of the installation. Just write: gnuplot FILENAME.plt&lt;br /&gt;
If you are in windows, [http://sourceforge.net/projects/gnuplot/files/ download gnuplot] and open the .plt file. &lt;br /&gt;
&lt;br /&gt;
Gnuplot makes three graphs in .eps format. They can be converted to pdf with the program: epstopdf or eps2pdf. They are for example part of LaTeX: C:\Program Files (x86)\MiKTeX 2.9\miktex\bin or you can [http://tinyurl.com/eps2pdf download it here]. The format of .eps is choses, since gnuplot then allows for math symbols in the graphs.&lt;br /&gt;
&amp;lt;gallery heights=&amp;quot;240px&amp;quot; widths=&amp;quot;340px&amp;quot;&amp;gt;&lt;br /&gt;
Image:1-ALEXA488Emi-ALEXA633Exi-overlap-all-spectre.png|All graphs plotted together, but not scaled correctly.&lt;br /&gt;
Image:2-ALEXA488Emi-ALEXA633Exi-overlap-normalized-spectre.png|The Donor emission (y1) and Acceptor excitation (y2) scaled correctly.&lt;br /&gt;
Image:3-ALEXA488Emi-ALEXA633Exi-overlap-integral.png|The Rectangle integral datapoint (y1) and the summed integration (y2).&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== How to run the script ==&lt;br /&gt;
Make a pymol .pml file like this. Write in the required information, and execute/run the script with pymol. Then open the .plt file afterwards with gnuplot.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
## Change to your directory&lt;br /&gt;
cd /homes/YOU/Documents/Atto-dyes/Spectre/ALEXA488-ALEXA633&lt;br /&gt;
import forster_distance_calculator&lt;br /&gt;
forster D_Exi=ALEXA488Exi.txt, D_Emi=ALEXA488Emi.txt, A_Exi=ALEXA633Exi.txt, A_Emi=ALEXA633Emi.txt, A_e_Max_Y=159000, A_e_Max_X=621, Qd=0.92&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Script_Library]]&lt;br /&gt;
[[Category:Biochemical_Scripts]]&lt;br /&gt;
[[Category:Pymol-script-repo]]&lt;/div&gt;</summary>
		<author><name>Tlinnet</name></author>
	</entry>
</feed>