Physics::UEMColumn::Pulse - Class representing a pulse for the Physics::UEMColumn simulation
use strict; use warnings; use Physics::UEMColumn alias => ':standard'; my $pulse = Pulse->new( velocity => '1e8 m/s', number => 1e6, );
The Physics::UEMColumn::Pulse class defines many attributes, however most are semi-private. From a practical perspective the user need only interact with the first three. The latter however, allow for a more physical creation of the pulse and thus are available to the user.
velocity
The velocity of a pulse. This is required and may be zero, though note that without further acceleration the simulation may never come to completion. Unit: m/s
location
The location of the center of the pulse within the column. Default is 0, Unit: m
0
number
Number of electrons contained in the pulse. Default is 1
1
sigma_t
sigma_z
The spatial variance in the transverse and longitudinal direction respectively. Computing an initial value for sigma_z is still a matter of much interest in the community. Any initialization seen in this code is rather naive. Unit: m^2
eta_t
eta_z
The local momentum variance in the transverse and longitudinal directions respectively. A value of 0 would imply a perfectly mono-chromated pulse (though this is unphysical). Unit: (kg m / s)^2
gamma_t
gamma_z
The momentum chirp in the transverse and longitudinal directions respectively. A value of zero would mean that the front, back and center of the pulse all have the same average momentum. Computing an initial value for gamma_z is still a matter of much interest in the community. Any initialization seen in this code is rather naive. Unit: kg m^2 / s
liouville_gamma2_t
liouville_gamma2_z
The value of the product of sigma and eta in the transverse and longitudinal directions respectively. Since it can be easily shown that these pulses obey Liouville's Theorem, this product is unchanged during propagation. This value is used internally to reduce the number of equations to solve and thus increase solution speed. This value should not be changed manually but will be calculated from values given to quantities above.
sigma
eta
initial_width
initial_length
These attributes are for convenience only. They may be used to initialize the variance attriutes above. They represent the initial half-width 1/e maximum (HW1/eM) width or length of the pulse. Unit: m
This attribute is for convenience only. It may be used to initialize the variance attriutes above. It represents the excess photoemission energy imparted to the electrons in the pulse by simple photoemission. Unit: J
data
Holder for an array reference to the raw propagation history data. This should not be changed manually.
http://github.com/jberger/Physics-UEMColumn
Joel Berger, <joel.a.berger@gmail.com>
Copyright (C) 2012-2013 by Joel Berger
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
To install Physics::UEMColumn, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Physics::UEMColumn
CPAN shell
perl -MCPAN -e shell install Physics::UEMColumn
For more information on module installation, please visit the detailed CPAN module installation guide.