sarkas.tools.observables.calc_vkt#

sarkas.tools.observables.calc_vkt(fldr, slices, dump_step, species_np, k_list, verbose)[source]#

Calculate the longitudinal and transverse velocities fluctuations of all species. Longitudinal

\[\lambda_A(\mathbf{k}, t) = \sum_i^{N_A} \mathbf{k} \cdot \mathbf{v}_{i}(t) \exp [ - i \mathbf{k} \cdot \mathbf{r}_{i}(t) ]\]

Transverse

\[\begin{split}\\tau_A(\mathbf{k}, t) = \sum_i^{N_A} \mathbf{k} \\times \mathbf{v}_{i}(t) \exp [ - i \mathbf{k} \cdot \mathbf{r}_{i}(t) ]\end{split}\]

where \(N_A\) is the number of particles of species \(A\).

Parameters
  • fldr (str) – Name of folder containing particles data.

  • slices (tuple, int) – Initial, final step number of the slice, number of steps per slice.

  • dump_step (int) – Timestep interval saving.

  • species_np (numpy.ndarray) – Number of particles of each species.

  • k_list (list) – List of :math: k vectors.

Returns

  • vkt (numpy.ndarray, complex) – Longitudinal velocity fluctuations. Shape = ( no_species, no_dumps, no_ka_values)

  • vkt_perp_i (numpy.ndarray, complex) – Transverse velocity fluctuations along the \(x\) axis. Shape = ( no_species, no_dumps, no_ka_values)

  • vkt_perp_j (numpy.ndarray, complex) – Transverse velocity fluctuations along the \(y\) axis. Shape = ( no_species, no_dumps, no_ka_values)

  • vkt_perp_k (numpy.ndarray, complex) – Transverse velocity fluctuations along the \(z\) axis. Shape = ( no_species, no_dumps, no_ka_values)