Excitations - bertdupe/Matjes GitHub Wiki
Excitation input
For the time-dependent simulations it is possible to define a time-dependent change of order-parameters independent of the actual iteration. This functionality called excitations is described on this page. An example use-case would be the evolution of a magnetic texture when exposed to an electromagnetic wave. Notice that for all calculations supporting the excitation all previous order-parameter input gets overwritten as soon as an excitation for that order-parameter is defined.
The input setup consists of 3 parts, excitation_shape_r
which shapes the excitation in real space, excitation_shape_t
which shapes the excitation in time, and excitations
which combines an excitation_shape_r and excitation_shape_t together with an order parameter identifier to finally specify the entire excitation. The excitations are additive so that more complex shapes can be constructed by combining several entries for the same order-parameter.
Real-space shape options
All real-space shape options are inserted using the excitation_shape_r
-keyword, followed by lines which each define all parameters of an option.
The first entry is an identifier string, used to specify to shape later. The second entry is also a character which defines the type of excitation real-space shapes as described in the following. Afterwards, the input line requires type-specific input as defined with the following descriptions of the options.
plane
The option plane
allows to define the excitation everywhere in real-space, thus no additional parameters are necessary.
excitation_shape_r
name_r plane
defines a identifier called norm1
which can be use to put the excitation everywhere.
square
The option square
allows to define the excitation within a certain square. It requires 4 real parameters as following:
excitation_shape_r
name_r square 10.0d0 20.d0 0.0d0 5.0d0
where the first 3 real-parameters are the center position in real-space (10,20,0) and the final entry gives half the side length. Hence, only sites within (10±5,20±5,0±5) are modified.
cylinder
The option cylinder
allows to define the excitation within a certain sphere. It requires 4 real parameters as following:
excitation_shape_r
name_r cylinder 10.0d0 20.d0 0.0d0 5.0d0
where the first 3 real-parameters are the center position in real-space (10,20,0) and the final entry gives the radius (5).
gaussian
The option gaussian
allows to define a gaussian-shaped excitation. It requires 4 real parameters as following:
excitation_shape_r
name_r gaussian 10.0d0 20.d0 0.0d0 5.0d0
where the first 3 real-parameters are the center position in real-space r₀=(10,20,0) and the final entry is the standard deviation σ=5. The equation does not use the normal normalization, the equations is:
n=e^(- (r-r₀)²/σ²)
Laguerre-Gauss
The option laguerre-gauss
allows to define a Laguerre-Gauss beam excitation. It requires 6 numbers (3 real, 2 integers, 1 real). The first 3 real parameters are the center position of the beam. The 2 integers describes the Laguerre-Gauss mode (l and p). The last parameter corresponds to the width of the beam. Example:
excitation_shape_r
name_r laguerre-gauss 10.0d0 20.d0 2 1 0.0d0 10.0d0
The equation for the excitation is:
...
The output of this excitation is a complex number.
Time shape options
All time-space shape options are inserted using the excitation_shape_t
-keyword, followed by lines which each define all parameters of an option.
The first entry is an identifier string, used to identify to shape later. The second entry is also a string which defines the type of excitation time-space shapes as described in the following subsections. Then 2 reals and 1 integer are required, which are the initial time, the final time, and the dimension of the considered mode (i.e. 1 for a scalar field or 3 for a vector-field such as the electric field). The time-interval is half-open (including the start-time) to allow contiguous combinations of excitations. Afterwards, shape-dependent input parameters have to be specified as stated in the following. Notice that the magnitude of each excitation has to be given directly in the internal unit of the order-parameter.
const
The identifier const
corresponds to a constant value between the start time (tₛ) and the end time (tₑ):
I=I₀ for t∈[tₛ,tₑ).
Hence, only the constant value/vector (I₀) has to be specified depending on the specified mode dimension:
excitation_shape_t
name_t const 0.0 40.0 3 1.0 2.0 3.0
This corresponds to I₀=[1,2,3], tₛ=0 fs, and tₑ=40 fs.
rampe
The identifier rampe
corresponds to a linear interpolation between the start time (tₛ) and the end time (tₑ):
I=(I₁-I₀)/(tₑ-tₛ)·(t-tₛ)+I₀ for t∈[tₛ,tₑ).
Hence, 2 constant value/vector (I₀ and I₁) have to be specified depending on the specified mode dimension:
excitation_shape_t
name_t rampe 0.0 40.0 3 0.0 0.0 0.0 1.0 2.0 3.0
This corresponds to I₀=[0,0,0], I₁=[1,2,3], tₛ=0 fs, and tₑ=40 fs.
gauss
The identifier gauss
corresponds to a Gaussian distribution localized at t₀ and defined between the start time (tₛ) and the end time (tₑ):
I=I₀·e^(-(t-t₀)²/τ²) for t∈[tₛ,tₑ).
Hence, 1 constant value/vector (I₀) with the mode-dimension and 2 further reals (t₀ and τ) have to be defined:
excitation_shape_t
name_t gauss 0.0 40.0 3 1.0 2.0 3.0 20.0 10.0
This corresponds to I₀=[1,2,3], t₀=20fs, τ=10fs, tₛ=0 fs, and tₑ=40 fs.
algebraic
The identifier algebraic
provides exponential decay between the start time (tₛ) and the end time (tₑ):
I=I₀/(t-t₀)ᵏ for t∈[tₛ,tₑ).
Hence, 1 constant value/vector (I₀) with the mode-dimension and 2 further reals (t₀ and k) have to be defined:
excitation_shape_t
name_t algebraic 0.0 40.0 3 1.0 2.0 3.0 -10.0 0.1
This corresponds to I₀=[1,2,3], t₀=-10fs, k=0.1, tₛ=0 fs, and tₑ=40 fs. Notice that t₀ should not be within [tₛ.tₑ] as this could create divergences.
EMwave
The identifier EMwave
corresponds to a wave modulated by a Gaussian distribution localized at t₀ and defined between the start time (tₛ) and the end time (tₑ):
I=I₀·cos(ωt+φ)·e^(-(t-t₀)²/τ²) for t∈[tₛ,tₑ).
Here, I₀, ω, and φ are vectors in the mode-dimension space. Hence, 3 constant value/vector (I₀,ω,φ) with the mode-dimension and 2 further reals (t₀ and τ) have to be defined:
excitation_shape_t
name_t EMwave 0.0 40.0 3 1.0 2.0 3.0 5.0 5.0 5.0 0.0 1.0 0.5 20.0 10.0
This corresponds to I₀=[1,2,3], ω=[5,5,5] 2pi/fs, φ=[0,1,½]π, t₀=20fs, τ=10fs, tₛ=0 fs, and tₑ=40 fs.
Phasor
The identifier phasor
corresponds to a phasor of the form
I=I₀·exp(-iω·t+φ) for t∈[tₛ,tₑ).
It requires 6 entries. The first two are two real numbers corresponding to the start and end time. The next one is the mode dimension. The fourth one is the constant I₀ which has the mode-dimension. The last two are two real numbers: the period T and the initial phase φ in fractions of π. Example:
excitation_shape_t
name_t phasor 0.0 40.0 3 1.0 2.0 3.0 100.0 .5
This corresponds to I₀=[1,2,3], tₛ=0 fs, tₑ=40 fs, ω=2π/100, φ=.5·π.
Excitation from a file
The identifier
excitation_shape_r
shape file
will allow you to read the excitation from a file. The file should then be called shape_file (so "name of the shape"_file). The file must be formatted with the number of columns equal the dimension of the mode. The number of line is then the number of sites in the supercell. Then for each of the position, the excitation is updated by adding the component read in the file to the order parameter times the temporal part. The excitation is then written as a normal excitation
excitations
Bfield wave shape
Combination of excitation
Finally, the real- and time-space shapes have to be combined with an order-parameter in order to finalize the setup of the excitation. The corresponding input-keyword is excitations
. Each line following excitations
corresponds to one excitation shape which is defined by 3 strings. The first string shall be the order-parameter name, then time-shape indentifier, finalized by the real-space shape identifier. For example:
excitation_shape_r
shape plane
excitation_shape_t
const_start const 0.0 40.0 3 1.0 2.0 3.0
ramp rampe 40.0 110.0 3 1.0 2.0 3.0 0.0 0.0 10.0
const_end const 110.0 1.0d9 3 0.0 0.0 10.0
wave EMwave 0.0 110.0 3 10.0 10.0 10.0 20.0 20.0 20.0 0.0 1.0 0.5 60.0 20.0
excitations
Efield const_start shape
Efield const_end shape
Efield wave shape
Efield ramp shape
Creates an electric-field shape homogeneous in real-space, first constant at [1,2,3], then changing linearly to [0,0,10], then staying constant at [0,0,10], and additionally modulated by a gaussian-shape enveloped wave.