Configuration
Definitions
Parakeet is configured via a YAML configuration file. The parameters of the configuration file are defined below and additional example configuation files can be seen at the bottom of the page.
- $defs:
- Auto:
- description:
An enumeration just containing auto
- enum:
auto
- title:
Auto
- type:
string
- Beam:
- additionalProperties:
False
- description:
A model to describe the beam
- properties:
- energy:
- description:
The electron energy (keV)
- title:
Energy
- type:
number
- energy_spread:
- description:
The energy spread (dE/E)
- title:
Energy Spread
- type:
number
- acceleration_voltage_spread:
- description:
The acceleration voltage spread (dV/V)
- title:
Acceleration Voltage Spread
- type:
number
- electrons_per_angstrom:
- description:
The number of electrons per square angstrom. This is the dose per image (across all fractions).
- title:
Electrons Per Angstrom
- type:
number
- illumination_semiangle:
- description:
The illumination semiangle (mrad).
- title:
Illumination Semiangle
- type:
number
- theta:
- description:
The beam tilt theta angle (deg)
- title:
Theta
- type:
number
- phi:
- description:
The beam tilt phi angle (deg)
- title:
Phi
- type:
number
- incident_wave:
- anyOf:
- type:
string
- type:
null
- description:
The filename of a custom input wave function. The default is a flat field.
- title:
Incident Wave
- title:
Beam
- type:
object
- CoordinateFile:
- additionalProperties:
False
- description:
A model to describe a local coordinate file
- properties:
- filename:
- anyOf:
- type:
string
- type:
null
- description:
The filename of the atomic coordinates to use (*.pdb, *.cif)
- title:
Filename
- recentre:
- description:
Recentre the coordinates
- title:
Recentre
- type:
boolean
- scale:
- description:
Scale the coordinates x’ = x * scale
- title:
Scale
- type:
number
- position:
- anyOf:
- maxItems:
3
- minItems:
3
- prefixItems:
- type:
number
- type:
number
- type:
number
- type:
array
- type:
null
- description:
The model position (A, A, A). If recentre if set then the model will be centred on the given position. If recentre if not set then the model will be translated by the given position.
- examples:
position: null # Assign [0, 0, 0] position
position: [1, 2, 3] # Assign known position
- title:
Position
- orientation:
- anyOf:
- maxItems:
3
- minItems:
3
- prefixItems:
- type:
number
- type:
number
- type:
number
- type:
array
- type:
null
- description:
The model orientation defined as a rotation vector where the direction of the vector gives the rotation axis and the magnitude of the vector gives the rotation angle in radians. Setting this to null or an empty list will cause parakeet to give a zero orientation
- examples:
orienation: null # Assign [0, 0, 0] orienation
orienation: [1, 2, 3] # Assign known orienation
- title:
Orientation
- title:
CoordinateFile
- type:
object
- Cube:
- additionalProperties:
False
- description:
A model of a cubic sample shape
- properties:
- length:
- description:
The cube side length (A)
- exclusiveMinimum:
0.0
- title:
Length
- type:
number
- title:
Cube
- type:
object
- Cuboid:
- additionalProperties:
False
- description:
A model of a cuboid sample shape
- properties:
- length_x:
- description:
The cuboid X side length (A)
- exclusiveMinimum:
0.0
- title:
Length X
- type:
number
- length_y:
- description:
The cuboid Y side length (A)
- exclusiveMinimum:
0.0
- title:
Length Y
- type:
number
- length_z:
- description:
The cuboid Z side length (A)
- exclusiveMinimum:
0.0
- title:
Length Z
- type:
number
- title:
Cuboid
- type:
object
- Cylinder:
- additionalProperties:
False
- description:
A model of a cylindrical sample shape
- properties:
- length:
- description:
The cylinder length (A)
- exclusiveMinimum:
0.0
- title:
Length
- type:
number
- radius:
- anyOf:
- type:
number
- items:
- type:
number
- type:
array
- description:
The cylinder radius (A)
- gt:
0
- title:
Radius
- axis:
- description:
The axis of the cylinder
- maxItems:
3
- minItems:
3
- prefixItems:
- type:
number
- type:
number
- type:
number
- title:
Axis
- type:
array
- offset_x:
- anyOf:
- items:
- type:
number
- type:
array
- type:
null
- description:
The x offset as a function of cylinder y position
- title:
Offset X
- offset_z:
- anyOf:
- items:
- type:
number
- type:
array
- type:
null
- description:
The z offset as a function of cylinder y position
- title:
Offset Z
- title:
Cylinder
- type:
object
- Detector:
- additionalProperties:
False
- description:
A model to describe the detector
- properties:
- nx:
- description:
The number of pixels in X
- title:
Nx
- type:
integer
- ny:
- description:
The number of pixels in Y
- title:
Ny
- type:
integer
- pixel_size:
- description:
The pixel size (A)
- title:
Pixel Size
- type:
number
- dqe:
- description:
Use the DQE model (True/False)
- title:
Dqe
- type:
boolean
- origin:
- description:
The origin of the detector in lab space(A,A)
- maxItems:
2
- minItems:
2
- prefixItems:
- type:
integer
- type:
integer
- title:
Origin
- type:
array
- title:
Detector
- type:
object
- Device:
- description:
An enumeration to set whether to run on the GPU or CPU
- enum:
gpu
cpu
- title:
Device
- type:
string
- Drift:
- additionalProperties:
False
- description:
A model to describe the beam drift
- properties:
- x:
- anyOf:
- type:
number
- maxItems:
2
- minItems:
2
- prefixItems:
- type:
number
- type:
number
- type:
array
- description:
The model for the x drift a + b*theta**4 (A)
- title:
X
- y:
- anyOf:
- type:
number
- maxItems:
2
- minItems:
2
- prefixItems:
- type:
number
- type:
number
- type:
array
- description:
The model for the y drift a + b*theta**4 (A)
- title:
Y
- z:
- anyOf:
- type:
number
- maxItems:
2
- minItems:
2
- prefixItems:
- type:
number
- type:
number
- type:
array
- description:
The model for the z drift a + b*theta**4 (A)
- title:
Z
- title:
Drift
- type:
object
- Ice:
- additionalProperties:
False
- description:
A model to describe a uniform random atomic ice model. If generate is True then generate random water positions with a given density. It is usually better to use the Gaussian Random Field (GRF) ice model which can be set in the simulation model.
- properties:
- generate:
- description:
Generate the atomic ice model (True/False)
- title:
Generate
- type:
boolean
- density:
- description:
The density of the ice (Kg/m3)
- title:
Density
- type:
number
- title:
Ice
- type:
object
- IceParameters:
- additionalProperties:
False
- description:
A model to describe the ice parameters
- properties:
- m1:
- description:
The mean of gaussian 1
- title:
M1
- type:
number
- m2:
- description:
The mean of gaussian 2
- title:
M2
- type:
number
- s1:
- description:
The standard deviation of gaussian 1
- title:
S1
- type:
number
- s2:
- description:
The standard deviation of gaussian 2
- title:
S2
- type:
number
- a1:
- description:
The amplitude of gaussian 1
- title:
A1
- type:
number
- a2:
- description:
The amplitude of gaussian 2
- title:
A2
- type:
number
- density:
- description:
The density of the ice (g/cm^3)
- exclusiveMinimum:
0.0
- title:
Density
- type:
number
- title:
IceParameters
- type:
object
- InelasticModel:
- description:
A model to describe the inelastic scattering mode
- enum:
zero_loss
mp_loss
unfiltered
cc_corrected
- title:
InelasticModel
- type:
string
- Lens:
- additionalProperties:
False
- description:
A model to describe the objective lens
- properties:
- c_10:
- description:
The defocus (A). Negative is underfocus.
- title:
C 10
- type:
number
- c_12:
- description:
The 2-fold astigmatism (A)
- title:
C 12
- type:
number
- phi_12:
- description:
The Azimuthal angle of 2-fold astigmatism (rad)
- title:
Phi 12
- type:
number
- c_21:
- description:
The Axial coma (A)
- title:
C 21
- type:
number
- phi_21:
- description:
The Azimuthal angle of axial coma (rad)
- title:
Phi 21
- type:
number
- c_23:
- description:
The 3-fold astigmatism (A)
- title:
C 23
- type:
number
- phi_23:
- description:
The Azimuthal angle of 3-fold astigmatism (rad)
- title:
Phi 23
- type:
number
- c_30:
- description:
The 3rd order spherical aberration (mm)
- title:
C 30
- type:
number
- c_32:
- description:
The Axial star aberration (A)
- title:
C 32
- type:
number
- phi_32:
- description:
The Azimuthal angle of axial star aberration (rad)
- title:
Phi 32
- type:
number
- c_34:
- description:
The 4-fold astigmatism (A)
- title:
C 34
- type:
number
- phi_34:
- description:
The Azimuthal angle of 4-fold astigmatism (rad)
- title:
Phi 34
- type:
number
- c_41:
- description:
The 4th order axial coma (A)
- title:
C 41
- type:
number
- phi_41:
- description:
The Azimuthal angle of 4th order axial coma (rad)
- title:
Phi 41
- type:
number
- c_43:
- description:
The 3-lobe aberration (A)
- title:
C 43
- type:
number
- phi_43:
- description:
The Azimuthal angle of 3-lobe aberration (rad)
- title:
Phi 43
- type:
number
- c_45:
- description:
The 5-fold astigmatism (A)
- title:
C 45
- type:
number
- phi_45:
- description:
The Azimuthal angle of 5-fold astigmatism (rad)
- title:
Phi 45
- type:
number
- c_50:
- description:
The 5th order spherical aberration (A)
- title:
C 50
- type:
number
- c_52:
- description:
The 5th order axial star aberration (A)
- title:
C 52
- type:
number
- phi_52:
- description:
The Azimuthal angle of 5th order axial star aberration (rad)
- title:
Phi 52
- type:
number
- c_54:
- description:
The 5th order rosette aberration (A)
- title:
C 54
- type:
number
- phi_54:
- description:
The Azimuthal angle of 5th order rosette aberration (rad)
- title:
Phi 54
- type:
number
- c_56:
- description:
The 6-fold astigmatism (A)
- title:
C 56
- type:
number
- phi_56:
- description:
The Azimuthal angle of 6-fold astigmatism (rad)
- title:
Phi 56
- type:
number
- inner_aper_ang:
- description:
The inner aperture angle
- title:
Inner Aper Ang
- type:
number
- outer_aper_ang:
- description:
The outer aperture angle
- title:
Outer Aper Ang
- type:
number
- c_c:
- description:
The chromatic aberration (mm)
- title:
C C
- type:
number
- current_spread:
- description:
The current spread (dI/I)
- title:
Current Spread
- type:
number
- title:
Lens
- type:
object
- LocalMolecule:
- additionalProperties:
False
- description:
A model to describe a local molecule and its instances
- properties:
- filename:
- description:
The filename of the atomic coordinates to use (*.pdb, *.cif)
- title:
Filename
- type:
string
- instances:
- anyOf:
- type:
integer
- items:
- $ref:
- type:
array
- description:
The instances of the molecule to put into the sample model. This field can be set as either an integer or a list of MoleculePose objects. If it is set to an integer == 1 then the molecule will be positioned in the centre of the sample volume; any other integer will result in the molecules being positioned at random positions and orientations in the volume. If a list of MoleculePose objects is given then an arbitrary selection of random and assigned positions and poses can be set
- examples:
instances: 1 # Position 1 molecule at the centre of the sample volume
instances: 10 # Position 10 molecules at random
instances: [ { position: [1, 2, 3], orientation: [4, 5, 6] } ]
- title:
Instances
- required:
filename
- title:
LocalMolecule
- type:
object
- MPLPosition:
- description:
A model to describe the MPL position mode
- enum:
peak
optimal
- title:
MPLPosition
- type:
string
- Microscope:
- additionalProperties:
False
- description:
A model to describe the microscope
- properties:
- model:
- anyOf:
- $ref:
- type:
null
- description:
Use parameters for a given microscope model
- beam:
- $ref:
- description:
The beam model parameters
- lens:
- $ref:
- description:
The lens model parameters
- phase_plate:
- $ref:
- description:
The phase plate parameters
- objective_aperture_cutoff_freq:
- anyOf:
- type:
number
- type:
null
- description:
The objective aperture cutoff frequency (1/A)
- title:
Objective Aperture Cutoff Freq
- detector:
- $ref:
- description:
The detector model parameters
- title:
Microscope
- type:
object
- MicroscopeModel:
- description:
An enumeration to describe the microscope model
- enum:
krios
talos
- title:
MicroscopeModel
- type:
string
- MoleculePose:
- additionalProperties:
False
- description:
A model to describe a molecule position and orientation
- properties:
- position:
- anyOf:
- maxItems:
3
- minItems:
3
- prefixItems:
- type:
number
- type:
number
- type:
number
- type:
array
- type:
null
- description:
The molecule position (A, A, A). Setting this to null or an empty list will cause parakeet to give a random position. The position is given in [x y z] order.
- examples:
position: null # Assign random position
position: [] # Assign random position
position: [1, 2, 3] # Assign known position
- title:
Position
- orientation:
- anyOf:
- maxItems:
3
- minItems:
3
- prefixItems:
- type:
number
- type:
number
- type:
number
- type:
array
- type:
null
- description:
The molecule orientation defined as a rotation vector where the direction of the vector gives the rotation axis and the magnitude of the vector gives the rotation angle in radians. Setting this to null or an empty list will cause parakeet to give a random orientation. The axis is given in [x, y, z] order.
- examples:
orienation: null # Assign random orienation
orienation: [] # Assign random orienation
orienation: [1, 2, 3] # Assign known orienation
- title:
Orientation
- title:
MoleculePose
- type:
object
- Molecules:
- additionalProperties:
False
- description:
A model to describe the molecules to add to the sample
- properties:
- local:
- anyOf:
- items:
- $ref:
- type:
array
- type:
null
- description:
The local molecules to include in the sample model
- title:
Local
- pdb:
- anyOf:
- items:
- $ref:
- type:
array
- type:
null
- description:
The PDB molecules to include in the sample model
- title:
Pdb
- title:
Molecules
- type:
object
- Multiprocessing:
- additionalProperties:
False
- description:
The multiprocessing parameters
- properties:
- device:
- $ref:
- description:
The device to use (cpu or gpu)
- nproc:
- description:
The number of processes
- exclusiveMinimum:
0
- title:
Nproc
- type:
integer
- gpu_id:
- description:
The GPU id for each thread
- items:
- type:
integer
- title:
Gpu Id
- type:
array
- title:
Multiprocessing
- type:
object
- PDBMolecule:
- additionalProperties:
False
- description:
A model to describe a PDB molecule and its instances
- properties:
- id:
- description:
The PDB ID of the atomic coordinates to use (*.pdb, *.cif)
- title:
Id
- type:
string
- instances:
- anyOf:
- type:
integer
- items:
- $ref:
- type:
array
- description:
The instances of the molecule to put into the sample model. This field can be set as either an integer or a list of MoleculePose objects. If it is set to an integer == 1 then the molecule will be positioned in the centre of the sample volume; any other integer will result in the molecules being positioned at random positions and orientations in the volume. If a list of MoleculePose objects is given then an arbitrary selection of random and assigned positions and poses can be set
- examples:
instances: 1 # Position 1 molecule at the centre of the sample volume
instances: 10 # Position 10 molecules at random
instances: [ { position: [1, 2, 3], orientation: [4, 5, 6] } ]
- title:
Instances
- required:
id
- title:
PDBMolecule
- type:
object
- PhasePlate:
- additionalProperties:
False
- description:
A model to describe the phase plate
- properties:
- use:
- description:
Use the phase plate
- title:
Use
- type:
boolean
- phase_shift:
- description:
The phase shift (degrees)
- title:
Phase Shift
- type:
number
- radius:
- description:
The spot radius (1/A)
- exclusiveMinimum:
0.0
- title:
Radius
- type:
number
- title:
PhasePlate
- type:
object
- Sample:
- additionalProperties:
False
- description:
A model to describe the sample
- properties:
- shape:
- $ref:
- description:
The shape parameters of the sample
- box:
- description:
The sample box (A, A, A)
- maxItems:
3
- minItems:
3
- prefixItems:
- type:
number
- type:
number
- type:
number
- title:
Box
- type:
array
- centre:
- description:
The centre of rotation (A, A, A)
- maxItems:
3
- minItems:
3
- prefixItems:
- type:
number
- type:
number
- type:
number
- title:
Centre
- type:
array
- coords:
- anyOf:
- $ref:
- type:
null
- description:
Coordinates to initialise the sample
- molecules:
- anyOf:
- $ref:
- type:
null
- description:
The molecules to include in the sample model
- ice:
- anyOf:
- $ref:
- type:
null
- description:
The atomic ice model parameters.
- sputter:
- anyOf:
- $ref:
- type:
null
- description:
The sputter coating model parameters.
- motion:
- anyOf:
- $ref:
- type:
null
- description:
The sample motion parameters
- title:
Sample
- type:
object
- SampleMotion:
- additionalProperties:
False
- description:
A model to describe sample motion using the viscek model
- properties:
- global_drift:
- description:
The global drift in x, y (A / fraction)
- maxItems:
2
- minItems:
2
- prefixItems:
- type:
number
- type:
number
- title:
Global Drift
- type:
array
- interaction_range:
- description:
The interaction range (A)
- title:
Interaction Range
- type:
number
- velocity:
- description:
The particle velocity (A / fraction)
- title:
Velocity
- type:
number
- noise_magnitude:
- description:
The magnitude of the direction noise (degrees)
- title:
Noise Magnitude
- type:
number
- title:
SampleMotion
- type:
object
- Scan:
- additionalProperties:
False
- description:
A model to describe the scan
- properties:
- mode:
- $ref:
- description:
Set the scan mode
- axis:
- description:
The scan axis vector
- maxItems:
3
- minItems:
3
- prefixItems:
- type:
number
- type:
number
- type:
number
- title:
Axis
- type:
array
- start_angle:
- description:
The start angle for the rotation (deg)
- title:
Start Angle
- type:
number
- step_angle:
- description:
The step angle for the rotation (deg)
- title:
Step Angle
- type:
number
- start_pos:
- anyOf:
- type:
number
- maxItems:
2
- minItems:
2
- prefixItems:
- type:
number
- type:
number
- type:
array
- description:
The start position for a translational scan (A)
- title:
Start Pos
- step_pos:
- anyOf:
- type:
number
- maxItems:
2
- minItems:
2
- prefixItems:
- type:
number
- type:
number
- type:
array
- $ref:
- description:
The step distance for a translational scan (A)
- title:
Step Pos
- num_images:
- anyOf:
- type:
integer
- maxItems:
2
- minItems:
2
- prefixItems:
- type:
integer
- type:
integer
- type:
array
- description:
The number of images to simulate. For a tilt series this is the number of tilt steps. If num_fractions is also set to something other than 1, then there will be num_fractions number of ‘movie frames’ per ‘image’
- title:
Num Images
- num_fractions:
- description:
The number of movie frames. This refers to the frames of the micrograph ‘movies’. For a tilt series, all these images will be at the same step and the dose for a ‘single image’ will be fractionated over these image frames
- title:
Num Fractions
- type:
integer
- num_nhelix:
- description:
The number of scans in an n-helix
- title:
Num Nhelix
- type:
integer
- exposure_time:
- description:
The exposure time per image (s)
- title:
Exposure Time
- type:
number
- angles:
- anyOf:
- items:
- type:
number
- type:
array
- type:
null
- description:
The list of angles to use (deg). This field is used when the modeis set to ‘manual’ or ‘beam tilt’.
- title:
Angles
- positions:
- anyOf:
- items:
- type:
number
- type:
array
- items:
- maxItems:
2
- minItems:
2
- prefixItems:
- type:
number
- type:
number
- type:
array
- type:
array
- type:
null
- description:
The list of positions to use (A). This field is used when the modeis set to ‘manual’ or ‘beam tilt’. Each element in the list can either be a single value in which case the position is specified along the rotation axis, or can be two values in which case the position is specified in X and Y.
- title:
Positions
- defocus_offset:
- anyOf:
- items:
- type:
number
- type:
array
- type:
null
- description:
The list of defoci to use (A). This field is used when the modeis set to ‘manual’ or ‘single_particle’
- title:
Defocus Offset
- theta:
- anyOf:
- type:
number
- items:
- type:
number
- type:
array
- type:
null
- description:
The list of theta angles to use (mrad) for the beam tilt.This must either be the same length as phi or a scalar
- title:
Theta
- phi:
- anyOf:
- type:
number
- items:
- type:
number
- type:
array
- type:
null
- description:
The list of phi angles to use (mrad) for the beam tilt.This must either be the same length as theta or a scalar
- title:
Phi
- drift:
- anyOf:
- $ref:
- type:
null
- description:
The drift model parameters
- title:
Scan
- type:
object
- ScanMode:
- description:
An enumeration to describe the scan mode
- enum:
manual
still
tilt_series
dose_symmetric
single_particle
helical_scan
nhelix
beam_tilt
grid_scan
- title:
ScanMode
- type:
string
- Shape:
- additionalProperties:
False
- description:
A model to describe the sample shape
- properties:
- type:
- $ref:
- description:
The shape of the sample
- cube:
- $ref:
- description:
The parameters of the cubic sample (only used if type == cube)
- cuboid:
- $ref:
- description:
The parameters of the cuboid sample (only used if type == cuboid)
- cylinder:
- $ref:
- description:
The parameters of the cylindrical sample (only used if type == cylinder)
- margin:
- description:
The shape margin used to define how close to the edges particles should be placed (A)
- maxItems:
3
- minItems:
3
- prefixItems:
- type:
number
- type:
number
- type:
number
- title:
Margin
- type:
array
- title:
Shape
- type:
object
- ShapeType:
- description:
An enumeration of sample shape types
- enum:
cube
cuboid
cylinder
- title:
ShapeType
- type:
string
- Simulation:
- additionalProperties:
False
- description:
A model to describe the simulation parameters
- properties:
- slice_thickness:
- description:
The multislice thickness (A)
- title:
Slice Thickness
- type:
number
- margin:
- description:
The margin around the image
- title:
Margin
- type:
integer
- padding:
- description:
Additional padding
- title:
Padding
- type:
integer
- division_thickness:
- description:
Deprecated
- title:
Division Thickness
- type:
integer
- ice:
- description:
Use the Gaussian Random Field ice model (True/False)
- title:
Ice
- type:
boolean
- ice_parameters:
- $ref:
- description:
The parameters for the GRF ice model
- radiation_damage_model:
- description:
Use the radiation damage model (True/False)
- title:
Radiation Damage Model
- type:
boolean
- inelastic_model:
- anyOf:
- $ref:
- type:
null
- description:
The inelastic model parameters
- mp_loss_width:
- anyOf:
- type:
number
- type:
null
- description:
The MPL energy filter width
- title:
Mp Loss Width
- mp_loss_position:
- $ref:
- description:
The MPL energy filter position
- sensitivity_coefficient:
- description:
The radiation damage model sensitivity coefficient. This value relates the value of an isotropic B factor to the number of incident electrons. Typical values for this (calibrated from X-ray and EM data) range between 0.02 and 0.08 where a higher value will result in a larger B factor.
- title:
Sensitivity Coefficient
- type:
number
- title:
Simulation
- type:
object
- Sputter:
- additionalProperties:
False
- description:
A model to describe a sputter coating to the sample
- properties:
- element:
- description:
The symbol of the atom for the sputter coating material
- title:
Element
- type:
string
- thickness:
- description:
The thickness of the sputter coating (A)
- title:
Thickness
- type:
number
- required:
element
thickness
- title:
Sputter
- type:
object
- additionalProperties:
False
- description:
The Parakeet configuration parameters
- properties:
- sample:
- $ref:
- description:
The sample parameters
- microscope:
- $ref:
- description:
The microscope parameters
- scan:
- $ref:
- description:
The scan parameters
- simulation:
- $ref:
- description:
The simulation parameters
- multiprocessing:
- $ref:
- title:
Config
- type:
object
An enumeration just containing auto auto Auto string False A model to describe the beam The electron energy (keV) Energy number The energy spread (dE/E) Energy Spread number The acceleration voltage spread (dV/V) Acceleration Voltage Spread number The number of electrons per square angstrom. This is the dose per image (across all fractions). Electrons Per Angstrom number The illumination semiangle (mrad). Illumination Semiangle number The beam tilt theta angle (deg) Theta number The beam tilt phi angle (deg) Phi number string null The filename of a custom input wave function. The default is a flat field. Incident Wave Beam object False A model to describe a local coordinate file string null The filename of the atomic coordinates to use (*.pdb, *.cif) Filename Recentre the coordinates Recentre boolean Scale the coordinates x’ = x * scale Scale number 3 3 number number number array null The model position (A, A, A). If recentre if set then the model will be centred on the given position. If recentre if not set then the model will be translated by the given position. position: null # Assign [0, 0, 0] position position: [1, 2, 3] # Assign known position Position 3 3 number number number array null The model orientation defined as a rotation vector where the direction of the vector gives the rotation axis and the magnitude of the vector gives the rotation angle in radians. Setting this to null or an empty list will cause parakeet to give a zero orientation orienation: null # Assign [0, 0, 0] orienation orienation: [1, 2, 3] # Assign known orienation Orientation CoordinateFile object False A model of a cubic sample shape The cube side length (A) 0.0 Length number Cube object False A model of a cuboid sample shape The cuboid X side length (A) 0.0 Length X number The cuboid Y side length (A) 0.0 Length Y number The cuboid Z side length (A) 0.0 Length Z number Cuboid object False A model of a cylindrical sample shape The cylinder length (A) 0.0 Length number number number array The cylinder radius (A) 0 Radius The axis of the cylinder 3 3 number number number Axis array number array null The x offset as a function of cylinder y position Offset X number array null The z offset as a function of cylinder y position Offset Z Cylinder object False A model to describe the detector The number of pixels in X Nx integer The number of pixels in Y Ny integer The pixel size (A) Pixel Size number Use the DQE model (True/False) Dqe boolean The origin of the detector in lab space(A,A) 2 2 integer integer Origin array Detector object An enumeration to set whether to run on the GPU or CPU gpu cpu Device string False A model to describe the beam drift number 2 2 number number array The model for the x drift a + b*theta**4 (A) X number 2 2 number number array The model for the y drift a + b*theta**4 (A) Y number 2 2 number number array The model for the z drift a + b*theta**4 (A) Z Drift object False A model to describe a uniform random atomic ice model. If generate is True
then generate random water positions with a given density. It is usually
better to use the Gaussian Random Field (GRF) ice model which can be set in
the simulation model. Generate the atomic ice model (True/False) Generate boolean The density of the ice (Kg/m3) Density number Ice object False A model to describe the ice parameters The mean of gaussian 1 M1 number The mean of gaussian 2 M2 number The standard deviation of gaussian 1 S1 number The standard deviation of gaussian 2 S2 number The amplitude of gaussian 1 A1 number The amplitude of gaussian 2 A2 number The density of the ice (g/cm^3) 0.0 Density number IceParameters object A model to describe the inelastic scattering mode zero_loss mp_loss unfiltered cc_corrected InelasticModel string False A model to describe the objective lens The defocus (A). Negative is underfocus. C 10 number The 2-fold astigmatism (A) C 12 number The Azimuthal angle of 2-fold astigmatism (rad) Phi 12 number The Axial coma (A) C 21 number The Azimuthal angle of axial coma (rad) Phi 21 number The 3-fold astigmatism (A) C 23 number The Azimuthal angle of 3-fold astigmatism (rad) Phi 23 number The 3rd order spherical aberration (mm) C 30 number The Axial star aberration (A) C 32 number The Azimuthal angle of axial star aberration (rad) Phi 32 number The 4-fold astigmatism (A) C 34 number The Azimuthal angle of 4-fold astigmatism (rad) Phi 34 number The 4th order axial coma (A) C 41 number The Azimuthal angle of 4th order axial coma (rad) Phi 41 number The 3-lobe aberration (A) C 43 number The Azimuthal angle of 3-lobe aberration (rad) Phi 43 number The 5-fold astigmatism (A) C 45 number The Azimuthal angle of 5-fold astigmatism (rad) Phi 45 number The 5th order spherical aberration (A) C 50 number The 5th order axial star aberration (A) C 52 number The Azimuthal angle of 5th order axial star aberration (rad) Phi 52 number The 5th order rosette aberration (A) C 54 number The Azimuthal angle of 5th order rosette aberration (rad) Phi 54 number The 6-fold astigmatism (A) C 56 number The Azimuthal angle of 6-fold astigmatism (rad) Phi 56 number The inner aperture angle Inner Aper Ang number The outer aperture angle Outer Aper Ang number The chromatic aberration (mm) C C number The current spread (dI/I) Current Spread number Lens object False A model to describe a local molecule and its instances The filename of the atomic coordinates to use (*.pdb, *.cif) Filename string integer array The instances of the molecule to put into the sample model. This field can be set as either an integer or a list of MoleculePose objects. If it is set to an integer == 1 then the molecule will be positioned in the centre of the sample volume; any other integer will result in the molecules being positioned at random positions and orientations in the volume. If a list of MoleculePose objects is given then an arbitrary selection of random and assigned positions and poses can be set instances: 1 # Position 1 molecule at the centre of the sample volume instances: 10 # Position 10 molecules at random instances: [ { position: [1, 2, 3], orientation: [4, 5, 6] } ] Instances filename LocalMolecule object A model to describe the MPL position mode peak optimal MPLPosition string False A model to describe the microscope null Use parameters for a given microscope model The beam model parameters The lens model parameters The phase plate parameters number null The objective aperture cutoff frequency (1/A) Objective Aperture Cutoff Freq The detector model parameters Microscope object An enumeration to describe the microscope model krios talos MicroscopeModel string False A model to describe a molecule position and orientation 3 3 number number number array null The molecule position (A, A, A). Setting this to null or an empty list will cause parakeet to give a random position. The position is given in [x y z] order. position: null # Assign random position position: [] # Assign random position position: [1, 2, 3] # Assign known position Position 3 3 number number number array null The molecule orientation defined as a rotation vector where the direction of the vector gives the rotation axis and the magnitude of the vector gives the rotation angle in radians. Setting this to null or an empty list will cause parakeet to give a random orientation. The axis is given in [x, y, z] order. orienation: null # Assign random orienation orienation: [] # Assign random orienation orienation: [1, 2, 3] # Assign known orienation Orientation MoleculePose object False A model to describe the molecules to add to the sample array null The local molecules to include in the sample model Local array null The PDB molecules to include in the sample model Pdb Molecules object False The multiprocessing parameters The device to use (cpu or gpu) The number of processes 0 Nproc integer The GPU id for each thread integer Gpu Id array Multiprocessing object False A model to describe a PDB molecule and its instances The PDB ID of the atomic coordinates to use (*.pdb, *.cif) Id string integer array The instances of the molecule to put into the sample model. This field can be set as either an integer or a list of MoleculePose objects. If it is set to an integer == 1 then the molecule will be positioned in the centre of the sample volume; any other integer will result in the molecules being positioned at random positions and orientations in the volume. If a list of MoleculePose objects is given then an arbitrary selection of random and assigned positions and poses can be set instances: 1 # Position 1 molecule at the centre of the sample volume instances: 10 # Position 10 molecules at random instances: [ { position: [1, 2, 3], orientation: [4, 5, 6] } ] Instances id PDBMolecule object False A model to describe the phase plate Use the phase plate Use boolean The phase shift (degrees) Phase Shift number The spot radius (1/A) 0.0 Radius number PhasePlate object False A model to describe the sample The shape parameters of the sample The sample box (A, A, A) 3 3 number number number Box array The centre of rotation (A, A, A) 3 3 number number number Centre array null Coordinates to initialise the sample null The molecules to include in the sample model null The atomic ice model parameters. null The sputter coating model parameters. null The sample motion parameters Sample object False A model to describe sample motion using the viscek model The global drift in x, y (A / fraction) 2 2 number number Global Drift array The interaction range (A) Interaction Range number The particle velocity (A / fraction) Velocity number The magnitude of the direction noise (degrees) Noise Magnitude number SampleMotion object False A model to describe the scan Set the scan mode The scan axis vector 3 3 number number number Axis array The start angle for the rotation (deg) Start Angle number The step angle for the rotation (deg) Step Angle number number 2 2 number number array The start position for a translational scan (A) Start Pos number 2 2 number number array The step distance for a translational scan (A) Step Pos integer 2 2 integer integer array The number of images to simulate. For a tilt series this is the number of tilt steps. If num_fractions is also set to something other than 1, then there will be num_fractions number of ‘movie frames’ per ‘image’ Num Images The number of movie frames. This refers to the frames of the micrograph ‘movies’. For a tilt series, all these images will be at the same step and the dose for a ‘single image’ will be fractionated over these image frames Num Fractions integer The number of scans in an n-helix Num Nhelix integer The exposure time per image (s) Exposure Time number number array null The list of angles to use (deg). This field is used when the modeis set to ‘manual’ or ‘beam tilt’. Angles number array 2 2 number number array array null The list of positions to use (A). This field is used when the modeis set to ‘manual’ or ‘beam tilt’. Each element in the list can either be a single value in which case the position is specified along the rotation axis, or can be two values in which case the position is specified in X and Y. Positions number array null The list of defoci to use (A). This field is used when the modeis set to ‘manual’ or ‘single_particle’ Defocus Offset number number array null The list of theta angles to use (mrad) for the beam tilt.This must either be the same length as phi or a scalar Theta number number array null The list of phi angles to use (mrad) for the beam tilt.This must either be the same length as theta or a scalar Phi null The drift model parameters Scan object An enumeration to describe the scan mode manual still tilt_series dose_symmetric single_particle helical_scan nhelix beam_tilt grid_scan ScanMode string False A model to describe the sample shape The shape of the sample The parameters of the cubic sample (only used if type == cube) The parameters of the cuboid sample (only used if type == cuboid) The parameters of the cylindrical sample (only used if type == cylinder) The shape margin used to define how close to the edges particles should be placed (A) 3 3 number number number Margin array Shape object An enumeration of sample shape types cube cuboid cylinder ShapeType string False A model to describe the simulation parameters The multislice thickness (A) Slice Thickness number The margin around the image Margin integer Additional padding Padding integer Deprecated Division Thickness integer Use the Gaussian Random Field ice model (True/False) Ice boolean The parameters for the GRF ice model Use the radiation damage model (True/False) Radiation Damage Model boolean null The inelastic model parameters number null The MPL energy filter width Mp Loss Width The MPL energy filter position The radiation damage model sensitivity coefficient. This value relates the value of an isotropic B factor to the number of incident electrons. Typical values for this (calibrated from X-ray and EM data) range between 0.02 and 0.08 where a higher value will result in a larger B factor. Sensitivity Coefficient number Simulation object False A model to describe a sputter coating to the sample The symbol of the atom for the sputter coating material Element string The thickness of the sputter coating (A) Thickness number element thickness Sputter objectAuto
Beam
CoordinateFile
Cube
Cuboid
Cylinder
Detector
Device
Drift
Ice
IceParameters
InelasticModel
Lens
LocalMolecule
MPLPosition
Microscope
MicroscopeModel
MoleculePose
Molecules
Multiprocessing
PDBMolecule
PhasePlate
Sample
SampleMotion
Scan
ScanMode
Shape
ShapeType
Simulation
Sputter
The default configuration parameters can be seen by typing the following command:
Examples
Basic configuration
This is the default configuration file as output by parakeet.config.new. This configuration file only shows the most useful parameters which you should set.
microscope:
beam:
electrons_per_angstrom: 30
energy: 300
source_spread: 0.1
detector:
nx: 1000
ny: 1000
pixel_size: 1
lens:
c_10: -20000
c_30: 2.7
c_c: 2.7
sample:
box:
- 1000
- 1000
- 1000
centre:
- 500
- 500
- 500
molecules: null
shape:
cube:
length: 1000.0
cuboid:
length_x: 1000.0
length_y: 1000.0
length_z: 1000.0
cylinder:
length: 1000.0
radius: 500.0
margin:
- 0
- 0
- 0
type: cube
scan:
mode: still
num_images: 1
start_angle: 0
step_angle: 0
simulation:
ice: false
Full configuration
The full configuration is somewhat longer and contains parameters which may not be necessary to modify in most cases:
cluster:
max_workers: 1
method: null
device: gpu
microscope:
beam:
acceleration_voltage_spread: 8.0e-07
defocus_drift: null
drift: null
electrons_per_angstrom: 30
energy: 300
energy_spread: 2.66e-06
phi: 0
source_spread: 0.1
theta: 0
detector:
dqe: false
nx: 1000
ny: 1000
origin:
- 0
- 0
pixel_size: 1
lens:
c_10: -20000
c_30: 2.7
c_c: 2.7
current_spread: 3.3e-07
model: null
phase_plate: false
sample:
box:
- 1000
- 1000
- 1000
centre:
- 500
- 500
- 500
ice: null
molecules: null
shape:
cube:
length: 1000.0
cuboid:
length_x: 1000.0
length_y: 1000.0
length_z: 1000.0
cylinder:
length: 1000.0
radius: 500.0
margin:
- 0
- 0
- 0
type: cube
sputter: null
scan:
axis:
- 0
- 1
- 0
exposure_time: 1
mode: still
num_images: 1
start_angle: 0
start_pos: 0
step_angle: 0
step_pos: 0
simulation:
division_thickness: 100
ice: false
inelastic_model: null
margin: 100
mp_loss_position: peak
mp_loss_width: null
padding: 100
radiation_damage_model: false
sensitivity_coefficient: 0.022
slice_thickness: 3.0
Specifying molecule positions
The following snippet will load one locally defined PDB file and will add a single instance to the sample model. This will put the molecule in the centre of the sample volume.
sample:
molecules:
local:
- filename: myfile.pdb
instances: 1
The following snippet will load one locally defined PDB file and will add a 10 instances to the sample model. This will give the molecules randomly assigned positions and orientations within the sample volume.
sample:
molecules:
local:
- filename: myfile.pdb
instances: 10
The following snippet will load two locally defined PDB files and one model from the PDB. The first model had two instances, the first of which has a random position and random orientation. The second instance has defined position and random orientation. The second molecule has two instances, the first of which has random position and defined orientation and the second instance has defined position and orientation. The PDB model has 10 instances with random position and orientation.
sample:
molecules:
local:
- filename: myfile.pdb
instances:
- position: null
orientation: null
- position: [1, 2, 3]
orientation: null
- filename: another.pdb
instances:
- position: null
orientation: [1, 2, 3]
- position: [1, 2, 3]
orientation: [1, 2, 3]
pdb:
- id: 4V5D
instances: 10
Applying radiation damage
Parakeet implements a simple radiation damage model which uses an isotropic B factor to blur the atomic potential during simulation. The B factor increases linearly with the incident electron dose according to a sensitivity coefficient. To apply the beam damage model you can set the following parameters which will enable the beam damage model and simulate the images using a dose symmetric scheme.
simulation:
radiation_damage_model: true
sensitivity_coefficient: 0.022
scan:
mode: dose_symmetric