jax_dna.energy.dna2
Implementation of the oxDNA2 energy model in jax_dna.
Submodules
Classes
Bonded excluded volume energy function for DNA1 model. |
|
Configuration for the bonded excluded volume energy function. |
|
Cross-stacking energy function for DNA1 model. |
|
Configuration for the cross-stacking energy function. |
|
FENE energy function for DNA1 model. |
|
Configuration for the FENE energy function. |
|
Hydrogen bonding energy function for DNA1 model. |
|
Configuration for the hydrogen bonding energy function. |
|
Configuration for the stacking energy function. |
|
Unbonded excluded volume energy function for DNA1 model. |
|
Configuration for the unbonded excluded volume energy function. |
|
Coaxial stacking energy function for DNA1 model. |
|
Configuration for the coaxial stacking energy function. |
|
Debye-huckel energy function for DNA2 model. |
|
Configuration for the debye-huckel energy function. |
|
Nucleotide rigid body with additional sites for DNA2. |
|
Stacking energy function for DNA2 model. |
Package Contents
- class jax_dna.energy.dna2.BondedExcludedVolume[source]
Bases:
jax_dna.energy.base.BaseEnergyFunctionBonded excluded volume energy function for DNA1 model.
- pairwise_energies(body: jax_dna.energy.base.BaseNucleotide, bonded_neighbors: jax_dna.utils.types.Arr_Bonded_Neighbors_2) jax_dna.utils.types.Arr_Bonded_Neighbors[source]
Computes the excluded volume energy for each bonded pair.
- __call__(body: jax_dna.energy.base.BaseNucleotide, seq: jax_dna.utils.types.Sequence, bonded_neighbors: jax_dna.utils.types.Arr_Bonded_Neighbors_2, unbonded_neighbors: jax_dna.utils.types.Arr_Unbonded_Neighbors_2) jax_dna.utils.types.Scalar[source]
Calculate the energy of the system.
- class jax_dna.energy.dna2.BondedExcludedVolumeConfiguration[source]
Bases:
jax_dna.energy.configuration.BaseConfigurationConfiguration for the bonded excluded volume energy function.
- required_params: tuple[str] = ('eps_exc', 'dr_star_base', 'sigma_base', 'sigma_back_base', 'sigma_base_back',...
- dependent_params: tuple[str] = ('b_base', 'dr_c_base', 'b_back_base', 'dr_c_back_base', 'b_base_back', 'dr_c_base_back')
- init_params() BondedExcludedVolumeConfiguration[source]
Initializes the dependent parameters in configuration.
Should be implemented in the subclass if dependent parameters are present.
- class jax_dna.energy.dna2.CrossStacking[source]
Bases:
jax_dna.energy.base.BaseEnergyFunctionCross-stacking energy function for DNA1 model.
- params: CrossStackingConfiguration
- pairwise_energies(body_i: jax_dna.energy.base.BaseNucleotide, body_j: jax_dna.energy.base.BaseNucleotide, unbonded_neighbors: jax_dna.utils.types.Arr_Unbonded_Neighbors_2) jax_dna.utils.types.Arr_Unbonded_Neighbors[source]
Computes the cross stacking energy for each unbonded pair.
- __call__(body: jax_dna.energy.base.BaseNucleotide, seq: jax_dna.utils.types.Sequence, bonded_neighbors: jax_dna.utils.types.Arr_Bonded_Neighbors_2, unbonded_neighbors: jax_dna.utils.types.Arr_Unbonded_Neighbors_2) jax_dna.utils.types.Scalar[source]
Calculate the energy of the system.
- class jax_dna.energy.dna2.CrossStackingConfiguration[source]
Bases:
jax_dna.energy.configuration.BaseConfigurationConfiguration for the cross-stacking energy function.
- required_params: tuple[str] = ('dr_low_cross', 'dr_high_cross', 'k_cross', 'r0_cross', 'dr_c_cross', 'theta0_cross_1',...
- dependent_params: tuple[str] = ('b_low_cross', 'dr_c_low_cross', 'b_high_cross', 'dr_c_high_cross', 'b_cross_1',...
- init_params() CrossStackingConfiguration[source]
Initializes the dependent parameters in configuration.
Should be implemented in the subclass if dependent parameters are present.
- class jax_dna.energy.dna2.Fene[source]
Bases:
jax_dna.energy.base.BaseEnergyFunctionFENE energy function for DNA1 model.
- params: FeneConfiguration
- pairwise_energies(body: jax_dna.energy.base.BaseNucleotide, bonded_neighbors: jax_dna.utils.types.Arr_Bonded_Neighbors_2) jax_dna.utils.types.Arr_Bonded_Neighbors[source]
Computes the FENE energy for each bonded pair.
- __call__(body: jax_dna.energy.base.BaseNucleotide, seq: jax_dna.utils.types.Sequence, bonded_neighbors: jax_dna.utils.types.Arr_Bonded_Neighbors_2, unbonded_neighbors: jax_dna.utils.types.Arr_Unbonded_Neighbors_2) jax_dna.utils.types.Scalar[source]
Calculate the energy of the system.
- class jax_dna.energy.dna2.FeneConfiguration[source]
Bases:
jax_dna.energy.configuration.BaseConfigurationConfiguration for the FENE energy function.
- init_params() FeneConfiguration[source]
Initializes the dependent parameters in configuration.
Should be implemented in the subclass if dependent parameters are present.
- class jax_dna.energy.dna2.HydrogenBonding[source]
Bases:
jax_dna.energy.base.BaseEnergyFunctionHydrogen bonding energy function for DNA1 model.
- params: HydrogenBondingConfiguration
- compute_v_hb(body_i: jax_dna.energy.base.BaseNucleotide, body_j: jax_dna.energy.base.BaseNucleotide, unbonded_neighbors: jax_dna.utils.types.Arr_Unbonded_Neighbors) jax_dna.utils.types.Arr_Unbonded_Neighbors[source]
Computes the sequence-independent energy for each unbonded pair.
- pairwise_energies(body_i: jax_dna.energy.base.BaseNucleotide, body_j: jax_dna.energy.base.BaseNucleotide, seq: jax_dna.utils.types.Discrete_Sequence, unbonded_neighbors: jax_dna.utils.types.Arr_Unbonded_Neighbors_2) jax_dna.utils.types.Arr_Unbonded_Neighbors[source]
Computes the hydrogen bonding energy for each unbonded pair.
- __call__(body: jax_dna.energy.base.BaseNucleotide, seq: jax_dna.utils.types.Discrete_Sequence, bonded_neighbors: jax_dna.utils.types.Arr_Bonded_Neighbors_2, unbonded_neighbors: jax_dna.utils.types.Arr_Unbonded_Neighbors_2) jax_dna.utils.types.Scalar[source]
Calculate the energy of the system.
- class jax_dna.energy.dna2.HydrogenBondingConfiguration[source]
Bases:
jax_dna.energy.configuration.BaseConfigurationConfiguration for the hydrogen bonding energy function.
- required_params: tuple[str] = ('eps_hb', 'a_hb', 'dr0_hb', 'dr_c_hb', 'dr_low_hb', 'dr_high_hb', 'a_hb_1', 'theta0_hb_1',...
- dependent_params: tuple[str] = ('b_low_hb', 'dr_c_low_hb', 'b_high_hb', 'dr_c_high_hb', 'b_hb_1', 'delta_theta_hb_1_c',...
- init_params() HydrogenBondingConfiguration[source]
Initializes the dependent parameters in configuration.
Should be implemented in the subclass if dependent parameters are present.
- class jax_dna.energy.dna2.StackingConfiguration[source]
Bases:
jax_dna.energy.configuration.BaseConfigurationConfiguration for the stacking energy function.
- required_params: tuple[str] = ('eps_stack_base', 'eps_stack_kt_coeff', 'dr_low_stack', 'dr_high_stack', 'a_stack',...
- dependent_params: tuple[str] = ('b_low_stack', 'dr_c_low_stack', 'b_high_stack', 'dr_c_high_stack', 'b_stack_4',...
- init_params() StackingConfiguration[source]
Initializes the dependent parameters in configuration.
Should be implemented in the subclass if dependent parameters are present.
- class jax_dna.energy.dna2.UnbondedExcludedVolume[source]
Bases:
jax_dna.energy.base.BaseEnergyFunctionUnbonded excluded volume energy function for DNA1 model.
- pairwise_energies(body_i: jax_dna.energy.base.BaseNucleotide, body_j: jax_dna.energy.base.BaseNucleotide, unbonded_neighbors: jax_dna.utils.types.Arr_Unbonded_Neighbors_2) jax_dna.utils.types.Arr_Bonded_Neighbors[source]
Computes the excluded volume energy for each unbonded pair.
- __call__(body: jax_dna.energy.base.BaseNucleotide, seq: jax_dna.utils.types.Sequence, bonded_neighbors: jax_dna.utils.types.Arr_Bonded_Neighbors_2, unbonded_neighbors: jax_dna.utils.types.Arr_Unbonded_Neighbors_2) jax_dna.utils.types.Scalar[source]
Calculate the energy of the system.
- class jax_dna.energy.dna2.UnbondedExcludedVolumeConfiguration[source]
Bases:
jax_dna.energy.configuration.BaseConfigurationConfiguration for the unbonded excluded volume energy function.
- required_params: tuple[str] = ('eps_exc', 'dr_star_base', 'sigma_base', 'dr_star_back_base', 'sigma_back_base',...
- dependent_params: tuple[str] = ('b_base', 'dr_c_base', 'b_back_base', 'dr_c_back_base', 'b_base_back', 'dr_c_base_back',...
- init_params() UnbondedExcludedVolumeConfiguration[source]
Initializes the dependent parameters in configuration.
Should be implemented in the subclass if dependent parameters are present.
- class jax_dna.energy.dna2.CoaxialStacking[source]
Bases:
jax_dna.energy.base.BaseEnergyFunctionCoaxial stacking energy function for DNA1 model.
- params: CoaxialStackingConfiguration
- pairwise_energies(body_i: jax_dna.energy.dna2.nucleotide.Nucleotide, body_j: jax_dna.energy.dna2.nucleotide.Nucleotide, unbonded_neighbors: jax_dna.utils.types.Arr_Unbonded_Neighbors_2) jax_dna.utils.types.Arr_Unbonded_Neighbors[source]
Computes the coaxial stacking energy for each unbonded pair.
- __call__(body: jax_dna.energy.dna2.nucleotide.Nucleotide, seq: jax_dna.utils.types.Sequence, bonded_neighbors: jax_dna.utils.types.Arr_Bonded_Neighbors_2, unbonded_neighbors: jax_dna.utils.types.Arr_Unbonded_Neighbors_2) jax_dna.utils.types.Scalar[source]
Calculate the energy of the system.
- class jax_dna.energy.dna2.CoaxialStackingConfiguration[source]
Bases:
jax_dna.energy.configuration.BaseConfigurationConfiguration for the coaxial stacking energy function.
- required_params: tuple[str] = ('dr_low_coax', 'dr_high_coax', 'k_coax', 'dr0_coax', 'dr_c_coax', 'theta0_coax_4',...
- init_params() CoaxialStackingConfiguration[source]
Initializes the dependent parameters in configuration.
Should be implemented in the subclass if dependent parameters are present.
- class jax_dna.energy.dna2.Debye[source]
Bases:
jax_dna.energy.base.BaseEnergyFunctionDebye-huckel energy function for DNA2 model.
- params: DebyeConfiguration
- pairwise_energies(body_i: jax_dna.energy.base.BaseNucleotide, body_j: jax_dna.energy.base.BaseNucleotide, unbonded_neighbors: jax_dna.utils.types.Arr_Unbonded_Neighbors_2) jax_dna.utils.types.Arr_Bonded_Neighbors[source]
Computes the debye-huckel energy for each unbonded pair.
- __call__(body: jax_dna.energy.base.BaseNucleotide, seq: jax_dna.utils.types.Discrete_Sequence, bonded_neighbors: jax_dna.utils.types.Arr_Bonded_Neighbors_2, unbonded_neighbors: jax_dna.utils.types.Arr_Unbonded_Neighbors_2) jax_dna.utils.types.Scalar[source]
Calculate the energy of the system.
- class jax_dna.energy.dna2.DebyeConfiguration[source]
Bases:
jax_dna.energy.configuration.BaseConfigurationConfiguration for the debye-huckel energy function.
- required_params: tuple[str] = ('q_eff', 'lambda_factor', 'prefactor_coeff', 'kt', 'salt_conc', 'is_end', 'half_charged_ends')
- init_params() DebyeConfiguration[source]
Initializes the dependent parameters in configuration.
Should be implemented in the subclass if dependent parameters are present.
- class jax_dna.energy.dna2.Nucleotide[source]
Bases:
jax_dna.energy.base.BaseNucleotideNucleotide 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.
- center: jax_dna.utils.types.Arr_Nucleotide_3
- orientation: jax_dna.utils.types.Arr_Nucleotide_3 | jax_md.rigid_body.Quaternion
- stack_sites: jax_dna.utils.types.Arr_Nucleotide_3
- back_sites: jax_dna.utils.types.Arr_Nucleotide_3
- back_sites_dna1: jax_dna.utils.types.Arr_Nucleotide_3
- base_sites: jax_dna.utils.types.Arr_Nucleotide_3
- back_base_vectors: jax_dna.utils.types.Arr_Nucleotide_3
- base_normals: jax_dna.utils.types.Arr_Nucleotide_3
- cross_prods: jax_dna.utils.types.Arr_Nucleotide_3
- static from_rigid_body(rigid_body: jax_md.rigid_body.RigidBody, com_to_backbone_x: jax_dna.utils.types.Scalar, com_to_backbone_y: jax_dna.utils.types.Scalar, com_to_backbone_dna1: jax_dna.utils.types.Scalar, com_to_hb: jax_dna.utils.types.Scalar, com_to_stacking: jax_dna.utils.types.Scalar) Nucleotide[source]
Class method to precompute nucleotide sites from a rigid body.
- class jax_dna.energy.dna2.Stacking[source]
Bases:
jax_dna.energy.dna1.StackingStacking energy function for DNA2 model.
- pairwise_energies(body: jax_dna.energy.dna2.nucleotide.Nucleotide, seq: jax_dna.utils.types.Discrete_Sequence, bonded_neighbors: jax_dna.utils.types.Arr_Bonded_Neighbors_2) jax_dna.utils.types.Arr_Bonded_Neighbors[source]
Computes the stacking energy for each bonded pair.
- __call__(body: jax_dna.energy.dna2.nucleotide.Nucleotide, seq: jax_dna.utils.types.Discrete_Sequence, bonded_neighbors: jax_dna.utils.types.Arr_Bonded_Neighbors_2, unbonded_neighbors: jax_dna.utils.types.Arr_Unbonded_Neighbors_2) jax_dna.utils.types.Scalar[source]
Calculate the energy of the system.