The input of a membrane model is a set of points defined typically in several z-slices of a tomogram. Through the workflow specific for this model geometry, Dynamo will create a smooth continuous surface that represents the membrane. The output is a set of crop points and orientations. Each orientation will point in the direction of the outwards normal. The membrane model needs to have a center defined, which is merely used to defined the laterality of the surface (which side is "inward" and which side is "outward" )
Input points in dtmslice
There are different ways to enter points to a membrane model through dtmslice. In all of them, the idea is to select different z-planes and introduce membrane points by clicking on them. The slices don't need to be accessed in any order. However, the set of points clciked in a given slice is assumed to be ordered. Dynamo will create a spline cureve that defines this "z-level" of the membrane through an smooth approximation to the path of the points.
Directly in the dtmslice scene
This is the easiest way: you can just open the tomogram, zoom into the region of interest (with the control [=] or without a box [v]) and select different z slices. On each slice, click on several points in the membrane with the key [c].
This procedure works well when you don't need a lot precision when moving to a z plane to the next one.
Through the montage viewer
- Main article: montage viewer for membrane picking
This option is more complicated to learn, but it pays off in several situations:
- many membranes are present in one tomogram,
- you want to define precisely and (consequently for all models) the step between two z-levels, or
- you want to use the automated tracker.
Whichever input system you use, remember that you need to provide to the model a center point. This point is merely used to determine which side of the membrane is considered interior and which one is considered exterior.
The center is provided by [shift+c] both in dtmslice or in the montage view.
The procedural steps after the input of the user points are the same both from the GUI and the command line:
- Creation of control points.
- Creation of a supporting mesh.
- Refinement of the supporting mesh.
- Creation of the cropping mesh.
- Extraction of the table points.
The property center must have been defined.
Control points are equispaced points distributed along all user points defined for a same level (typically z). They are used as vertices for the initial triangulation that will be used to represent the continuous surface.
The original points need to have been picked in the right order on each z-level.
They are stored in the crop_points property of the model.
The continuous membrane will be represented by a triangulation, stored in the mesh property of the model.
Refining the supporting mesh
Each refinement step subdivides the triangulation stored in the mesh property of the model.
A new triangulation (property crop_mesh) will be defined on top of the membrane defined in the previous step. The final cropping points will be located in the centers of these triangles. The triangulation procedure will try to create these points on a regular distribution with a given average distance. This average distance is provided in pixels as property crop_mesh_parameter A failure to create a cropping mesh normally indicates that the supporting surface (in 'mesh') is too coarse for the expected distance between the particles. You have thus two options:
- Refine the supporting triangulation one (or more) step(s) further, or
- Provide a smaller value for crop_mesh_parameter
Policies for selection of the crop mesh parameter are discussed in the seed oversampling article.
This is merely a formatting step. In this point is crucial that the center property in the model has been already defined.
The methods that represent the steps are:
whose main parameter is crop_mesh_parameter
An example can be found in Example of membrane model workflow through the command line