sarkas.tools.observables.DynamicStructureFactor
sarkas.tools.observables.DynamicStructureFactor#
- class sarkas.tools.observables.DynamicStructureFactor[source]#
Dynamic Structure factor.
The species dependent DSF \(S_{AB}(k,\omega)\) is calculated from
\[S_{AB}(k,\omega) = \int_0^\infty dt \, \left \langle | n_{A}( \mathbf k, t)n_{B}( -\mathbf k, t) \right \rangle e^{i \omega t},\]where the microscopic density of species \(A\) with number of particles \(N_{A}\) is given by
\[n_{A}(\mathbf k,t) = \sum^{N_{A}}_{j} e^{-i \mathbf k \cdot \mathbf r_j(t)} .\]Methods
Calculate the average and standard deviation of the observable from the slices dataframe.
Calculate and save Fourier space data.
Calculate n(k,t) for each slice.
Calculate the observable for each slice.
Calculate v(k,t) for each slice.
Routine for computing the observable.
Calculate Time dependent Fourier space quantities.
Create the directories and filenames where to save dataframes.
DynamicStructureFactor.from_dict(input_dict)Update attributes from input dictionary.
Read the observable's info from the pickle file.
Read in particles data into one large array.
DynamicStructureFactor.integrate_normalized_acf_squared(...)Calculate the normalized correlation time as given by
DynamicStructureFactor.parse([acf_data])Grab the pandas dataframe from the saved csv file.
Read in the precomputed Fourier space data.
Read in the precomputed time dependent Fourier space data.
DynamicStructureFactor.plot([scaling, acf, ...])Plot the observable by calling the pandas.DataFrame.plot() function and save the figure.
Create the message with the basic information of every observable
Save the \(n(\mathbf{k},t)\) and/or \(\mathbf{v}(\mathbf{k},t)\) data of each slice to disk.
Save the observable's info into a pickle file.
DynamicStructureFactor.setup(params[, ...])Assign attributes from simulation's parameters.
DynamicStructureFactor.setup_init(params[, ...])Assign Observables attributes and copy the simulation's parameters.
Set the attributes postprocessing_dir and dump_dirs_list.
DynamicStructureFactor.update_args(**kwargs)Update observable specific attributes and call
update_finish()to save info.Update the
slice_steps, CCF's and DSF's attributes, and save pickle file with observable's info.