Analytically broaden the PDF

Description

Analytically broaden the PDF using Gaussians

Usage

1
broadPDF(pdfob, sigma=0,  delta=NA, n=NA, nAtomTypes=1)

Arguments

pdfob

A list with elements r and gr that represent distances and values of the PDF, respectively. For core/shell particles elements gr_CCSS and gr_CS should also be specified. A list of this form is returned by function calcPDF.

sigma

numeric vector which, if not NA, determines the variance of the Gaussian displacements from the mean atomic position throughout the nanoparticle. If the particle core and shell contain Nc and Ns different atom types, respectively, then the first Nc elements in vector sigma correspond to atoms within the core and the next Ns elements describe Gaussian displacements for the shell atoms. See examples section in simPart for details.

delta, n

numerics describing the correlation parameters n and δ for thermal atomic displacements; see details.

nAtomTypes

number of different types of atoms in the particle.

Details

The correlated atomic displacement parameter for the atoms μ and ν is calculated as

σ^2_{μ, ν} = (σ^2_{μ} + σ^2_{ν} ) [ 1 - \frac{δ}{r^n}].

Value

A list with elements r and gr that represent distances and values of the PDF, respectively.

Note

This routine can be a faster way to account for thermal displacements than displacePart.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
## simulate particle
Cu1 <- createAtom("Cu", sigma=0.012) 
Cu2 <- createAtom("Cu", sigma=0.008) 
part <- simPart(atoms=list(Cu1), atomsShell=list(Cu2), r=20, 
    rcore=16, latticep=4.08, latticepShell=3.89)

## use a stochastic model for displacements 
partx <- displacePart(part, sigma=attributes(part)$sigma) 
gr1 <- calcPDF(partx, maxR=40) 

## use analytical broadening
gr2 <- calcPDF(part, maxR=40)
gr2 <- broadPDF(gr2, sigma=attributes(part)$sigma, nAtomTypes=2)

# plot PDFs calculated using both methods
matplot(gr1$r, cbind(gr1$gr, gr2$gr), type="l", lty=1, lwd=1:2)