MDFactoryMDFactory

lipid_rg

Per-lipid radius of gyration analysis with XY/Z decomposition.

attributeDEFAULT_IL_RESNAMES
= ['ILN', 'ILP']
func_compute_rg_components(positions)tuple[float, float, float]

Compute radius of gyration and its XY/Z components.

parampositionsnp.ndarray

Atom positions, shape (N, 3)

Returns

tuple

(rg_total, rg_xy, rg_z) in Angstroms

func_lipid_rg_frame(atomgroup, residue_index_map, log_every=None)list[dict[str, float | int | str]]

Compute per-lipid Rg components for a single frame.

paramatomgroupAtomGroup

MDAnalysis atom group (typically universe.atoms)

paramresidue_index_maplist[tuple[str, int, np.ndarray]]

List of (resname, resid, atom_indices) tuples for residues to analyze.

paramlog_everyint | None
= None

Log every N frames when running in serial (None disables logging).

Returns

list

List of dicts with per-lipid Rg data

funclipid_rg(simulation, *, species_filter=None, start_ns=0.0, stride=1, backend='multiprocessing', n_workers=4, log_every=50, verbose=False)pd.DataFrame

Compute per-lipid radius of gyration with XY/Z decomposition.

Tracks Rg components for each lipid molecule at each frame to characterize conformational dynamics. By default analyzes IL (ionizable lipid) species.

paramsimulationSimulation

Simulation instance with universe and build input.

paramspecies_filterlist[str] | None
= None

Residue names to analyze. Default: ["ILN", "ILP"]

paramstart_nsfloat | None
= 0.0

Start time for analysis in ns.

paramstrideint
= 1

Frame stride.

parambackendstr
= 'multiprocessing'

MDAnalysis backend for parallel execution.

paramn_workersint
= 4

Number of workers for parallel execution.

paramlog_everyint | None
= 50

Log every N frames when running in serial backend.

paramverbosebool
= False

Pass through to MDAnalysis AnalysisFromFunction.run to control progress output.

Returns

pandas.DataFrame

Columns: time_ns, frame, resname, resid, rg_total, rg_xy, rg_z