diff --git a/mrdna/segmentmodel.py b/mrdna/segmentmodel.py index 62502502fed8c7bf3fb23798ce5e3bba28ed2a14..9434d4be098fbf379ee73dc82493557722994e2d 100644 --- a/mrdna/segmentmodel.py +++ b/mrdna/segmentmodel.py @@ -2399,7 +2399,7 @@ class SegmentModel(ArbdModel): sign = 1 if b1_on_fwd_strand else -1 - # if b1.parent.name == "D72" or b2.parent.name == "D72": + # if b1.parent.name == "8-1" or b2.parent.name == "8-1": # print() # print(b1.parent.name, b2.parent.name, b1_on_fwd_strand) # import pdb @@ -2494,7 +2494,7 @@ class SegmentModel(ArbdModel): """ Functions for adding crossover potentials """ def add_ss_crossover_potentials(connection,A,B, add_bond=True): - b1,b2 = [loc.particle for loc in (c.A,c.B)] + b1,b2 = [loc.particle for loc in (A,B)] if (b1,b2,A.on_fwd_strand,B.on_fwd_strand) in processed_crossovers: return @@ -2524,7 +2524,7 @@ class SegmentModel(ArbdModel): def add_crossover_potentials(connection,A,B): ## TODO: use a better description here - b1,b2 = [loc.particle for loc in (c.A,c.B)] + b1,b2 = [loc.particle for loc in (A,B)] if (b1,b2,A.on_fwd_strand,B.on_fwd_strand) in processed_crossovers: return @@ -2542,8 +2542,8 @@ class SegmentModel(ArbdModel): """ Add parallel helices potential, possibly """ ## Add potential to provide a particular orinetation - nt1,nt2 = [l.get_nt_pos() for l in (c.A,c.B)] - is_end1, is_end2 = [nt in (0,l.container.num_nt-1) for nt,l in zip((nt1,nt2),(c.A,c.B))] + nt1,nt2 = [l.get_nt_pos() for l in (A,B)] + is_end1, is_end2 = [nt in (0,l.container.num_nt-1) for nt,l in zip((nt1,nt2),(A,B))] is_T_junction = (is_end1 and not is_end2) or (is_end2 and not is_end1) if (not is_end1) and (not is_end2): @@ -2558,41 +2558,41 @@ class SegmentModel(ArbdModel): if is_T_junction: """ Special case: one helix extends away from another in T-shaped junction """ if is_end1: - b1_forward = c.A.on_fwd_strand if nt1 == 0 else not c.A.on_fwd_strand - add_local_tee_orientation_potential(b1,b2, b1_forward, c.B.on_fwd_strand) + b1_forward = A.on_fwd_strand if nt1 == 0 else not A.on_fwd_strand + add_local_tee_orientation_potential(b1,b2, b1_forward, B.on_fwd_strand) else: - add_local_crossover_strand_orientation_potential(b1,b2, c.A.on_fwd_strand) + add_local_crossover_strand_orientation_potential(b1,b2, A.on_fwd_strand) if is_end2: - b2_forward = c.B.on_fwd_strand if nt2 == 0 else not c.B.on_fwd_strand - add_local_tee_orientation_potential(b2,b1, b2_forward, c.A.on_fwd_strand) + b2_forward = B.on_fwd_strand if nt2 == 0 else not B.on_fwd_strand + add_local_tee_orientation_potential(b2,b1, b2_forward, A.on_fwd_strand) else: - add_local_crossover_strand_orientation_potential(b2,b1, c.B.on_fwd_strand) + add_local_crossover_strand_orientation_potential(b2,b1, B.on_fwd_strand) else: """ Normal case: add orientation potential """ - add_local_crossover_strand_orientation_potential(b1,b2, c.A.on_fwd_strand) - add_local_crossover_strand_orientation_potential(b2,b1, c.B.on_fwd_strand) + add_local_crossover_strand_orientation_potential(b1,b2, A.on_fwd_strand) + add_local_crossover_strand_orientation_potential(b2,b1, B.on_fwd_strand) """ Add connection potentials """ processed_crossovers = set() # pdb.set_trace() for c,A,B in self.get_connections("sscrossover"): - p1,p2 = [loc.container for loc in (c.A,c.B)] + p1,p2 = [loc.container for loc in (A,B)] assert(any([isinstance(p,SingleStrandedSegment) for p in (p1,p2)])) add_ss_crossover_potentials(c,A,B) for c,A,B in self.get_connections("intrahelical"): - ps = [loc.container for loc in (c.A,c.B)] + ps = [loc.container for loc in (A,B)] if any([isinstance(p,SingleStrandedSegment) for p in ps]) and \ any([isinstance(p,DoubleStrandedSegment) for p in ps]): add_ss_crossover_potentials(c,A,B, add_bond=False) for c,A,B in sum([self.get_connections(term) for term in ("crossover","terminal_crossover")],[]): - p1,p2 = [loc.container for loc in (c.A,c.B)] + p1,p2 = [loc.container for loc in (A,B)] if any([isinstance(p,SingleStrandedSegment) for p in (p1,p2)]): add_ss_crossover_potentials(c,A,B)