Prismatique
prismatique is a Python library that functions essentially as a wrapper to
the Python library pyprismatic, which itself is a thin wrapper to
prismatic, a CUDA/C++ package for fast image simulations in scanning
transmission electron microscopy and high-resolution transmission electron
microscopy. You can find more information about pyprismatic and
prismatic here.
The source code can be found in the prismatique GitHub repository.
Instructions for installing and uninstalling prismatique
For instructions on installing the prismatique library, see the
Instructions for installing and uninstalling prismatique page.
Learning how to use prismatique
For those new to the prismatique library, it is recommended that they take a
look at the Examples page, which contain code examples that show how
one can use the prismatique library. While going through the examples,
readers can consult the prismatique reference guide to understand what each line
of code is doing.
Contents
- Home
- 1. Instructions for installing and uninstalling
prismatique - 2. Reference
- 2.1. prismatique.aperture
- 2.1.1. prismatique.aperture.Params
ParamsParams.core_attrsParams.de_pre_serialization_funcsParams.de_pre_serialize()Params.dump()Params.dumps()Params.get_core_attrs()Params.get_de_pre_serialization_funcs()Params.get_pre_serialization_funcs()Params.get_validation_and_conversion_funcs()Params.load()Params.loads()Params.pre_serialization_funcsParams.pre_serialize()Params.update()Params.validation_and_conversion_funcs
- 2.1.1. prismatique.aperture.Params
- 2.2. prismatique.cbed
- 2.2.1. prismatique.cbed.blank_unprocessed_pattern_signal
- 2.2.2. prismatique.cbed.Params
ParamsParams.core_attrsParams.de_pre_serialization_funcsParams.de_pre_serialize()Params.dump()Params.dumps()Params.get_core_attrs()Params.get_de_pre_serialization_funcs()Params.get_pre_serialization_funcs()Params.get_validation_and_conversion_funcs()Params.load()Params.loads()Params.pre_serialization_funcsParams.pre_serialize()Params.update()Params.validation_and_conversion_funcs
- 2.3. prismatique.discretization
- 2.3.1. prismatique.discretization.Params
ParamsParams.core_attrsParams.de_pre_serialization_funcsParams.de_pre_serialize()Params.dump()Params.dumps()Params.get_core_attrs()Params.get_de_pre_serialization_funcs()Params.get_pre_serialization_funcs()Params.get_validation_and_conversion_funcs()Params.load()Params.loads()Params.pre_serialization_funcsParams.pre_serialize()Params.update()Params.validation_and_conversion_funcs
- 2.3.1. prismatique.discretization.Params
- 2.4. prismatique.hrtem
- 2.4.1. prismatique.hrtem.image
- 2.4.1.1. prismatique.hrtem.image.blank_unprocessed_image_signal
- 2.4.1.2. prismatique.hrtem.image.Params
ParamsParams.core_attrsParams.de_pre_serialization_funcsParams.de_pre_serialize()Params.dump()Params.dumps()Params.get_core_attrs()Params.get_de_pre_serialization_funcs()Params.get_pre_serialization_funcs()Params.get_validation_and_conversion_funcs()Params.load()Params.loads()Params.pre_serialization_funcsParams.pre_serialize()Params.update()Params.validation_and_conversion_funcs
- 2.4.2. prismatique.hrtem.output
- 2.4.2.1. prismatique.hrtem.output.data_size
- 2.4.2.2. prismatique.hrtem.output.Params
ParamsParams.core_attrsParams.de_pre_serialization_funcsParams.de_pre_serialize()Params.dump()Params.dumps()Params.get_core_attrs()Params.get_de_pre_serialization_funcs()Params.get_pre_serialization_funcs()Params.get_validation_and_conversion_funcs()Params.load()Params.loads()Params.pre_serialization_funcsParams.pre_serialize()Params.update()Params.validation_and_conversion_funcs
- 2.4.3. prismatique.hrtem.sim
- 2.4.3.1. prismatique.hrtem.sim.run
- 2.4.3.2. prismatique.hrtem.sim.Params
ParamsParams.core_attrsParams.de_pre_serialization_funcsParams.de_pre_serialize()Params.dump()Params.dumps()Params.get_core_attrs()Params.get_de_pre_serialization_funcs()Params.get_pre_serialization_funcs()Params.get_validation_and_conversion_funcs()Params.load()Params.loads()Params.pre_serialization_funcsParams.pre_serialize()Params.update()Params.validation_and_conversion_funcs
- 2.4.4. prismatique.hrtem.system
- 2.4.4.1. prismatique.hrtem.system.ModelParams
ModelParamsModelParams.core_attrsModelParams.de_pre_serialization_funcsModelParams.de_pre_serialize()ModelParams.dump()ModelParams.dumps()ModelParams.get_core_attrs()ModelParams.get_de_pre_serialization_funcs()ModelParams.get_pre_serialization_funcs()ModelParams.get_validation_and_conversion_funcs()ModelParams.load()ModelParams.loads()ModelParams.pre_serialization_funcsModelParams.pre_serialize()ModelParams.update()ModelParams.validation_and_conversion_funcs
- 2.4.4.1. prismatique.hrtem.system.ModelParams
- 2.4.1. prismatique.hrtem.image
- 2.5. prismatique.load
- 2.5.1. prismatique.load.S_matrix_k_xy_vectors
- 2.5.2. prismatique.load.S_matrix_wavefunctions
- 2.5.3. prismatique.load.azimuthally_integrated_cbed_intensity_patterns
- 2.5.4. prismatique.load.cbed_intensity_patterns
- 2.5.5. prismatique.load.cbed_k_x_coords
- 2.5.6. prismatique.load.cbed_k_y_coords
- 2.5.7. prismatique.load.cbed_wavefunctions
- 2.5.8. prismatique.load.com_momenta
- 2.5.9. prismatique.load.defocii
- 2.5.10. prismatique.load.grid_dims_in_units_of_probe_shifts
- 2.5.11. prismatique.load.hrtem_beam_tilts
- 2.5.12. prismatique.load.hrtem_image_wavefunctions
- 2.5.13. prismatique.load.hrtem_image_x_coords
- 2.5.14. prismatique.load.hrtem_image_y_coords
- 2.5.15. prismatique.load.hrtem_intensity_image
- 2.5.16. prismatique.load.integration_limits_of_2d_stem_output
- 2.5.17. prismatique.load.k_xy_coords_of_3d_stem_output
- 2.5.18. prismatique.load.num_frozen_phonon_configs_in_subset
- 2.5.19. prismatique.load.num_slices
- 2.5.20. prismatique.load.output_layer_depths
- 2.5.21. prismatique.load.potential_slices
- 2.5.22. prismatique.load.probe_positions
- 2.5.23. prismatique.load.scan_pattern_type
- 2.5.24. prismatique.load.stem_intensity_images
- 2.6. prismatique.sample
- 2.6.1. prismatique.sample.S_matrix_k_xy_vectors
- 2.6.2. prismatique.sample.S_matrix_set_data_size
- 2.6.3. prismatique.sample.S_matrix_subset_data_size
- 2.6.4. prismatique.sample.check_atomic_coords_file_format
- 2.6.5. prismatique.sample.generate_S_matrices
- 2.6.6. prismatique.sample.generate_potential_slices
- 2.6.7. prismatique.sample.num_frozen_phonon_config_subsets
- 2.6.8. prismatique.sample.num_frozen_phonon_configs_in_subset
- 2.6.9. prismatique.sample.num_slices
- 2.6.10. prismatique.sample.potential_slice_set_data_size
- 2.6.11. prismatique.sample.potential_slice_subset_data_size
- 2.6.12. prismatique.sample.supercell_dims
- 2.6.13. prismatique.sample.supercell_lateral_pixel_size
- 2.6.14. prismatique.sample.supercell_slice_thickness
- 2.6.15. prismatique.sample.supercell_xy_dims_in_pixels
- 2.6.16. prismatique.sample.total_num_frozen_phonon_configs
- 2.6.17. prismatique.sample.unit_cell_dims
- 2.6.18. prismatique.sample.ModelParams
ModelParamsModelParams.core_attrsModelParams.de_pre_serialization_funcsModelParams.de_pre_serialize()ModelParams.dump()ModelParams.dumps()ModelParams.get_core_attrs()ModelParams.get_de_pre_serialization_funcs()ModelParams.get_pre_serialization_funcs()ModelParams.get_validation_and_conversion_funcs()ModelParams.load()ModelParams.loads()ModelParams.pre_serialization_funcsModelParams.pre_serialize()ModelParams.update()ModelParams.validation_and_conversion_funcs
- 2.6.19. prismatique.sample.PotentialSliceAndSMatrixSubsetIDs
PotentialSliceAndSMatrixSubsetIDsPotentialSliceAndSMatrixSubsetIDs.core_attrsPotentialSliceAndSMatrixSubsetIDs.de_pre_serialization_funcsPotentialSliceAndSMatrixSubsetIDs.de_pre_serialize()PotentialSliceAndSMatrixSubsetIDs.dump()PotentialSliceAndSMatrixSubsetIDs.dumps()PotentialSliceAndSMatrixSubsetIDs.get_core_attrs()PotentialSliceAndSMatrixSubsetIDs.get_de_pre_serialization_funcs()PotentialSliceAndSMatrixSubsetIDs.get_pre_serialization_funcs()PotentialSliceAndSMatrixSubsetIDs.get_validation_and_conversion_funcs()PotentialSliceAndSMatrixSubsetIDs.load()PotentialSliceAndSMatrixSubsetIDs.loads()PotentialSliceAndSMatrixSubsetIDs.pre_serialization_funcsPotentialSliceAndSMatrixSubsetIDs.pre_serialize()PotentialSliceAndSMatrixSubsetIDs.update()PotentialSliceAndSMatrixSubsetIDs.validation_and_conversion_funcs
- 2.6.20. prismatique.sample.PotentialSliceSubsetIDs
PotentialSliceSubsetIDsPotentialSliceSubsetIDs.core_attrsPotentialSliceSubsetIDs.de_pre_serialization_funcsPotentialSliceSubsetIDs.de_pre_serialize()PotentialSliceSubsetIDs.dump()PotentialSliceSubsetIDs.dumps()PotentialSliceSubsetIDs.get_core_attrs()PotentialSliceSubsetIDs.get_de_pre_serialization_funcs()PotentialSliceSubsetIDs.get_pre_serialization_funcs()PotentialSliceSubsetIDs.get_validation_and_conversion_funcs()PotentialSliceSubsetIDs.load()PotentialSliceSubsetIDs.loads()PotentialSliceSubsetIDs.pre_serialization_funcsPotentialSliceSubsetIDs.pre_serialize()PotentialSliceSubsetIDs.update()PotentialSliceSubsetIDs.validation_and_conversion_funcs
- 2.6.21. prismatique.sample.SMatrixSubsetIDs
SMatrixSubsetIDsSMatrixSubsetIDs.core_attrsSMatrixSubsetIDs.de_pre_serialization_funcsSMatrixSubsetIDs.de_pre_serialize()SMatrixSubsetIDs.dump()SMatrixSubsetIDs.dumps()SMatrixSubsetIDs.get_core_attrs()SMatrixSubsetIDs.get_de_pre_serialization_funcs()SMatrixSubsetIDs.get_pre_serialization_funcs()SMatrixSubsetIDs.get_validation_and_conversion_funcs()SMatrixSubsetIDs.load()SMatrixSubsetIDs.loads()SMatrixSubsetIDs.pre_serialization_funcsSMatrixSubsetIDs.pre_serialize()SMatrixSubsetIDs.update()SMatrixSubsetIDs.validation_and_conversion_funcs
- 2.7. prismatique.scan
- 2.7.1. prismatique.scan.generate_probe_positions
- 2.7.2. prismatique.scan.grid_dims_in_units_of_probe_shifts
- 2.7.3. prismatique.scan.pattern_type
- 2.7.4. prismatique.scan.rectangular
- 2.7.4.1. prismatique.scan.rectangular.Params
ParamsParams.core_attrsParams.de_pre_serialization_funcsParams.de_pre_serialize()Params.dump()Params.dumps()Params.get_core_attrs()Params.get_de_pre_serialization_funcs()Params.get_pre_serialization_funcs()Params.get_validation_and_conversion_funcs()Params.load()Params.loads()Params.pre_serialization_funcsParams.pre_serialize()Params.update()Params.validation_and_conversion_funcs
- 2.7.4.1. prismatique.scan.rectangular.Params
- 2.8. prismatique.stem
- 2.8.1. prismatique.stem.output
- 2.8.1.1. prismatique.stem.output.data_size
- 2.8.1.2. prismatique.stem.output.layer_depths
- 2.8.1.3. prismatique.stem.output.Params
ParamsParams.core_attrsParams.de_pre_serialization_funcsParams.de_pre_serialize()Params.dump()Params.dumps()Params.get_core_attrs()Params.get_de_pre_serialization_funcs()Params.get_pre_serialization_funcs()Params.get_validation_and_conversion_funcs()Params.load()Params.loads()Params.pre_serialization_funcsParams.pre_serialize()Params.update()Params.validation_and_conversion_funcs
- 2.8.1.4. prismatique.stem.output.base
- 2.8.1.5. prismatique.stem.output.multislice
- 2.8.1.6. prismatique.stem.output.prism
- 2.8.2. prismatique.stem.sim
- 2.8.2.1. prismatique.stem.sim.run
- 2.8.2.2. prismatique.stem.sim.Params
ParamsParams.core_attrsParams.de_pre_serialization_funcsParams.de_pre_serialize()Params.dump()Params.dumps()Params.get_core_attrs()Params.get_de_pre_serialization_funcs()Params.get_pre_serialization_funcs()Params.get_validation_and_conversion_funcs()Params.load()Params.loads()Params.pre_serialization_funcsParams.pre_serialize()Params.update()Params.validation_and_conversion_funcs
- 2.8.3. prismatique.stem.system
- 2.8.3.1. prismatique.stem.system.ModelParams
ModelParamsModelParams.core_attrsModelParams.de_pre_serialization_funcsModelParams.de_pre_serialize()ModelParams.dump()ModelParams.dumps()ModelParams.get_core_attrs()ModelParams.get_de_pre_serialization_funcs()ModelParams.get_pre_serialization_funcs()ModelParams.get_validation_and_conversion_funcs()ModelParams.load()ModelParams.loads()ModelParams.pre_serialization_funcsModelParams.pre_serialize()ModelParams.update()ModelParams.validation_and_conversion_funcs
- 2.8.3.1. prismatique.stem.system.ModelParams
- 2.8.1. prismatique.stem.output
- 2.9. prismatique.thermal
- 2.9.1. prismatique.thermal.Params
ParamsParams.core_attrsParams.de_pre_serialization_funcsParams.de_pre_serialize()Params.dump()Params.dumps()Params.get_core_attrs()Params.get_de_pre_serialization_funcs()Params.get_pre_serialization_funcs()Params.get_validation_and_conversion_funcs()Params.load()Params.loads()Params.pre_serialization_funcsParams.pre_serialize()Params.update()Params.validation_and_conversion_funcs
- 2.9.1. prismatique.thermal.Params
- 2.10. prismatique.tilt
- 2.10.1. prismatique.tilt.series
- 2.10.2. prismatique.tilt.step_size
- 2.10.3. prismatique.tilt.Params
ParamsParams.core_attrsParams.de_pre_serialization_funcsParams.de_pre_serialize()Params.dump()Params.dumps()Params.get_core_attrs()Params.get_de_pre_serialization_funcs()Params.get_pre_serialization_funcs()Params.get_validation_and_conversion_funcs()Params.load()Params.loads()Params.pre_serialization_funcsParams.pre_serialize()Params.update()Params.validation_and_conversion_funcs
- 2.11. prismatique.version
- 2.12. prismatique.worker
- 2.12.1. prismatique.worker.Params
ParamsParams.core_attrsParams.de_pre_serialization_funcsParams.de_pre_serialize()Params.dump()Params.dumps()Params.get_core_attrs()Params.get_de_pre_serialization_funcs()Params.get_pre_serialization_funcs()Params.get_validation_and_conversion_funcs()Params.load()Params.loads()Params.pre_serialization_funcsParams.pre_serialize()Params.update()Params.validation_and_conversion_funcs
- 2.12.2. prismatique.worker.cpu
- 2.12.2.1. prismatique.worker.cpu.Params
ParamsParams.core_attrsParams.de_pre_serialization_funcsParams.de_pre_serialize()Params.dump()Params.dumps()Params.get_core_attrs()Params.get_de_pre_serialization_funcs()Params.get_pre_serialization_funcs()Params.get_validation_and_conversion_funcs()Params.load()Params.loads()Params.pre_serialization_funcsParams.pre_serialize()Params.update()Params.validation_and_conversion_funcs
- 2.12.2.1. prismatique.worker.cpu.Params
- 2.12.3. prismatique.worker.gpu
- 2.12.3.1. prismatique.worker.gpu.Params
ParamsParams.core_attrsParams.de_pre_serialization_funcsParams.de_pre_serialize()Params.dump()Params.dumps()Params.get_core_attrs()Params.get_de_pre_serialization_funcs()Params.get_pre_serialization_funcs()Params.get_validation_and_conversion_funcs()Params.load()Params.loads()Params.pre_serialization_funcsParams.pre_serialize()Params.update()Params.validation_and_conversion_funcs
- 2.12.3.1. prismatique.worker.gpu.Params
- 2.12.1. prismatique.worker.Params
- 2.1. prismatique.aperture
- 3. Examples
- 3.1. Example of atomic coordinate generation
- 3.2. Example of simulation parameter generation
- 3.3. Example of potential slice generation
- 3.4. Example of \(S\)-matrix generation
- 3.5. Example of running a STEM simulation using the multislice algorithm
- 3.6. Example of running a STEM simulation using the PRISM algorithm
- 3.7. Example of running a HRTEM simulation
- 4. License