Changeset 2326 for trunk/GSASIImath.py
- Timestamp:
- Jun 15, 2016 9:21:13 PM (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/GSASIImath.py
r2321 r2326 1589 1589 return Dist,sig 1590 1590 1591 def CalcAngle( distance_dict, distance_atoms, parmDict):1591 def CalcAngle(angle_dict, angle_atoms, parmDict): 1592 1592 if not len(parmDict): 1593 1593 return 0. 1594 1595 return 0. #angle 1594 pId = angle_dict['pId'] 1595 pfx = '%d::'%(pId) 1596 A = [parmDict['%s::A%d'%(pId,i)] for i in range(6)] 1597 Amat = G2lat.cell2AB(G2lat.A2cell(A))[0] 1598 Oxyz = [parmDict['%s::A%s:%d'%(pId,x,angle_atoms[0])] for x in ['x','y','z']] 1599 Axyz = [parmDict['%s::A%s:%d'%(pId,x,angle_atoms[1][0])] for x in ['x','y','z']] 1600 Bxyz = [parmDict['%s::A%s:%d'%(pId,x,angle_atoms[1][1])] for x in ['x','y','z']] 1601 ABxyz = [Axyz,Bxyz] 1602 symNo = angle_dict['symNo'] 1603 for i in range(2): 1604 inv = 1 1605 if symNo[i] < 0: 1606 inv = -1 1607 symNo[i] *= -1 1608 cen = symNo[i]/100 1609 op = symNo[i]%100-1 1610 M,T = angle_dict['SGData']['SGOps'][op] 1611 D = T*inv+angle_dict['SGData']['SGCen'][cen] 1612 D += angle_dict['cellNo'][i] 1613 ABxyz[i] = np.inner(M*inv,ABxyz[i])+D 1614 ABxyz[i] = np.inner(Amat,(ABxyz[i]-Oxyz)) 1615 dist = np.sqrt(np.sum(ABxyz[i]**2)) 1616 if not dist: 1617 return 0. 1618 ABxyz[i] /= dist 1619 angle = acosd(np.sum(ABxyz[0]*ABxyz[1])) 1620 return angle 1596 1621 1597 1622 def getSyXYZ(XYZ,ops,SGData):
Note: See TracChangeset
for help on using the changeset viewer.