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.ndarrayAtom 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.
paramatomgroupAtomGroupMDAnalysis 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= NoneLog every N frames when running in serial (None disables logging).
Returns
listList 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.DataFrameCompute 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.
paramsimulationSimulationSimulation instance with universe and build input.
paramspecies_filterlist[str] | None= NoneResidue names to analyze. Default: ["ILN", "ILP"]
paramstart_nsfloat | None= 0.0Start time for analysis in ns.
paramstrideint= 1Frame stride.
parambackendstr= 'multiprocessing'MDAnalysis backend for parallel execution.
paramn_workersint= 4Number of workers for parallel execution.
paramlog_everyint | None= 50Log every N frames when running in serial backend.
paramverbosebool= FalsePass through to MDAnalysis AnalysisFromFunction.run to control progress output.
Returns
pandas.DataFrameColumns: time_ns, frame, resname, resid, rg_total, rg_xy, rg_z
