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.