mythos.energy.dna2 ================== .. py:module:: mythos.energy.dna2 .. autoapi-nested-parse:: Implementation of the oxDNA2 energy model in mythos. Submodules ---------- .. toctree:: :maxdepth: 1 /autoapi/mythos/energy/dna2/base_functions/index /autoapi/mythos/energy/dna2/coaxial_stacking/index /autoapi/mythos/energy/dna2/debye/index /autoapi/mythos/energy/dna2/interactions/index /autoapi/mythos/energy/dna2/nucleotide/index /autoapi/mythos/energy/dna2/stacking/index Classes ------- .. autoapisummary:: mythos.energy.dna2.BondedExcludedVolume mythos.energy.dna2.BondedExcludedVolumeConfiguration mythos.energy.dna2.CrossStacking mythos.energy.dna2.CrossStackingConfiguration mythos.energy.dna2.Fene mythos.energy.dna2.FeneConfiguration mythos.energy.dna2.HydrogenBonding mythos.energy.dna2.HydrogenBondingConfiguration mythos.energy.dna2.StackingConfiguration mythos.energy.dna2.UnbondedExcludedVolume mythos.energy.dna2.UnbondedExcludedVolumeConfiguration mythos.energy.dna2.CoaxialStacking mythos.energy.dna2.CoaxialStackingConfiguration mythos.energy.dna2.Debye mythos.energy.dna2.DebyeConfiguration mythos.energy.dna2.Nucleotide mythos.energy.dna2.Stacking Functions --------- .. autoapisummary:: mythos.energy.dna2.default_configs mythos.energy.dna2.default_energy_configs mythos.energy.dna2.default_energy_fns mythos.energy.dna2.default_transform_fn mythos.energy.dna2.create_default_energy_fn Package Contents ---------------- .. py:class:: BondedExcludedVolume Bases: :py:obj:`mythos.energy.base.BaseEnergyFunction` Bonded excluded volume energy function for DNA1 model. .. py:attribute:: params :type: BondedExcludedVolumeConfiguration .. py:method:: pairwise_energies(body: mythos.energy.base.BaseNucleotide, bonded_neighbors: mythos.utils.types.Arr_Bonded_Neighbors_2) -> mythos.utils.types.Arr_Bonded_Neighbors Computes the excluded volume energy for each bonded pair. .. py:method:: compute_energy(nucleotide: mythos.energy.base.BaseNucleotide) -> mythos.utils.types.Scalar Compute the energy of the system given the nucleotide. .. py:class:: BondedExcludedVolumeConfiguration Bases: :py:obj:`mythos.energy.configuration.BaseConfiguration` Configuration for the bonded excluded volume energy function. .. py:attribute:: eps_exc :type: float | None :value: None .. py:attribute:: dr_star_base :type: float | None :value: None .. py:attribute:: sigma_base :type: float | None :value: None .. py:attribute:: sigma_back_base :type: float | None :value: None .. py:attribute:: sigma_base_back :type: float | None :value: None .. py:attribute:: dr_star_back_base :type: float | None :value: None .. py:attribute:: dr_star_base_back :type: float | None :value: None .. py:attribute:: b_base :type: float | None :value: None .. py:attribute:: dr_c_base :type: float | None :value: None .. py:attribute:: b_back_base :type: float | None :value: None .. py:attribute:: dr_c_back_base :type: float | None :value: None .. py:attribute:: b_base_back :type: float | None :value: None .. py:attribute:: dr_c_base_back :type: float | None :value: None .. py:attribute:: required_params :type: tuple[str] :value: ('eps_exc', 'dr_star_base', 'sigma_base', 'sigma_back_base', 'sigma_base_back',... .. py:attribute:: dependent_params :type: tuple[str] :value: ('b_base', 'dr_c_base', 'b_back_base', 'dr_c_back_base', 'b_base_back', 'dr_c_base_back') .. py:method:: init_params() -> BondedExcludedVolumeConfiguration Initializes the dependent parameters in configuration. Should be implemented in the subclass if dependent parameters are present. .. py:class:: CrossStacking Bases: :py:obj:`mythos.energy.base.BaseEnergyFunction` Cross-stacking energy function for DNA1 model. .. py:attribute:: params :type: CrossStackingConfiguration .. py:method:: pairwise_energies(body_i: mythos.energy.base.BaseNucleotide, body_j: mythos.energy.base.BaseNucleotide, unbonded_neighbors: mythos.utils.types.Arr_Unbonded_Neighbors_2) -> mythos.utils.types.Arr_Unbonded_Neighbors Computes the cross stacking energy for each unbonded pair. .. py:method:: compute_energy(nucleotide: mythos.energy.base.BaseNucleotide) -> mythos.utils.types.Scalar Compute the energy of the system given the nucleotide. .. py:class:: CrossStackingConfiguration Bases: :py:obj:`mythos.energy.configuration.BaseConfiguration` Configuration for the cross-stacking energy function. .. py:attribute:: dr_low_cross :type: float | None :value: None .. py:attribute:: dr_high_cross :type: float | None :value: None .. py:attribute:: k_cross :type: float | None :value: None .. py:attribute:: r0_cross :type: float | None :value: None .. py:attribute:: dr_c_cross :type: float | None :value: None .. py:attribute:: theta0_cross_1 :type: float | None :value: None .. py:attribute:: delta_theta_star_cross_1 :type: float | None :value: None .. py:attribute:: a_cross_1 :type: float | None :value: None .. py:attribute:: theta0_cross_2 :type: float | None :value: None .. py:attribute:: delta_theta_star_cross_2 :type: float | None :value: None .. py:attribute:: a_cross_2 :type: float | None :value: None .. py:attribute:: theta0_cross_3 :type: float | None :value: None .. py:attribute:: delta_theta_star_cross_3 :type: float | None :value: None .. py:attribute:: a_cross_3 :type: float | None :value: None .. py:attribute:: theta0_cross_4 :type: float | None :value: None .. py:attribute:: delta_theta_star_cross_4 :type: float | None :value: None .. py:attribute:: a_cross_4 :type: float | None :value: None .. py:attribute:: theta0_cross_7 :type: float | None :value: None .. py:attribute:: delta_theta_star_cross_7 :type: float | None :value: None .. py:attribute:: a_cross_7 :type: float | None :value: None .. py:attribute:: theta0_cross_8 :type: float | None :value: None .. py:attribute:: delta_theta_star_cross_8 :type: float | None :value: None .. py:attribute:: a_cross_8 :type: float | None :value: None .. py:attribute:: b_low_cross :type: float | None :value: None .. py:attribute:: dr_c_low_cross :type: float | None :value: None .. py:attribute:: b_high_cross :type: float | None :value: None .. py:attribute:: dr_c_high_cross :type: float | None :value: None .. py:attribute:: b_cross_1 :type: float | None :value: None .. py:attribute:: delta_theta_cross_1_c :type: float | None :value: None .. py:attribute:: b_cross_2 :type: float | None :value: None .. py:attribute:: delta_theta_cross_2_c :type: float | None :value: None .. py:attribute:: b_cross_3 :type: float | None :value: None .. py:attribute:: delta_theta_cross_3_c :type: float | None :value: None .. py:attribute:: b_cross_4 :type: float | None :value: None .. py:attribute:: delta_theta_cross_4_c :type: float | None :value: None .. py:attribute:: b_cross_7 :type: float | None :value: None .. py:attribute:: delta_theta_cross_7_c :type: float | None :value: None .. py:attribute:: b_cross_8 :type: float | None :value: None .. py:attribute:: delta_theta_cross_8_c :type: float | None :value: None .. py:attribute:: required_params :type: tuple[str] :value: ('dr_low_cross', 'dr_high_cross', 'k_cross', 'r0_cross', 'dr_c_cross', 'theta0_cross_1',... .. py:attribute:: dependent_params :type: tuple[str] :value: ('b_low_cross', 'dr_c_low_cross', 'b_high_cross', 'dr_c_high_cross', 'b_cross_1',... .. py:method:: init_params() -> CrossStackingConfiguration Initializes the dependent parameters in configuration. Should be implemented in the subclass if dependent parameters are present. .. py:class:: Fene Bases: :py:obj:`mythos.energy.base.BaseEnergyFunction` FENE energy function for DNA1 model. .. py:attribute:: params :type: FeneConfiguration .. py:method:: pairwise_energies(body: mythos.energy.base.BaseNucleotide, bonded_neighbors: mythos.utils.types.Arr_Bonded_Neighbors_2) -> mythos.utils.types.Arr_Bonded_Neighbors Computes the FENE energy for each bonded pair. .. py:method:: compute_energy(nucleotide: mythos.energy.base.BaseNucleotide) -> mythos.utils.types.Scalar Compute the energy of the system given the nucleotide. .. py:class:: FeneConfiguration Bases: :py:obj:`mythos.energy.configuration.BaseConfiguration` Configuration for the FENE energy function. .. py:attribute:: eps_backbone :type: float | None :value: None .. py:attribute:: r0_backbone :type: float | None :value: None .. py:attribute:: delta_backbone :type: float | None :value: None .. py:attribute:: fmax :type: float | None :value: None .. py:attribute:: finf :type: float | None :value: None .. py:attribute:: required_params :type: tuple[str] :value: ('eps_backbone', 'r0_backbone', 'delta_backbone', 'fmax', 'finf') .. py:method:: init_params() -> FeneConfiguration Initializes the dependent parameters in configuration. Should be implemented in the subclass if dependent parameters are present. .. py:class:: HydrogenBonding Bases: :py:obj:`mythos.energy.base.BaseEnergyFunction` Hydrogen bonding energy function for DNA1 model. .. py:attribute:: params :type: HydrogenBondingConfiguration .. py:method:: compute_v_hb(body_i: mythos.energy.base.BaseNucleotide, body_j: mythos.energy.base.BaseNucleotide, unbonded_neighbors: mythos.utils.types.Arr_Unbonded_Neighbors) -> mythos.utils.types.Arr_Unbonded_Neighbors Computes the sequence-independent energy for each unbonded pair. .. py:method:: weight(i: int, j: int, seq: mythos.utils.types.Probabilistic_Sequence) -> float Computes the sequence-dependent weight for an unbonded pair. .. py:method:: pairwise_energies(body_i: mythos.energy.base.BaseNucleotide, body_j: mythos.energy.base.BaseNucleotide, seq: mythos.utils.types.Discrete_Sequence, unbonded_neighbors: mythos.utils.types.Arr_Unbonded_Neighbors_2) -> mythos.utils.types.Arr_Unbonded_Neighbors Computes the hydrogen bonding energy for each unbonded pair. .. py:method:: compute_energy(nucleotide: mythos.energy.base.BaseNucleotide) -> mythos.utils.types.Scalar Compute the energy of the system given the nucleotide. .. py:class:: HydrogenBondingConfiguration Bases: :py:obj:`mythos.energy.configuration.BaseConfiguration` Configuration for the hydrogen bonding energy function. .. py:attribute:: eps_hb :type: float | None :value: None .. py:attribute:: a_hb :type: float | None :value: None .. py:attribute:: dr0_hb :type: float | None :value: None .. py:attribute:: dr_c_hb :type: float | None :value: None .. py:attribute:: dr_low_hb :type: float | None :value: None .. py:attribute:: dr_high_hb :type: float | None :value: None .. py:attribute:: a_hb_1 :type: float | None :value: None .. py:attribute:: theta0_hb_1 :type: float | None :value: None .. py:attribute:: delta_theta_star_hb_1 :type: float | None :value: None .. py:attribute:: a_hb_2 :type: float | None :value: None .. py:attribute:: theta0_hb_2 :type: float | None :value: None .. py:attribute:: delta_theta_star_hb_2 :type: float | None :value: None .. py:attribute:: a_hb_3 :type: float | None :value: None .. py:attribute:: theta0_hb_3 :type: float | None :value: None .. py:attribute:: delta_theta_star_hb_3 :type: float | None :value: None .. py:attribute:: a_hb_4 :type: float | None :value: None .. py:attribute:: theta0_hb_4 :type: float | None :value: None .. py:attribute:: delta_theta_star_hb_4 :type: float | None :value: None .. py:attribute:: a_hb_7 :type: float | None :value: None .. py:attribute:: theta0_hb_7 :type: float | None :value: None .. py:attribute:: delta_theta_star_hb_7 :type: float | None :value: None .. py:attribute:: a_hb_8 :type: float | None :value: None .. py:attribute:: theta0_hb_8 :type: float | None :value: None .. py:attribute:: delta_theta_star_hb_8 :type: float | None :value: None .. py:attribute:: ss_hb_weights :type: numpy.ndarray | None :value: None .. py:attribute:: b_low_hb :type: float | None :value: None .. py:attribute:: dr_c_low_hb :type: float | None :value: None .. py:attribute:: b_high_hb :type: float | None :value: None .. py:attribute:: dr_c_high_hb :type: float | None :value: None .. py:attribute:: b_hb_1 :type: float | None :value: None .. py:attribute:: delta_theta_hb_1_c :type: float | None :value: None .. py:attribute:: b_hb_2 :type: float | None :value: None .. py:attribute:: delta_theta_hb_2_c :type: float | None :value: None .. py:attribute:: b_hb_3 :type: float | None :value: None .. py:attribute:: delta_theta_hb_3_c :type: float | None :value: None .. py:attribute:: b_hb_4 :type: float | None :value: None .. py:attribute:: delta_theta_hb_4_c :type: float | None :value: None .. py:attribute:: b_hb_7 :type: float | None :value: None .. py:attribute:: delta_theta_hb_7_c :type: float | None :value: None .. py:attribute:: b_hb_8 :type: float | None :value: None .. py:attribute:: delta_theta_hb_8_c :type: float | None :value: None .. py:attribute:: eps_hb_weights :type: numpy.ndarray | None :value: None .. py:attribute:: pseq :type: mythos.utils.types.Probabilistic_Sequence | None :value: None .. py:attribute:: pseq_constraints :type: mythos.input.sequence_constraints.SequenceConstraints | None :value: None .. py:attribute:: required_params :type: tuple[str] :value: ('eps_hb', 'a_hb', 'dr0_hb', 'dr_c_hb', 'dr_low_hb', 'dr_high_hb', 'a_hb_1', 'theta0_hb_1',... .. py:attribute:: dependent_params :type: tuple[str] :value: ('b_low_hb', 'dr_c_low_hb', 'b_high_hb', 'dr_c_high_hb', 'b_hb_1', 'delta_theta_hb_1_c',... .. py:method:: init_params() -> HydrogenBondingConfiguration Initializes the dependent parameters in configuration. Should be implemented in the subclass if dependent parameters are present. .. py:class:: StackingConfiguration Bases: :py:obj:`mythos.energy.configuration.BaseConfiguration` Configuration for the stacking energy function. .. py:attribute:: eps_stack_base :type: float | None :value: None .. py:attribute:: eps_stack_kt_coeff :type: float | None :value: None .. py:attribute:: dr_low_stack :type: float | None :value: None .. py:attribute:: dr_high_stack :type: float | None :value: None .. py:attribute:: a_stack :type: float | None :value: None .. py:attribute:: dr0_stack :type: float | None :value: None .. py:attribute:: dr_c_stack :type: float | None :value: None .. py:attribute:: theta0_stack_4 :type: float | None :value: None .. py:attribute:: delta_theta_star_stack_4 :type: float | None :value: None .. py:attribute:: a_stack_4 :type: float | None :value: None .. py:attribute:: theta0_stack_5 :type: float | None :value: None .. py:attribute:: delta_theta_star_stack_5 :type: float | None :value: None .. py:attribute:: a_stack_5 :type: float | None :value: None .. py:attribute:: theta0_stack_6 :type: float | None :value: None .. py:attribute:: delta_theta_star_stack_6 :type: float | None :value: None .. py:attribute:: a_stack_6 :type: float | None :value: None .. py:attribute:: neg_cos_phi1_star_stack :type: float | None :value: None .. py:attribute:: a_stack_1 :type: float | None :value: None .. py:attribute:: neg_cos_phi2_star_stack :type: float | None :value: None .. py:attribute:: a_stack_2 :type: float | None :value: None .. py:attribute:: pseq :type: mythos.utils.types.Probabilistic_Sequence | None :value: None .. py:attribute:: pseq_constraints :type: mythos.input.sequence_constraints.SequenceConstraints | None :value: None .. py:attribute:: kt :type: float | None :value: None .. py:attribute:: ss_stack_weights :type: numpy.ndarray | None :value: None .. py:attribute:: b_low_stack :type: float | None :value: None .. py:attribute:: dr_c_low_stack :type: float | None :value: None .. py:attribute:: b_high_stack :type: float | None :value: None .. py:attribute:: dr_c_high_stack :type: float | None :value: None .. py:attribute:: b_stack_4 :type: float | None :value: None .. py:attribute:: delta_theta_stack_4_c :type: float | None :value: None .. py:attribute:: b_stack_5 :type: float | None :value: None .. py:attribute:: delta_theta_stack_5_c :type: float | None :value: None .. py:attribute:: b_stack_6 :type: float | None :value: None .. py:attribute:: delta_theta_stack_6_c :type: float | None :value: None .. py:attribute:: b_neg_cos_phi1_stack :type: float | None :value: None .. py:attribute:: neg_cos_phi1_c_stack :type: float | None :value: None .. py:attribute:: b_neg_cos_phi2_stack :type: float | None :value: None .. py:attribute:: neg_cos_phi2_c_stack :type: float | None :value: None .. py:attribute:: eps_stack :type: float | None :value: None .. py:attribute:: required_params :type: tuple[str] :value: ('eps_stack_base', 'eps_stack_kt_coeff', 'dr_low_stack', 'dr_high_stack', 'a_stack',... .. py:attribute:: dependent_params :type: tuple[str] :value: ('b_low_stack', 'dr_c_low_stack', 'b_high_stack', 'dr_c_high_stack', 'b_stack_4',... .. py:method:: init_params() -> StackingConfiguration Initializes the dependent parameters in configuration. Should be implemented in the subclass if dependent parameters are present. .. py:class:: UnbondedExcludedVolume Bases: :py:obj:`mythos.energy.base.BaseEnergyFunction` Unbonded excluded volume energy function for DNA1 model. .. py:attribute:: params :type: UnbondedExcludedVolumeConfiguration .. py:method:: pairwise_energies(body_i: mythos.energy.base.BaseNucleotide, body_j: mythos.energy.base.BaseNucleotide, unbonded_neighbors: mythos.utils.types.Arr_Unbonded_Neighbors_2) -> mythos.utils.types.Arr_Bonded_Neighbors Computes the excluded volume energy for each unbonded pair. .. py:method:: compute_energy(nucleotide: mythos.energy.base.BaseNucleotide) -> mythos.utils.types.Scalar Compute the energy of the system given the nucleotide. .. py:class:: UnbondedExcludedVolumeConfiguration Bases: :py:obj:`mythos.energy.configuration.BaseConfiguration` Configuration for the unbonded excluded volume energy function. .. py:attribute:: eps_exc :type: float | None :value: None .. py:attribute:: dr_star_base :type: float | None :value: None .. py:attribute:: sigma_base :type: float | None :value: None .. py:attribute:: dr_star_back_base :type: float | None :value: None .. py:attribute:: sigma_back_base :type: float | None :value: None .. py:attribute:: dr_star_base_back :type: float | None :value: None .. py:attribute:: sigma_base_back :type: float | None :value: None .. py:attribute:: dr_star_backbone :type: float | None :value: None .. py:attribute:: sigma_backbone :type: float | None :value: None .. py:attribute:: b_base :type: float | None :value: None .. py:attribute:: dr_c_base :type: float | None :value: None .. py:attribute:: b_back_base :type: float | None :value: None .. py:attribute:: dr_c_back_base :type: float | None :value: None .. py:attribute:: b_base_back :type: float | None :value: None .. py:attribute:: dr_c_base_back :type: float | None :value: None .. py:attribute:: b_backbone :type: float | None :value: None .. py:attribute:: dr_c_backbone :type: float | None :value: None .. py:attribute:: required_params :type: tuple[str] :value: ('eps_exc', 'dr_star_base', 'sigma_base', 'dr_star_back_base', 'sigma_back_base',... .. py:attribute:: dependent_params :type: tuple[str] :value: ('b_base', 'dr_c_base', 'b_back_base', 'dr_c_back_base', 'b_base_back', 'dr_c_base_back',... .. py:method:: init_params() -> UnbondedExcludedVolumeConfiguration Initializes the dependent parameters in configuration. Should be implemented in the subclass if dependent parameters are present. .. py:class:: CoaxialStacking Bases: :py:obj:`mythos.energy.base.BaseEnergyFunction` Coaxial stacking energy function for DNA1 model. .. py:attribute:: params :type: CoaxialStackingConfiguration .. py:method:: pairwise_energies(body_i: mythos.energy.dna2.nucleotide.Nucleotide, body_j: mythos.energy.dna2.nucleotide.Nucleotide, unbonded_neighbors: mythos.utils.types.Arr_Unbonded_Neighbors_2) -> mythos.utils.types.Arr_Unbonded_Neighbors Computes the coaxial stacking energy for each unbonded pair. .. py:method:: compute_energy(nucleotide: mythos.energy.dna2.nucleotide.Nucleotide) -> mythos.utils.types.Scalar Compute the energy of the system given the nucleotide. .. py:class:: CoaxialStackingConfiguration Bases: :py:obj:`mythos.energy.configuration.BaseConfiguration` Configuration for the coaxial stacking energy function. .. py:attribute:: dr_low_coax :type: float | None :value: None .. py:attribute:: dr_high_coax :type: float | None :value: None .. py:attribute:: k_coax :type: float | None :value: None .. py:attribute:: dr0_coax :type: float | None :value: None .. py:attribute:: dr_c_coax :type: float | None :value: None .. py:attribute:: theta0_coax_4 :type: float | None :value: None .. py:attribute:: delta_theta_star_coax_4 :type: float | None :value: None .. py:attribute:: a_coax_4 :type: float | None :value: None .. py:attribute:: theta0_coax_1 :type: float | None :value: None .. py:attribute:: delta_theta_star_coax_1 :type: float | None :value: None .. py:attribute:: a_coax_1 :type: float | None :value: None .. py:attribute:: theta0_coax_5 :type: float | None :value: None .. py:attribute:: delta_theta_star_coax_5 :type: float | None :value: None .. py:attribute:: a_coax_5 :type: float | None :value: None .. py:attribute:: theta0_coax_6 :type: float | None :value: None .. py:attribute:: delta_theta_star_coax_6 :type: float | None :value: None .. py:attribute:: a_coax_6 :type: float | None :value: None .. py:attribute:: a_coax_1_f6 :type: float | None :value: None .. py:attribute:: b_coax_1_f6 :type: float | None :value: None .. py:attribute:: b_low_coax :type: float | None :value: None .. py:attribute:: dr_c_low_coax :type: float | None :value: None .. py:attribute:: b_high_coax :type: float | None :value: None .. py:attribute:: dr_c_high_coax :type: float | None :value: None .. py:attribute:: b_coax_4 :type: float | None :value: None .. py:attribute:: delta_theta_coax_4_c :type: float | None :value: None .. py:attribute:: b_coax_1 :type: float | None :value: None .. py:attribute:: delta_theta_coax_1_c :type: float | None :value: None .. py:attribute:: b_coax_5 :type: float | None :value: None .. py:attribute:: delta_theta_coax_5_c :type: float | None :value: None .. py:attribute:: b_coax_6 :type: float | None :value: None .. py:attribute:: delta_theta_coax_6_c :type: float | None :value: None .. py:attribute:: required_params :type: tuple[str] :value: ('dr_low_coax', 'dr_high_coax', 'k_coax', 'dr0_coax', 'dr_c_coax', 'theta0_coax_4',... .. py:method:: init_params() -> CoaxialStackingConfiguration Initializes the dependent parameters in configuration. Should be implemented in the subclass if dependent parameters are present. .. py:class:: Debye Bases: :py:obj:`mythos.energy.base.BaseEnergyFunction` Debye-huckel energy function for DNA2 model. .. py:attribute:: params :type: DebyeConfiguration .. py:attribute:: is_end :type: mythos.utils.types.Arr_Nucleotide_Int | None :value: None .. py:method:: __post_init__(topology: mythos.input.topology.Topology | None) -> None .. py:method:: pairwise_energies(body_i: mythos.energy.base.BaseNucleotide, body_j: mythos.energy.base.BaseNucleotide, unbonded_neighbors: mythos.utils.types.Arr_Unbonded_Neighbors_2) -> mythos.utils.types.Arr_Bonded_Neighbors Computes the debye-huckel energy for each unbonded pair. .. py:method:: compute_energy(nucleotide: mythos.energy.base.BaseNucleotide) -> mythos.utils.types.Scalar Compute the energy of the system given the nucleotide. .. py:class:: DebyeConfiguration Bases: :py:obj:`mythos.energy.configuration.BaseConfiguration` Configuration for the debye-huckel energy function. .. py:attribute:: q_eff :type: float | None :value: None .. py:attribute:: lambda_factor :type: float | None :value: None .. py:attribute:: prefactor_coeff :type: float | None :value: None .. py:attribute:: kt :type: float | None :value: None .. py:attribute:: salt_conc :type: float | None :value: None .. py:attribute:: half_charged_ends :type: bool | None :value: None .. py:attribute:: lambda_ :type: float | None :value: None .. py:attribute:: kappa :type: float | None :value: None .. py:attribute:: r_high :type: float | None :value: None .. py:attribute:: prefactor :type: float | None :value: None .. py:attribute:: smoothing_coeff :type: float | None :value: None .. py:attribute:: r_cut :type: float | None :value: None .. py:attribute:: required_params :type: tuple[str] :value: ('q_eff', 'lambda_factor', 'prefactor_coeff', 'kt', 'salt_conc', 'half_charged_ends') .. py:method:: init_params() -> DebyeConfiguration Initializes the dependent parameters in configuration. Should be implemented in the subclass if dependent parameters are present. .. py:class:: Nucleotide Bases: :py:obj:`mythos.energy.base.BaseNucleotide` Nucleotide rigid body with additional sites for DNA2. This class is inteneded to be used as a dataclass for a nucleotide rigid body as a `rigid_body_transform_fn` in `jax_md.energy.ComposedEnergyFunction`. .. py:attribute:: center :type: mythos.utils.types.Arr_Nucleotide_3 .. py:attribute:: orientation :type: mythos.utils.types.Arr_Nucleotide_3 | jax_md.rigid_body.Quaternion .. py:attribute:: stack_sites :type: mythos.utils.types.Arr_Nucleotide_3 .. py:attribute:: back_sites :type: mythos.utils.types.Arr_Nucleotide_3 .. py:attribute:: back_sites_dna1 :type: mythos.utils.types.Arr_Nucleotide_3 .. py:attribute:: base_sites :type: mythos.utils.types.Arr_Nucleotide_3 .. py:attribute:: back_base_vectors :type: mythos.utils.types.Arr_Nucleotide_3 .. py:attribute:: base_normals :type: mythos.utils.types.Arr_Nucleotide_3 .. py:attribute:: cross_prods :type: mythos.utils.types.Arr_Nucleotide_3 .. py:method:: from_rigid_body(rigid_body: jax_md.rigid_body.RigidBody, com_to_backbone_x: mythos.utils.types.Scalar, com_to_backbone_y: mythos.utils.types.Scalar, com_to_backbone_dna1: mythos.utils.types.Scalar, com_to_hb: mythos.utils.types.Scalar, com_to_stacking: mythos.utils.types.Scalar) -> Nucleotide :staticmethod: Class method to precompute nucleotide sites from a rigid body. .. py:class:: Stacking Bases: :py:obj:`mythos.energy.dna1.Stacking` Stacking energy function for DNA2 model. .. py:attribute:: params :type: mythos.energy.dna1.StackingConfiguration .. py:method:: pairwise_energies(body: mythos.energy.dna2.nucleotide.Nucleotide, seq: mythos.utils.types.Discrete_Sequence, bonded_neighbors: mythos.utils.types.Arr_Bonded_Neighbors_2) -> mythos.utils.types.Arr_Bonded_Neighbors Computes the stacking energy for each bonded pair. .. py:method:: compute_energy(nucleotide: mythos.energy.dna2.nucleotide.Nucleotide) -> mythos.utils.types.Scalar Compute the energy of the system given the nucleotide. .. py:function:: default_configs() -> tuple[mythos.utils.types.PyTree, mythos.utils.types.PyTree] Return the default simulation and energy configurations for dna2. .. py:function:: default_energy_configs(overrides: dict = MappingProxyType({}), opts: dict = MappingProxyType({})) -> list[mythos.energy.configuration.BaseConfiguration] Return the default configurations for the energy functions for dna2. .. py:function:: default_energy_fns() -> list[mythos.energy.base.BaseEnergyFunction] Return the default energy functions for dna2. .. py:function:: default_transform_fn() -> callable Return the default transform function for dna2 simulations. .. py:function:: create_default_energy_fn(topology: mythos.input.topology.Topology, displacement_fn: callable = DEFAULT_DISPLACEMENT) -> mythos.energy.base.EnergyFunction Create the default oxDNA2 energy function. This creates the composed energy function from the default set of function classes, associated configs, and the default transform function - built for the provided topology and displacement function. :param topology: The topology of the system. :param displacement_fn: The displacement function to use. defaults to DEFAULT_DISPLACEMENT.