Changeset 1699 for trunk/GSASIIspc.py
- Timestamp:
- Mar 13, 2015 3:46:05 PM (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/GSASIIspc.py
r1695 r1699 1425 1425 def GetSSfxuinel(waveType,nH,XYZ,SGData,SSGData,debug=False): 1426 1426 1427 def orderParms(CSI): 1428 parms = [0,] 1429 for csi in CSI: 1430 for i in [0,1,2]: 1431 if csi[i] not in parms: 1432 parms.append(csi[i]) 1433 for csi in CSI: 1434 for i in [0,1,2]: 1435 csi[i] = parms.index(csi[i]) 1436 return CSI 1437 1427 1438 def fracCrenel(tau,Toff,Twid): 1428 1439 Tau = (tau-Toff)%1. … … 1587 1598 CSI['Spos'][0][i+3] = [0,0,0] 1588 1599 CSI['Spos'][1][i+3] = [0.,0.,0.] 1600 elif np.allclose(dX[0,0,:],dXT[0,1,:]*sdet): 1601 if 'xy' in siteSym or '+-0' in siteSym: 1602 CSI['Spos'][0][3:5] = [[12,0,0],[12,0,0]] 1603 CSI['Spos'][1][3:5] = [[1.,0,0],[-sdet,0,0]] 1604 xsc[3:5] = 0 1589 1605 else: 1590 1606 for i in range(3): … … 1661 1677 else: 1662 1678 usc[i+6] = 0 1663 if '4/m' in siteSym and np.any(dUT[0,1,:]): 1664 CSI['Sadp'][0][6:8] = [[12,0,0],[12,0,0]] 1665 if ssop[1][3]: 1666 CSI['Sadp'][1][6:8] = [[1.,0.,0.],[-1.,0.,0.]] 1667 usc[9] = 1 1668 else: 1669 CSI['Sadp'][1][6:8] = [[1.,0.,0.],[1.,0.,0.]] 1670 usc[9] = 0 1671 elif '4' in siteSym and np.any(dUT[0,1,:]): 1672 CSI['Sadp'][0][6:8] = [[12,0,0],[12,0,0]] 1673 CSI['Sadp'][0][:2] = [[11,0,0],[11,0,0]] 1674 if ssop[1][3]: 1675 CSI['Sadp'][1][:2] = [[1.,0.,0.],[-1.,0.,0.]] 1676 CSI['Sadp'][1][6:8] = [[1.,0.,0.],[-1.,0.,0.]] 1677 usc[3] = 1 1678 usc[9] = 1 1679 else: 1680 CSI['Sadp'][1][:2] = [[1.,0.,0.],[1.,0.,0.]] 1681 CSI['Sadp'][1][6:8] = [[1.,0.,0.],[1.,0.,0.]] 1682 usc[3] = 0 1683 usc[9] = 0 1679 if np.any(dUT[0,1,:]): 1680 if '4/m' in siteSym: 1681 CSI['Sadp'][0][6:8] = [[12,0,0],[12,0,0]] 1682 if ssop[1][3]: 1683 CSI['Sadp'][1][6:8] = [[1.,0.,0.],[-1.,0.,0.]] 1684 usc[9] = 1 1685 else: 1686 CSI['Sadp'][1][6:8] = [[1.,0.,0.],[1.,0.,0.]] 1687 usc[9] = 0 1688 elif '4' in siteSym: 1689 CSI['Sadp'][0][6:8] = [[12,0,0],[12,0,0]] 1690 CSI['Sadp'][0][:2] = [[11,0,0],[11,0,0]] 1691 if ssop[1][3]: 1692 CSI['Sadp'][1][:2] = [[1.,0.,0.],[-1.,0.,0.]] 1693 CSI['Sadp'][1][6:8] = [[1.,0.,0.],[-1.,0.,0.]] 1694 usc[3] = 1 1695 usc[9] = 1 1696 else: 1697 CSI['Sadp'][1][:2] = [[1.,0.,0.],[1.,0.,0.]] 1698 CSI['Sadp'][1][6:8] = [[1.,0.,0.],[1.,0.,0.]] 1699 usc[3] = 0 1700 usc[9] = 0 1701 elif 'xy' in siteSym or '+-0' in siteSym: 1702 if np.allclose(dU[0,0,:],dUT[0,1,:]*sdet): 1703 print np.allclose(dU[0,0,:],dUT[0,1,:]*sdet),sdet 1704 CSI['Sadp'][0][4:6] = [[12,0,0],[12,0,0]] 1705 CSI['Sadp'][0][6:8] = [[11,0,0],[11,0,0]] 1706 CSI['Sadp'][1][4:6] = [[1.,0.,0.],[sdet,0.,0.]] 1707 CSI['Sadp'][1][6:8] = [[1.,0.,0.],[sdet,0.,0.]] 1708 usc[4:6] = 0 1709 usc[6:8] = 0 1710 1684 1711 print SSMT2text(ssop).replace(' ',''),sdet,ssdet,epsinv,usc 1685 1712 USC &= usc … … 1706 1733 else: 1707 1734 CSI['Sfrac'][0][i] = 0 1708 CSI['Sfrac'][1][i] = 0. 1735 CSI['Sfrac'][1][i] = 0. 1736 CSI['Spos'][0] = orderParms(CSI['Spos'][0]) 1737 CSI['Sadp'][0] = orderParms(CSI['Sadp'][0]) 1709 1738 if debug: 1710 1739 return CSI,[tau,tauT],[dF,dFTP],[dX,dXTP],[dU,dUTP]
Note: See TracChangeset
for help on using the changeset viewer.