2.8.1.2. prismatique.stem.output.layer_depths
- layer_depths(sample_specification, alg_specific_params=None, skip_validation_and_conversion=False)[source]
Determine the output layer depths from STEM simulation parameter subset.
For a discussion on output layer depths, see the documentation for the class
prismatique.stem.output.multislice.Params, particularly the description of the constructor parametersnum_slices_per_outputandz_start_output.- Parameters:
- sample_specification
prismatique.sample.ModelParams|prismatique.sample.PotentialSliceSubsetIDs|prismatique.sample.SMatrixSubsetIDs The simulation parameters specifying the sample model.
If
sample_specificationis of the typeprismatique.sample.ModelParams, thensample_specificationsspecifies 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 classesprismatique.discretization.Paramsandprismatique.thermal.Paramsfor discussions on potential slices and frozen phonon configuration subsets respectively. Note that of parameters stored insample_specification, only the following are used:sample_specification
atomic_coords_filename
unit_cell_tiling
discretization_params
interpolation_factors
num_slices
Otherwise, if
sample_specificationis an instance of the classprismatique.sample.PotentialSliceSubsetIDs, or the classprismatique.sample.SMatrixSubsetIDs, thensample_specificationspecifies 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 subpackageprismatique.stemfor a discussion on \(S\)-matrices.Moreover, note that
sample_specificationmust be an instance of the classprismatique.sample.ModelParams, or the classprismatique.sample.PotentialSliceSubsetIDswhen the parameteralg_specific_paramsbelow is set to None, or is an instance of the classprismatique.stem.output.multislice.Params.- alg_specific_params
prismatique.stem.output.multislice.Params|prismatique.stem.output.prism.Params| None, optional The output parameters that are applicable only to the particular algorithm used perform the STEM simulation. If
alg_specific_paramsis set to an instance of the classprismatique.stem.output.multislice.Params, then the multislice algorithm is used to perform the STEM simulation. See the documentation for the classprismatique.stem.output.multislice.Paramsfor a discussion on the output parameters specific to the multislice algorithm. Ifalg_specific_paramsis set to an instance of the classprismatique.stem.output.prism.Params, then the PRISM algorithm is used to perform the STEM simulation. See the documentation for the classprismatique.stem.output.prism.Paramsfor a discussion on the output parameters specific to the PRISM algorithm. Ifalg_specific_paramsis set to None [i.e. the default value], then the multislice algorithm is used to perform the STEM simulation with the aforementioned output parameters set to default values.- skip_validation_and_conversionbool, optional
If
skip_validation_and_conversionis set toFalse, then validations and conversions are performed on the above parameters.Otherwise, if
skip_validation_and_conversionis set toTrue, 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.
- sample_specification
- Returns:
- output_layer_depthsarray_like (float, ndim=1)
The output layer depths, in units of angstroms, in ascending order. Note that for STEM simulations that use the PRISM algorithm,
output_layer_depthsis a single-element array, where the single element is the the \(z\)-dimension of the sample’s supercell in units of angstroms [see the documentation for the classprismatique.discretization.Paramsfor a discussion on the sample’s supercell].