Core-and-shell particle

To construct a particle made of a core and a shell, use

composite_particle = ba.CoreAndShell(core, shell, ba.AlignAt_Bottom)

where core and shell typically are simple particles generated by the Particle constructor. The alignment argument specifies how the core-and-shell particle is positioned relative to the reference plane (layer interface). Options are AlignAt_Bottom, AlignAt_Center, or AlignAt_Top.

Adjusting the internal positions of the core and shell can be node with a prior call

core.translate(core_position)
shell.translate(shell_position)

The composite_particle can also be translated as a whole.

Note that core must be fully contained in shell. The scattering is computed as the coherent sum of the scattering from shell and core where the scattering power of the latter has been modified by subtracting the scattering power of the shell material.

History

Prior to BornAgain1.19.80, the constructor ParticleCoreShell had the opposite argument order, namely (shell, core).

Example

See Core-and-shell example. Validated through an alternative implementation that uses particle composition, Examples/scatter2d/CoreShellNanoparticles2.py .