Ignore:
Timestamp:
May 20, 2017 10:11:49 AM (6 years ago)
Author:
vondreele
Message:

fix aniso Uij derivatives - were messing up Uii on trig/hex 3-fold axes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/GSASIIstrMath.py

    r2815 r2837  
    951951        dFdvDict[pfx+'AU22:'+str(i)] = dFdua.T[1][i]
    952952        dFdvDict[pfx+'AU33:'+str(i)] = dFdua.T[2][i]
    953         dFdvDict[pfx+'AU12:'+str(i)] = 2.*dFdua.T[3][i]
    954         dFdvDict[pfx+'AU13:'+str(i)] = 2.*dFdua.T[4][i]
    955         dFdvDict[pfx+'AU23:'+str(i)] = 2.*dFdua.T[5][i]
     953        dFdvDict[pfx+'AU12:'+str(i)] = dFdua.T[3][i]
     954        dFdvDict[pfx+'AU13:'+str(i)] = dFdua.T[4][i]
     955        dFdvDict[pfx+'AU23:'+str(i)] = dFdua.T[5][i]
    956956    dFdvDict[phfx+'Flack'] = 4.*dFdfl.T
    957957    dFdvDict[phfx+'BabA'] = dFdbab.T[0]
     
    10971097        dFdvDict[pfx+'AU22:'+str(i)] = dFdua.T[1][i]
    10981098        dFdvDict[pfx+'AU33:'+str(i)] = dFdua.T[2][i]
    1099         dFdvDict[pfx+'AU12:'+str(i)] = 2.*dFdua.T[3][i]
    1100         dFdvDict[pfx+'AU13:'+str(i)] = 2.*dFdua.T[4][i]
    1101         dFdvDict[pfx+'AU23:'+str(i)] = 2.*dFdua.T[5][i]
     1099        dFdvDict[pfx+'AU12:'+str(i)] = dFdua.T[3][i]
     1100        dFdvDict[pfx+'AU13:'+str(i)] = dFdua.T[4][i]
     1101        dFdvDict[pfx+'AU23:'+str(i)] = dFdua.T[5][i]
    11021102#    GSASIIpath.IPyBreak()
    11031103    return dFdvDict
     
    12581258        dFdvDict[pfx+'AU22:'+str(i)] = np.sum(dFdua.T[1][i]*TwinFr[:,nxs],axis=0)
    12591259        dFdvDict[pfx+'AU33:'+str(i)] = np.sum(dFdua.T[2][i]*TwinFr[:,nxs],axis=0)
    1260         dFdvDict[pfx+'AU12:'+str(i)] = 2.*np.sum(dFdua.T[3][i]*TwinFr[:,nxs],axis=0)
    1261         dFdvDict[pfx+'AU13:'+str(i)] = 2.*np.sum(dFdua.T[4][i]*TwinFr[:,nxs],axis=0)
    1262         dFdvDict[pfx+'AU23:'+str(i)] = 2.*np.sum(dFdua.T[5][i]*TwinFr[:,nxs],axis=0)
     1260        dFdvDict[pfx+'AU12:'+str(i)] = np.sum(dFdua.T[3][i]*TwinFr[:,nxs],axis=0)
     1261        dFdvDict[pfx+'AU13:'+str(i)] = np.sum(dFdua.T[4][i]*TwinFr[:,nxs],axis=0)
     1262        dFdvDict[pfx+'AU23:'+str(i)] = np.sum(dFdua.T[5][i]*TwinFr[:,nxs],axis=0)
    12631263    dFdvDict[phfx+'BabA'] = dFdbab.T[0]
    12641264    dFdvDict[phfx+'BabU'] = dFdbab.T[1]
     
    17161716        dFdvDict[pfx+'AU22:'+str(i)] = dFdua.T[1][i]
    17171717        dFdvDict[pfx+'AU33:'+str(i)] = dFdua.T[2][i]
    1718         dFdvDict[pfx+'AU12:'+str(i)] = 2.*dFdua.T[3][i]
    1719         dFdvDict[pfx+'AU13:'+str(i)] = 2.*dFdua.T[4][i]
    1720         dFdvDict[pfx+'AU23:'+str(i)] = 2.*dFdua.T[5][i]
     1718        dFdvDict[pfx+'AU12:'+str(i)] = dFdua.T[3][i]
     1719        dFdvDict[pfx+'AU13:'+str(i)] = dFdua.T[4][i]
     1720        dFdvDict[pfx+'AU23:'+str(i)] = dFdua.T[5][i]
    17211721        for j in range(FSSdata.shape[1]):        #loop over waves Fzero & Fwid?
    17221722            dFdvDict[pfx+'Fsin:'+str(i)+':'+str(j)] = dFdGf.T[0][j][i]
     
    17411741            dFdvDict[pfx+'U22sin:'+str(i)+':'+str(j)] = dFdGu.T[1][j][i]
    17421742            dFdvDict[pfx+'U33sin:'+str(i)+':'+str(j)] = dFdGu.T[2][j][i]
    1743             dFdvDict[pfx+'U12sin:'+str(i)+':'+str(j)] = 2.*dFdGu.T[3][j][i]
    1744             dFdvDict[pfx+'U13sin:'+str(i)+':'+str(j)] = 2.*dFdGu.T[4][j][i]
    1745             dFdvDict[pfx+'U23sin:'+str(i)+':'+str(j)] = 2.*dFdGu.T[5][j][i]
     1743            dFdvDict[pfx+'U12sin:'+str(i)+':'+str(j)] = dFdGu.T[3][j][i]
     1744            dFdvDict[pfx+'U13sin:'+str(i)+':'+str(j)] = dFdGu.T[4][j][i]
     1745            dFdvDict[pfx+'U23sin:'+str(i)+':'+str(j)] = dFdGu.T[5][j][i]
    17461746            dFdvDict[pfx+'U11cos:'+str(i)+':'+str(j)] = dFdGu.T[6][j][i]
    17471747            dFdvDict[pfx+'U22cos:'+str(i)+':'+str(j)] = dFdGu.T[7][j][i]
    17481748            dFdvDict[pfx+'U33cos:'+str(i)+':'+str(j)] = dFdGu.T[8][j][i]
    1749             dFdvDict[pfx+'U12cos:'+str(i)+':'+str(j)] = 2.*dFdGu.T[9][j][i]
    1750             dFdvDict[pfx+'U13cos:'+str(i)+':'+str(j)] = 2.*dFdGu.T[10][j][i]
    1751             dFdvDict[pfx+'U23cos:'+str(i)+':'+str(j)] = 2.*dFdGu.T[11][j][i]
     1749            dFdvDict[pfx+'U12cos:'+str(i)+':'+str(j)] = dFdGu.T[9][j][i]
     1750            dFdvDict[pfx+'U13cos:'+str(i)+':'+str(j)] = dFdGu.T[10][j][i]
     1751            dFdvDict[pfx+'U23cos:'+str(i)+':'+str(j)] = dFdGu.T[11][j][i]
    17521752           
    17531753#        GSASIIpath.IPyBreak()
     
    19401940        dFdvDict[pfx+'AU22:'+str(i)] = dFdua.T[1][i]
    19411941        dFdvDict[pfx+'AU33:'+str(i)] = dFdua.T[2][i]
    1942         dFdvDict[pfx+'AU12:'+str(i)] = 2.*dFdua.T[3][i]
    1943         dFdvDict[pfx+'AU13:'+str(i)] = 2.*dFdua.T[4][i]
    1944         dFdvDict[pfx+'AU23:'+str(i)] = 2.*dFdua.T[5][i]
     1942        dFdvDict[pfx+'AU12:'+str(i)] = dFdua.T[3][i]
     1943        dFdvDict[pfx+'AU13:'+str(i)] = dFdua.T[4][i]
     1944        dFdvDict[pfx+'AU23:'+str(i)] = dFdua.T[5][i]
    19451945        for j in range(FSSdata.shape[1]):        #loop over waves Fzero & Fwid?
    19461946            dFdvDict[pfx+'Fsin:'+str(i)+':'+str(j)] = dFdGf.T[0][j][i]
     
    19651965            dFdvDict[pfx+'U22sin:'+str(i)+':'+str(j)] = dFdGu.T[1][j][i]
    19661966            dFdvDict[pfx+'U33sin:'+str(i)+':'+str(j)] = dFdGu.T[2][j][i]
    1967             dFdvDict[pfx+'U12sin:'+str(i)+':'+str(j)] = 2.*dFdGu.T[3][j][i]
    1968             dFdvDict[pfx+'U13sin:'+str(i)+':'+str(j)] = 2.*dFdGu.T[4][j][i]
    1969             dFdvDict[pfx+'U23sin:'+str(i)+':'+str(j)] = 2.*dFdGu.T[5][j][i]
     1967            dFdvDict[pfx+'U12sin:'+str(i)+':'+str(j)] = dFdGu.T[3][j][i]
     1968            dFdvDict[pfx+'U13sin:'+str(i)+':'+str(j)] = dFdGu.T[4][j][i]
     1969            dFdvDict[pfx+'U23sin:'+str(i)+':'+str(j)] = dFdGu.T[5][j][i]
    19701970            dFdvDict[pfx+'U11cos:'+str(i)+':'+str(j)] = dFdGu.T[6][j][i]
    19711971            dFdvDict[pfx+'U22cos:'+str(i)+':'+str(j)] = dFdGu.T[7][j][i]
    19721972            dFdvDict[pfx+'U33cos:'+str(i)+':'+str(j)] = dFdGu.T[8][j][i]
    1973             dFdvDict[pfx+'U12cos:'+str(i)+':'+str(j)] = 2.*dFdGu.T[9][j][i]
    1974             dFdvDict[pfx+'U13cos:'+str(i)+':'+str(j)] = 2.*dFdGu.T[10][j][i]
    1975             dFdvDict[pfx+'U23cos:'+str(i)+':'+str(j)] = 2.*dFdGu.T[11][j][i]
     1973            dFdvDict[pfx+'U12cos:'+str(i)+':'+str(j)] = dFdGu.T[9][j][i]
     1974            dFdvDict[pfx+'U13cos:'+str(i)+':'+str(j)] = dFdGu.T[10][j][i]
     1975            dFdvDict[pfx+'U23cos:'+str(i)+':'+str(j)] = dFdGu.T[11][j][i]
    19761976           
    19771977#        GSASIIpath.IPyBreak()
     
    21432143        dFdvDict[pfx+'AU22:'+str(i)] = dFdua.T[1][i]
    21442144        dFdvDict[pfx+'AU33:'+str(i)] = dFdua.T[2][i]
    2145         dFdvDict[pfx+'AU12:'+str(i)] = 2.*dFdua.T[3][i]
    2146         dFdvDict[pfx+'AU13:'+str(i)] = 2.*dFdua.T[4][i]
    2147         dFdvDict[pfx+'AU23:'+str(i)] = 2.*dFdua.T[5][i]
     2145        dFdvDict[pfx+'AU12:'+str(i)] = dFdua.T[3][i]
     2146        dFdvDict[pfx+'AU13:'+str(i)] = dFdua.T[4][i]
     2147        dFdvDict[pfx+'AU23:'+str(i)] = dFdua.T[5][i]
    21482148        for j in range(FSSdata.shape[1]):        #loop over waves Fzero & Fwid?
    21492149            dFdvDict[pfx+'Fsin:'+str(i)+':'+str(j)] = dFdGf.T[0][j][i]
     
    21682168            dFdvDict[pfx+'U22sin:'+str(i)+':'+str(j)] = dFdGu.T[1][j][i]
    21692169            dFdvDict[pfx+'U33sin:'+str(i)+':'+str(j)] = dFdGu.T[2][j][i]
    2170             dFdvDict[pfx+'U12sin:'+str(i)+':'+str(j)] = 2.*dFdGu.T[3][j][i]
    2171             dFdvDict[pfx+'U13sin:'+str(i)+':'+str(j)] = 2.*dFdGu.T[4][j][i]
    2172             dFdvDict[pfx+'U23sin:'+str(i)+':'+str(j)] = 2.*dFdGu.T[5][j][i]
     2170            dFdvDict[pfx+'U12sin:'+str(i)+':'+str(j)] = dFdGu.T[3][j][i]
     2171            dFdvDict[pfx+'U13sin:'+str(i)+':'+str(j)] = dFdGu.T[4][j][i]
     2172            dFdvDict[pfx+'U23sin:'+str(i)+':'+str(j)] = dFdGu.T[5][j][i]
    21732173            dFdvDict[pfx+'U11cos:'+str(i)+':'+str(j)] = dFdGu.T[6][j][i]
    21742174            dFdvDict[pfx+'U22cos:'+str(i)+':'+str(j)] = dFdGu.T[7][j][i]
    21752175            dFdvDict[pfx+'U33cos:'+str(i)+':'+str(j)] = dFdGu.T[8][j][i]
    2176             dFdvDict[pfx+'U12cos:'+str(i)+':'+str(j)] = 2.*dFdGu.T[9][j][i]
    2177             dFdvDict[pfx+'U13cos:'+str(i)+':'+str(j)] = 2.*dFdGu.T[10][j][i]
    2178             dFdvDict[pfx+'U23cos:'+str(i)+':'+str(j)] = 2.*dFdGu.T[11][j][i]
     2176            dFdvDict[pfx+'U12cos:'+str(i)+':'+str(j)] = dFdGu.T[9][j][i]
     2177            dFdvDict[pfx+'U13cos:'+str(i)+':'+str(j)] = dFdGu.T[10][j][i]
     2178            dFdvDict[pfx+'U23cos:'+str(i)+':'+str(j)] = dFdGu.T[11][j][i]
    21792179           
    21802180#        GSASIIpath.IPyBreak()
Note: See TracChangeset for help on using the changeset viewer.