iphasimulator.system_builder_packmol ==================================== .. py:module:: iphasimulator.system_builder_packmol .. autoapi-nested-parse:: Advanced Packmol-based solvated-system builder. This module is intentionally separate from the simple GROMACS solvate/genion route. It prepares Packmol inputs for future realistic polymer simulations while keeping the quick validation workflow lightweight. Attributes ---------- .. autoapisummary:: iphasimulator.system_builder_packmol.AVOGADRO_CONSTANT iphasimulator.system_builder_packmol.LITERS_PER_NM3 iphasimulator.system_builder_packmol.TIP3P_WATER_DENSITY_PER_NM3 iphasimulator.system_builder_packmol.TIP3P_WATER_PDB iphasimulator.system_builder_packmol.SODIUM_PDB iphasimulator.system_builder_packmol.CHLORIDE_PDB Classes ------- .. autoapisummary:: iphasimulator.system_builder_packmol.PackmolBuildResult Functions --------- .. autoapisummary:: iphasimulator.system_builder_packmol.estimate_tip3p_water_count iphasimulator.system_builder_packmol.estimate_ion_pairs iphasimulator.system_builder_packmol.build_packmol_solvated_system Module Contents --------------- .. py:data:: AVOGADRO_CONSTANT :value: 6.02214076e+23 .. py:data:: LITERS_PER_NM3 :value: 1e-24 .. py:data:: TIP3P_WATER_DENSITY_PER_NM3 :value: 33.367 .. py:data:: TIP3P_WATER_PDB :value: Multiline-String .. raw:: html
Show Value .. code-block:: python """HETATM 1 O WAT A 1 0.000 0.000 0.000 1.00 0.00 O HETATM 2 H1 WAT A 1 0.096 0.000 0.000 1.00 0.00 H HETATM 3 H2 WAT A 1 -0.024 0.093 0.000 1.00 0.00 H END """ .. raw:: html
.. py:data:: SODIUM_PDB :value: Multiline-String .. raw:: html
Show Value .. code-block:: python """HETATM 1 NA NA A 1 0.000 0.000 0.000 1.00 0.00 Na END """ .. raw:: html
.. py:data:: CHLORIDE_PDB :value: Multiline-String .. raw:: html
Show Value .. code-block:: python """HETATM 1 CL CL A 1 0.000 0.000 0.000 1.00 0.00 Cl END """ .. raw:: html
.. py:class:: PackmolBuildResult Files and counts produced by the Packmol solvated-system builder. .. py:attribute:: output_dir :type: pathlib.Path .. py:attribute:: solvated_pdb_path :type: pathlib.Path .. py:attribute:: packmol_input_path :type: pathlib.Path .. py:attribute:: packmol_log_path :type: pathlib.Path .. py:attribute:: copied_polymer_paths :type: tuple[pathlib.Path, ...] .. py:attribute:: support_structure_paths :type: tuple[pathlib.Path, ...] .. py:attribute:: box_size_nm :type: float .. py:attribute:: water_count :type: int .. py:attribute:: sodium_count :type: int .. py:attribute:: chloride_count :type: int .. py:attribute:: polymer_counts :type: tuple[int, ...] .. py:function:: estimate_tip3p_water_count(box_size_nm: float) -> int Estimate the number of TIP3P waters for a cubic box at bulk density. .. py:function:: estimate_ion_pairs(box_size_nm: float, nacl_concentration_molar: float) -> int Estimate NaCl ion pairs from molarity and cubic box volume. .. py:function:: build_packmol_solvated_system(polymer_structures: collections.abc.Sequence[str | pathlib.Path], output_dir: str | pathlib.Path, *, box_size_nm: float, water_model: str = 'tip3p', nacl_concentration_molar: float = 0.15, num_polymers: int | collections.abc.Sequence[int] = 1, polymer_spacing_nm: float = 1.0, packmol_command: str = 'packmol', run_packmol: bool = True, runner=subprocess.run) -> PackmolBuildResult Build an advanced solvated PHA/TIP3P/NaCl initial PDB using Packmol. This route does not replace the standard GROMACS solvate/genion workflow. It is an advanced builder for future realistic polymer simulations and can later be extended to enzyme/polymer systems. Membranes are intentionally not implemented here yet.