Simplex automatically aligns the specified wavelengths to a reference wavelength and outputs the alignment parameters. The aligned data is generated as well, if desired. The alignment compensates for translation and magnification differences between the different wavelengths.
Currently, unprocessed data do not compensate for magnification and translation diffences between the different wavelengths used in data collection. This can result in problems analyzing data when it is important to know how differently-labeled objects are positioned with respect to each other.
Simplex uses a multi-parameter r-factor minimization based on the simplex method, as written in Numerical Recipes (see section 10.4, pages 289-293 in either general or FORTRAN versions). This program requires that one or more structures have data in multiple wavelengths, either by using bleedthrough (e.g. excite in DAPI, and record emission in Texas Red or FITC) or by using an object that is labelled with multiple fluorphores (e.g. multicolored beads). This program uses a simplex to minimize the r-factor calculated from differences between these images. All data is loaded into memory as two byte integers to reduce data storage sizes.
-in2 option must be used. The order of
wavelengths in the input file(s) must be kept in mind when specifying
wavelengths.
-refwave, -alignwaves, and
-comparewaves options. See below for exact details on the
usage of these options.
-pass
option.
-norefout option.
-x, -y, and -z options. The default
is that the whole dataset will be aligned. Typically, the default option
is better to use, but larger datasets can be trimmed to decrease the
running time.
-x,
-y, and -z options, but will only use the region
defined within the -compxyz option. Unlike the
-x, -y, and -z options, the
-compxyz option is required!
-tstart) and
scale (-scale) to improve the speed of Simplex reaching the
tolerance value. You can also specify to have an edge rolloff
(-rolloff) in microns as well. These are optional, real
values. Usually, only the -scale option is readily estimable.
-tol) you're willing to
have in your alignment. The default is set at 0.0001, which appears to be
a reasonable value.
-out option).
If no output file is selected, the final alignment values will only be
printed on the screen (or specified file -- see the
Examples section).
The commands to use simplex has a number of required commands, as well as several optional commands (those in brackets):
simplex file1 [-in2=file2] [-x=] [-y=] [-z=] [-t=] [-rolloff=] -compxyz=
[-tstart=] -out=outfile -refwave=file#:refw -bkg= [-tol=] [-scale=]
-alignwaves=al1f#:al1w:alf2#:al2w [-comparewaves=c1f#:cw1:c2f#:cw2]
[-pass=p1f#:p1w:p2f#:p2w] [-norefout]
-refwave=1:0).
-refwave, each wavelength is specified
by a file number and a wavelength index. The default is to use every
wavelength except the one specified as the reference wavelength.
-alignwaves. Each wavelength specified in this list
is used in conjunction with the wavelength in the same position in the
aligned wavelengths list. For example, use -alignwaves when
you have bleedthrough data which is excited in the reference wave's
excitation and recorded in the aligned wavelength's emission wavelengths.
There must be the same number of wavelengths here as
listed with -alignwaves! If you are using the
same wavelength to align as you want saved, you need to rewrite it in the
appropriate order if you need to specify bleedthroughs for other
wavelengths. The default is to use the same list of wavelengths for
the comparison waves as were set with -alignwaves.
-alignwaves. The
wavelengths passed without processing appear first in the output file
after the reference wavelength (if it is output).
Simplex tends to run slowly so, if a queueing system available, you will want to make a script file as below to submit to a queue.
Number of columns, rows, sections ...... 512 512 160
Data organized (NZ,NW,NT) .............. 40 4 1 non-interleaved
.
.
.
# wavelengths, wavelengths (nm)......... 4 540 605 675 460
6 Titles :
opf 40-48_cyc13.dat;ndo 40;exfilter fitc-w;ccd 3.0;exfilter rhod-w;ccd 3.0;
exfilter cy5;ccd 7.0;exfilter dapi;ccd 3.0;foc 0.25;wait 2.0;enddo;clf;stop;
Mon Apr 7 08:32:03 1997
CCDCOR: CCD data correction V2.3 Norm=ON Method=PHOTON COUNTER DATA
Bleach=ON Zline=ON
DECON: DAA 0.1010 5 0.3050 1.0000 15 0.0029
Number of columns, rows, sections ...... 512 512 160
Data organized (NZ,NW,NT) .............. 40 2 1 non-interleaved
.
.
.
# wavelengths, wavelengths (nm)......... 2 605 675
6 Titles :
opf 40-48_cyc13.dat;ndo 40;exfilter fitc-w;emfilter rhod-w;ccd 7.0;
emfilter cy5;ccd 12.0;foc 0.25;wait 2.0;enddo;clf;stop;
Mon Apr 8 09:27:17 1997
CCDCOR: CCD data correction V2.3 Norm=ON Method=PHOTON COUNTER DATA
Bleach=ON Zline=ON
DECON: DAA 0.1010 5 0.3050 1.0000 15 0.0029
Let's assume that from file 1, you want to use fitc-w (540) as your wavelength to align everything to, rhod-w (605) and cy5 (675) as the wavelengths to be aligned (i.e. they contain your data), and dapi(460) as a wavelength to be passed (as there is no means by which to align this data to the fitc-w wavelength). File 2 contains bleedthrough data of fitc-w excitation in the rhod-w (605) and cy5 (675) emission wavelengths. These can be used to align the corresponding emission wavelength data in file 1.
The script file would look something like (it is assumed the environment variable IVE_BASE is set to point to where Priism is installed, you could also explicitly replace $IVE_BASE with the path to the installation directory (i.e. /usr/local/ucsf_msg/IVE)):
#command file for simplex setenv LD_LIBRARY_PATH $IVE_BASE/LIB_IRIX ( time $IVE_BASE/BIN_IRIX/simplex /usr/people/X/file1.dat_cor_decon \ -in2=/usr/people/X/file2.dat_cor_decon -scale=1.0:1.0 \ -compxyz=26:160:60:250:0:40 -refwave=1:0 -alignwaves=1:1:1:2 \ -comparewaves=2:0:2:1 -pass=1:3 -bkg=0:0:0) \ >& /usr/people/X/simplex.log
-refwave, -alignwaves,
-comparewaves, and -pass even if you are using
only one file! This program does not need to use two files, but it will
require a file specification in those options.