Changeset 2448 for trunk/GSASIIstrIO.py


Ignore:
Timestamp:
Aug 24, 2016 12:14:59 PM (5 years ago)
Author:
vondreele
Message:

fix error in getCellEsd - bad v*mat*v inner product. Cell esds now OK

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/GSASIIstrIO.py

    r2405 r2448  
    14801480    Ax = np.array(A)
    14811481    Ax[3:] /= 2.
    1482     drVdA = np.array([Ax[1]*Ax[2]-Ax[5]**2,Ax[0]*Ax[2]-Ax[4]**2,Ax[0]*Ax[1]-Ax[3]**2,
    1483         Ax[4]*Ax[5]-Ax[2]*Ax[3],Ax[3]*Ax[5]-Ax[1]*Ax[4],Ax[3]*Ax[4]-Ax[0]*Ax[5]])
     1482    drVdA = np.array([
     1483        Ax[1]*Ax[2]-Ax[5]**2,
     1484        Ax[0]*Ax[2]-Ax[4]**2,
     1485        Ax[0]*Ax[1]-Ax[3]**2,
     1486        Ax[4]*Ax[5]-Ax[2]*Ax[3],
     1487        Ax[3]*Ax[5]-Ax[1]*Ax[4],
     1488        Ax[3]*Ax[4]-Ax[0]*Ax[5]])
    14841489    srcvlsq = np.inner(drVdA,np.inner(vcov,drVdA.T))
    14851490    Vol = 1/np.sqrt(rVsq)
    1486     sigVol = Vol**3*np.sqrt(srcvlsq)/2.
     1491    sigVol = Vol**3*np.sqrt(srcvlsq)/2.         #ok - checks with GSAS
    14871492    R123 = Ax[0]*Ax[1]*Ax[2]
    14881493    dsasdg = np.zeros((3,6))
     
    15141519                dadg[i0][ij] = dadg[i0][ij]-0.5*cell[i0]/Ax[i0]
    15151520            dadg[i3][ij] = -dadg[i3][ij]*rsin[2-i0]*dpr
    1516     sigMat = np.inner(dadg,np.inner(vcov,dadg.T))
     1521    sigMat = np.inner(dadg,np.inner(dadg,vcov))
    15171522    var = np.diag(sigMat)
    15181523    CS = np.where(var>0.,np.sqrt(var),0.)
     
    15261531        line = '   name      x         y         z      frac   Uiso     U11     U22     U33     U12     U13     U23'
    15271532        if General['Type'] == 'magnetic':
    1528             line += '   Mx     My     Mz'
     1533            line = line[:24]+'   Mx     My     Mz'+line[24:]
    15291534        elif General['Type'] == 'macromolecular':
    15301535            line = ' res no residue chain '+line
Note: See TracChangeset for help on using the changeset viewer.