File Exchange

image thumbnail

Pulse Propagation

version (2.66 KB) by Adam Wyatt
Electromagnetic pulse propagation in free space in 2 spatial dimensions.


Updated 16 Jul 2007

View License

This script simulates the propagation of an electromagnetic pulse in time and 2 spatial dimensions. The resulting movie is a map of the beam profile in the transverse direction (i.e. perpendicular to propagation) as a function of time at a given longitudinal position (i.e. along propagation axis).

The result uses plane wave solutions to the wave equation, integrating over all possible directions and frequencies, computed using fast fourier transforms.

The simulations can be used to help visualize how space-time-coupling (STC) affects pulse propagation.

The idea can easily be expanded into 3 spatial dimensions (although the computational cost can become excessive).

Cite As

Adam Wyatt (2020). Pulse Propagation (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (4)

Adam Wyatt

I made a slight typo on the function, which I have now fixed. Program runs without any problems.

Athanasios Makris

The program does not run as is on (R14)
There are several problems with the vector dimensions and operations among them.

I have the feeling that these errors are note related to matlab version (after R14)...

Adam Wyatt

Error from Zhijun Wang has been fixed now.

Zhijun Wang

The following information will be produced with the program
??? Undefined function or method 'chng_rng' for input arguments of type 'double'.

Error in ==> pulse_prop at 39
wmin = chng_rng(1, c); Min w value


Slight typo - the gauss function should be 2.^(.....) which I have now changed.

Sorry - I forgot to add a couple of my home-made functions. These have now been added to the start of the file - all should work now!

MATLAB Release Compatibility
Created with R2006a
Compatible with any release
Platform Compatibility
Windows macOS Linux