 |
 |
|
Ultrashort Pulse Propagation Code |
 |
Propagation Code for Ultrashort Pulse
Intensity and Phase
There are some nice things you can do when you measure the full
pulse intensity and phase—things you couldn’t do with just an
autocorrelation. For example, you can propagate the pulse
theoretically through any optical components to see how dispersion
affects the pulse. This is particularly useful if, in your
apparatus, the pulse must propagate through optics on the way to
your FROG or if your FROG has some glass in it (before the crystal),
and you’d like to know the pulse before it met any of these
distorting elements. You can then “back-propagate” the pulse through
these optics to see what it looked like before them. This is the
case for the original commercial Swamp Optics GRENOUILLE for pulses
shorter than about ~80 fs (or bandwidths greater than ~15 nm).
Alternatively, if your pulse must propagate through some optics on
its way to another experiment, you can “forward-propagate” the pulse
to see what it will look like at that experiment.
As a result, this web page supplies code you can use to do this
forward- or back-propagation. It’s initially set up for the
commercial GRENOUILLE (which has a lens telescope, a cylindrical
lens, and a Fresnel biprism before the BBO crystal in it), so you
can use this code (unchanged) to find the actual pulse at the
entrance to the GRENOUILLE. Again, you only need to run this code if
you have the original GRENOUILLE (later versions have a reflective
telescope instead and do not require any corrections if the pulse is
within the device specs (i.e., longer than 50 fs and with less than
20 nm of bandwidth). But you can use it to perform any propagation
of any pulse, as long as you know its intensity and phase.
For more sophisticated problems, such as propagation through a pulse
stretcher, amplifier, and compressor, you may wish to check out some
software from Craig Siders at UCF, called “Dispersomatic”:
http://dom.creolucf.edu/
Download the file here
Instructions
To use these files, you will need MATLAB (tested on relases 12
and 13; less than 12 may require upgrading). Use of the files
assumes basic familiarity with MATLAB, and is fairly straightforward
code, but does not have a GUI interface or the like. Most of it's
functionality is through running/modifying a simple script that
calls the required functions.
First, unzip all the files either your MATLAB/work directory, or to
any folder you choose, so long as you add that folder to your MATLAB
path.
To take a look at theoretical propagation, use the PROPATHEO.m
script. Open and Run it, and a plot should appear showing the FROG
trace, the temporal intensity and phase, and the spectral intensity
and phase; both before and after propagation. You can change the
values of the temporal or spectral pulsewidth and/or chirp and then
Save and Run the script to see the changes. When the "propagate.m"
function is called, a "direction" of +1 is forward propagation, -1
is back propagation.
By commenting out the lines 38 and 39:
direction = 1;
ESNew =
quickscale(BetaGREN(Wavelen,ES,direction));
and removing the comment on lines 45-47:
% len = 2.4;
% mat = 'FUSED SILICA';
% ESNew = quickscale(propagate(Wavelen,ES,len,mat));
you can instead see propagation through 2.4 mm of fused silica.
Changing the length and/or material may account for a lens or
beamsplitter in your own system, for instance.
To take a look at (back) propagation on experimental data, use the
PROPADATA.m script. Hitting Run will open a standard file open
dialogue box, to get the retrieved spectral intensity and phase from
the standard "speck.dat" file. A sample "speck.dat" file has been
provided in the PROPAGATE.zip file, and so will be located wherever
you put the files. Selecting the sample speck.dat will show the
plots as seen in the PROPATHEO, of real experimental data of an
etalon-generated pulse train, being back propagated through a
typical GRENOUILLE (in fact, identical to that of commercially
available Swamp Optics GRENOUILLEs).
To run a back propagation on a retrieved intensity and phase, you
will need the data in the standard "speck.dat" format. The format is
fairly simple five column delimited text, with no headers. The
columns are:
Wavelength Intensity Phase RealEField ImaginaryEField
(The second and third columns contain information redundant in the
fourth and fifth columns.)
If you cannot get the code to run at all, first check that files are
in your MATLAB path, and that you have release 12 or 13 (either
should say MATLAB 6). If problems persist, you may contact Patrick
O'Shea (pat AT socrates.gatech.edu). General questions about MATLAB
will not be answered, just about the code provided here. For general
questions about FROG or GRENOUILLE, feel free to browse our website
to find information, and/or check out Dr. Trebino's FROG book, which
is as comprehensive a reference on FROG as you will ever find.
Thanks,
Patrick
|
 |
|
|