The Cmem Builder facilitates the construction of curved membrane systems and curved membrane-protein complex systems. Its workflow, as illustrated in Figure 1, comprises three main stages: input data, curved membrane generation, and output data. Users can provide input by specifying a protein PDB ID, uploading a PDB file, or defining curved lines to shape the membrane. System parameters such as force field, box size, lipid composition, area per lipid (APL, default: 0.6 nm²), and lipid normal displacement (LND, default: 3.0 nm) further refine the lipid assembly. The process involves obtaining curved lines, sampling the curved surface to generate coordinates and normal vectors, determining membrane curvatures, and placing lipids and water molecules. The output includes either a protein/membrane complex system or a standalone curved membrane model, offering flexibility for further simulations.
The core of this procedure is the precise construction of curved surface and the accurate placement of lipids and proteins to ensure biological relevance.
As shown in Figure 2, the XZ panel curvature is defined using a cubic Bézier curve, determined by four control points (P0, P1, P2, P3). Bézier curves are parametric curves widely used in geometric modeling due to their ability to create smooth and flexible shapes. Here, P0 and P3 define the start and end points of the curve, while P1 and P2 serve as intermediate control points that influence curvature and direction. For protein-guided curvature, control points are automatically generated based on membrane insertion data (e.g., tilt angle and depth) obtained from the OPM database. These automatically generated control points provide an initial reference and can be adjusted by users through an interactive visualization interface to fine-tune the membrane shape. Alternatively, users can manually define the control points for custom curvature designs.
The cubic Bézier curve is mathematically expressed as:
$$ B(t) = (1-t)^3 P_0 + 3(1-t)^2 t P_1 + 3(1-t)t^2 P_2 + t^3 P_3, \quad t \in [0,1] $$where B(t) is the position vector of a point on the curve at parameter t, and P0, P1,P2, and P3 are the control points. The parameter t is sampled uniformly in the range [0,1] to generate points along the curve. At each sampling point, the normal vector N(t) is computed using the derivative of the Bézier curve, B^' (t), which is given by:
$$ B'(t) = -3(1-t)^2 P_0 + 3(1-t)^2 P_1 - 6(1-t)t P_1 + 6(1-t)t P_2 - 3t^2 P_2 + 3t^2 P_3 \quad $$The normal vector N(t) is obtained by normalizing the perpendicular vector to B^' (t). For Bézier curve in the XZ plane, the normalized normal vector is calculated as:
$$ N(t) = \frac{(-B_z'(t), B_x'(t))}{\|B'(t)\|} $$where \(-B_z'(t)\) and \(B_x'(t)\) are the X and Z components of \(B'(t)\), and \(\|B'(t)\|\) is the magnitude of the derivative vector. These normal vectors guide the orientation of lipids during placement. The cubic Bézier equation is applied to fit the curve, generating sampling points along its length. At each sampling point, the corresponding normal vector is calculated to guide lipid placement. To construct the 3D membrane, sampling points on the Bézier curve are incrementally rotated around the Z-axis up to 45°, generating new coordinates and associated normal vectors in three-dimensional space. The rotation angle for each step is determined by the arc length of the curve, ensuring uniform sampling. A 0.1 nm arc length interval is used to balance surface resolution and computational efficiency. This process generates a 1/8 section of the curved surface, which contains sufficient geometric detail to construct the membrane. By leveraging the axial symmetry of the curved membrane, only this 1/8 section is computed initially. The complete 360° membrane is then constructed by replicating and rotating the 1/8 section around the Z-axis. This approach significantly reduces computational complexity while ensuring geometric accuracy and structural consistency.
The lipid placement process begins at the starting point \( P_0 (x_0, y_0, z_0) \), the first sampled point on the Bézier surface. Placement is performed iteratively along the \( X \) and \( Y \) directions, with strict geometric criteria ensuring proper lipid packing and orientation (Figure 2).
(1) Initial sampling in the \( Y \)-direction: Sampling points within the range \( y = y_0 \pm 0.25 \) are identified as candidate positions for lipid placement.
(2) Lipid placement along the \( X \)-direction: For each sampling point in the \( y = y_0 \pm 0.25 \), the algorithm iterates along the \( X \)-axis from \( x_0 \) to \( x_0 + (\text{box } X)/2 \). At each \( X \)-coordinate, lipid placement is evaluated based on the following three conditions.
If all three conditions are satisfied, the lipid is placed at the sampling point, and the algorithm proceeds to the next \( X \)-coordinate.
(3) Termination of \( X \)-direction placement: Placement along the \( X \)-axis continues until the \( X \)-coordinate reaches \( x_0 + (\text{box } X)/2 \).
(4) Diagonal movement in \( XY \) plane: After completing lipid placement along the \( X \)-direction, the algorithm identifies a new sampling point \( S_n (x_n, y_n, z_n) \) along the \( XY \) diagonal. The same three placement criteria are applied at \( S_n \) and if satisfied, the lipid is placed. The algorithm then continues placement from \( S_n \).
(5) Reiteration for \( Y \)-direction: The process repeats for new \( Y \) ranges \( y = y_n \pm 0.25 \), iterating over the \( X \)-direction and diagonal movements, until \( y_0 + (\text{box } Y)/2 \) is reached, completing lipid placement in the upper leaflet. For the lower leaflet, the lipid placement process is identical, except that the lipid orientation is aligned anti-parallel to the normal vectors of the sampled surface points.
The generated 1/8 membrane section is symmetrically replicated and rotated in 45° increments around the Z-axis to construct the full curved bilayer (Figure 2). Water molecules are added to the system to fully solvate the membrane. For protein-membrane systems, the protein’s tilt angle and insertion depth are adjusted to match the curvature profile, ensuring proper integration with functionally relevant regions, such as curvature-sensing zones or membrane deformation sites. This alignment preserves the biological relevance of protein-membrane interactions and facilitates accurate modeling of membrane-associated processes.