2.6.2. prismatique.sample.S_matrix_set_data_size

S_matrix_set_data_size(sample_specification, probe_model_params=None, skip_validation_and_conversion=False)[source]

Calculate the data size of a set of \(S\)-matrices that one could generate according to a given sample model and probe model.

See the documentation for the subpackage prismatique.stem for a discussion on \(S\)-matrices.

Note that data size due to HDF5 file overhead and metadata are not taken into account.

Parameters:
sample_specificationprismatique.sample.ModelParams | prismatique.sample.PotentialSliceSubsetIDs | prismatique.sample.SMatrixSubsetIDs | prismatique.sample.PotentialSliceAndSMatrixSubsetIDs

The simulation parameters specifying the sample model.

If sample_specification is of the type prismatique.sample.ModelParams, then sample_specifications specifies sample model parameters that are used to construct the model from scratch, i.e. the potential slices for each frozen phonon configuration subset are calculated from said model parameters. See the documentation for the classes prismatique.discretization.Params and prismatique.thermal.Params for discussions on potential slices and frozen phonon configuration subsets respectively. Note that of parameters stored in sample_specification, only the following are used:

  • sample_specification

    • atomic_coords_filename

    • unit_cell_tiling

    • discretization_params

      • sample_supercell_reduced_xy_dims_in_pixels

      • interpolation_factors

    • thermal_params

      • num_frozen_phonon_configs_per_subset

      • num_subsets

Otherwise, if sample_specification is an instance of the class prismatique.sample.PotentialSliceSubsetIDs, the class prismatique.sample.SMatrixSubsetIDs, or the class prismatique.sample.PotentialSliceAndSMatrixSubsetIDs, then sample_specification specifies a set of files, where each file stores either the pre-calculated potential slices or \(S\)-matrices for a frozen phonon configuration subset. See the documentation for the aforementioned classes for further discussions on specifying pre-calculated objects. See the documentation for the subpackage prismatique.stem for a discussion on \(S\)-matrices.

probe_model_paramsembeam.stem.probe.ModelParams | None, optional

The model parameters of the probe. See the documentation for the class embeam.stem.probe.ModelParams for a discussion on said parameters. If probe_model_params is set to None [i.e. the default value], then the parameter will be reassigned to the value embeam.stem.probe.ModelParams().

Note that of parameters stored in probe_model_params, only the following are used:

  • probe_model_params

    • convergence_semiangle

    • gun_model_params

      • mean_beam_energy

skip_validation_and_conversionbool, optional

If skip_validation_and_conversion is set to False, then validations and conversions are performed on the above parameters.

Otherwise, if skip_validation_and_conversion is set to True, no validations and conversions are performed on the above parameters. This option is desired primarily when the user wants to avoid potentially expensive validation and/or conversion operations.

Returns:
data_sizeint

The data size in units of bytes.