ProjectionQuadratureRule
ProjectionQuadratureRule#
- class abtem.integrals.ProjectionQuadratureRule(parametrization='lobato', cutoff_tolerance=0.001, taper=0.85, integration_step=0.02, quad_order=8)[source]#
Bases:
abtem.integrals.ProjectionIntegratorPlanProjection integration plan for calculating finite projection integrals based on Gaussian quadrature rule.
- Parameters
parametrization (str or Parametrization, optional) – The potential parametrization describing the radial dependence of the potential. Default is ‘lobato’.
cutoff_tolerance (float, optional) – The error tolerance used for deciding the radial cutoff distance of the potential [eV / e]. Default is 1e-3.
taper (float, optional) – The fraction from the cutoff of the radial distance from the core where the atomic potential starts tapering to zero. Default is 0.85.
integration_step (float, optional) – The step size between integration limits used for calculating the integral table. Default is 0.02.
quad_order (int, optional) – Order of quadrature integration passed to scipy.integrate.fixed_quad. Default is 8.
- __init__(parametrization='lobato', cutoff_tolerance=0.001, taper=0.85, integration_step=0.02, quad_order=8)[source]#
Methods
__init__([parametrization, ...])build(symbol, gpts, sampling[, device])Build projection integrator for given chemical symbol, grid and device.
build_integral_table(symbol, inner_limit)Build table of projection integrals of the radial atomic potential.
copy()Make a copy.
cutoff(symbol)Radial cutoff of the potential for the given chemical symbol.
Attributes
The error tolerance used for deciding the radial cutoff distance of the potential [eV / e].
True indicates that the created projection integrators are implemented only for infinite potential projections.
The step size between integration limits used for calculating the integral table.
The potential parametrization describing the radial dependence of the potential.
True indicates that the created projection integrators are implemented only for periodic potentials.
Order of quadrature integration.
- build(symbol, gpts, sampling, device='cpu')[source]#
Build projection integrator for given chemical symbol, grid and device.
- Parameters
symbol (str) – Chemical symbol to build the projection integrator for.
gpts (two int) – Number of grid points in x and y describing each slice of the potential.
sampling (two float) – Sampling of the potential in x and y [1 / Å].
device (str, optional) – The device used for calculating the potential, ‘cpu’ or ‘gpu’. The default is determined by the user configuration file.
- Returns
projection_integrator – The projection integrator for the specified chemical symbol.
- Return type
- build_integral_table(symbol, inner_limit)[source]#
Build table of projection integrals of the radial atomic potential.
- Parameters
symbol (str) – Chemical symbol to build the integral table.
inner_limit (float, optional) – Smallest radius from the core at which to calculate the projection integral [Å].
- Returns
ProjectionIntegralTable
- Return type
projection_integral_table
- copy()#
Make a copy.
- cutoff(symbol)[source]#
Radial cutoff of the potential for the given chemical symbol.
- Return type
float
- property cutoff_tolerance: float#
The error tolerance used for deciding the radial cutoff distance of the potential [eV / e].
- Return type
float
- property finite: bool#
True indicates that the created projection integrators are implemented only for infinite potential projections.
- Return type
bool
- property integration_step: float#
The step size between integration limits used for calculating the integral table.
- Return type
float
- property parametrization#
The potential parametrization describing the radial dependence of the potential.
- property periodic: bool#
True indicates that the created projection integrators are implemented only for periodic potentials.
- Return type
bool
- property quad_order#
Order of quadrature integration.