John W. Campbell
This class provides a class for finding a crystal setting for a known cell
from spot positions on small oscillation angle monochromatic rotation images
using Fourier transform methods.
Class, constructor and methods:
Class Details
Accessible Fields
Constructor
Setting Method
- Package:
- Jdl.JdlPX;
- Class name:
- JdlSetting3DFT
- Class definition:
- public class JdlSetting3DFT
- Extends:
- Object
- Implements:
- none
- Actions:
- none
The following accessible fields have been defined:
- static boolean show_debug
This constructor sets up the parameters required to enable a setting
to be found.
Constructor:
Constructor
Create a JdlSetting3DFT object.
- Constructor Definition:
- public JdlSetting3DFT(JdlSearchImageSpotsList spotlist, JdlCell cell, int latt, Jdl3x3 umat, JdlPositionedDetector posdet, double x_cen, double y_cen, double pixsiz_x, double pixsiz_y, JdlDistortionCorrections distor)
- Parameters List:
- spotlist
- A list of spot positions found from an image search.
- cell
- The cell parameters.
- latt
- The lattice type 1-7.
- umat
- The 'U' matrix
- posdet
- The positioned detector details.
- x_cen
- The 'x' centre position of the image in rasters.
- y_cen
- The 'y' centre position of the image in rasters.
- pixsiz_x
- The 'x' pixel size in mm.
- pixsiz_y
- The 'y' pixel size in mm.
- distor
- A distortions correction object - may be null if not required.
This section has a method to determine possible solutions for the setting.
Methods:
Find setting - findCrystalSetting
This method attempts to find solutions for the crystal setting based on
the data stored in the object and the additional parameters passed to
this method.
- Method Definition:
- public JdlSettingSolution[] findCrystalSetting(int method, double ang_tol, JdlProgressHandler progress)
- Parameters List:
- method
- Method number 1 or 2. Two possible methods are available for
finding peaks in a Fourier transform corresponding to the cell vectors.
Method 1: Rotate a vector in appropriate steps around two angles, one through
90 degress and the other through 360 degrees (As done in MOSFLM program) and
look for peaks along those vectors at the cell distances (looking at a
grid of 9 points around each such position) and calculating the Fourier
transform at these points.
Method 2: Search on an orthogonal grid but only calculate Fourier transform
values for points which are within 1.5 grid units of a given cell vector
length.
As the required parts of the Fourier transforms a very sparse for both
methods, a simple Fourier transform calculation is done (but using integer
arithmetic) rather than using a Fast Fourier Transform.
- ang_tol
- The maximum difference in degrees from an input cell angle
to consider as a reasonable match e.g. 2.0 degrees.
- progress
- Progress handler (may be null if not required)
- Method Return:
-
Returns an array of JdlSettingSolution objects containing details
of possible solutions for the setting. If none are found a null is returned.
⇑ Up 2
⇑ Up 1
⇑ Top of this