prolint.analysis.density ======================== .. py:module:: prolint.analysis.density .. autoapi-nested-parse:: Density map analysis for spatial distribution of database molecules. Attributes ---------- .. autoapisummary:: prolint.analysis.density.logger Classes ------- .. autoapisummary:: prolint.analysis.density.RadialDensityAnalysis prolint.analysis.density.DensityMapAnalysis Module Contents --------------- .. py:data:: logger .. py:class:: RadialDensityAnalysis(universe, contacts: prolint.core.contact_provider.ComputedContacts) Bases: :py:obj:`prolint.analysis.base.BaseAnalysis` Radial density profile analysis. Computes radially-averaged density from a 2D density map, useful for analyzing the radial distribution of database molecules around the query. .. seealso:: :py:obj:`DensityMapAnalysis` Generates the 2D density map input .. py:attribute:: name :value: 'radial_density' Analysis name for registry. .. py:attribute:: description :value: 'Radial density profile from 2D density map' Human-readable description. .. py:method:: run(density: List[List[float]], x_edges: List[float], y_edges: List[float], n_bins: int = 50) -> prolint.analysis.base.AnalysisResult Compute radial density profile from 2D density map. :param density: 2D density array from DensityMapAnalysis. :type density: list of list of float :param x_edges: X bin edges from DensityMapAnalysis. :type x_edges: list of float :param y_edges: Y bin edges from DensityMapAnalysis. :type y_edges: list of float :param n_bins: Number of radial bins. :type n_bins: int, default=50 :returns: Result with data containing: - r_centers : list of float radial bin centers - radial_density : list of float density values - r_max : float maximum radius :rtype: AnalysisResult .. py:class:: DensityMapAnalysis(universe, contacts: prolint.core.contact_provider.ComputedContacts) Bases: :py:obj:`prolint.analysis.base.BaseAnalysis` Compute 2D spatial density maps of database molecules around query. Computes the 2D spatial distribution of database molecule positions relative to the query center of mass over trajectory frames. .. seealso:: :py:obj:`RadialDensityAnalysis` Radially-averaged density from this output .. py:attribute:: name :value: 'density_map' Analysis name for registry. .. py:attribute:: description :value: '2D spatial density of database molecules around query' Human-readable description. .. py:method:: run(frame_start: int = 0, frame_end: Optional[int] = None, frame_step: int = 1, bins: int = 50, database_types: Optional[List[str]] = None) -> prolint.analysis.base.AnalysisResult Compute 2D density map of database molecules. :param frame_start: First frame to process. :type frame_start: int, default=0 :param frame_end: Last frame (exclusive). Defaults to total frames. :type frame_end: int, optional :param frame_step: Step between frames. :type frame_step: int, default=1 :param bins: Number of bins in each dimension. :type bins: int, default=50 :param database_types: Database residue names to include (e.g., ["CHOL", "POPC"]). If None, includes all database atoms. :type database_types: list of str, optional :returns: Result with data containing: - density : 2D list of float density values - x_edges, y_edges : list of float bin edges - x_centers, y_centers : list of float bin centers - query_density : 2D list of float query atom density :rtype: AnalysisResult