Ejemplo n.º 1
0
    def __calc_ab(model, bonds, angles):
        y0 = []
        for i1 in range(0, len(bonds), 2):
            i2 = i1 + 1
            x = model.coords[i1*3] - model.coords[i2*3]
            y = model.coords[i1*3+1] - model.coords[i2*3+1]
            z = model.coords[i1*3+2] - model.coords[i2*3+2]
            y0.append(sqrt(x*x+y*y+z*z))

        for i1 in range(0, len(angles), 3):
            i2 = i1 + 1
            i3 = i2 + 2
            v1 = XYZ(model.coords[i1*3], model.coords[i1*3+1], model.coords[i1*3+2])
            v2 = XYZ(model.coords[i2*3], model.coords[i2*3+1], model.coords[i2*3+2])
            v3 = XYZ(model.coords[i3*3], model.coords[i3*3+1], model.coords[i3*3+2]) 
            y0.append(angle(v1, v2, v3))
        
        return y0
Ejemplo n.º 2
0
 def alpha(self):
     return angle(self.vb, self.vc)