Changeset 934 for trunk/GSASIIstrMath.py


Ignore:
Timestamp:
May 28, 2013 4:29:16 PM (10 years ago)
Author:
vondreele
Message:

changes for MC/SA

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/GSASIIstrMath.py

    r927 r934  
    15421542                print 'TOF Undefined at present'
    15431543                raise Exception    #no TOF yet
    1544             #do atom derivatives -  for RB,F,X & U so far             
    1545             corr = dervDict['int']/refl[9]
    1546             if Ka2:
    1547                 corr2 = dervDict2['int']/refl[9]
    1548             for name in varylist+dependentVars:
    1549                 if '::RBV;' in name:
    1550                     pass
    1551                 else:
    1552                     try:
    1553                         aname = name.split(pfx)[1][:2]
    1554                         if aname not in ['Af','dA','AU','RB']: continue # skip anything not an atom or rigid body param
    1555                     except IndexError:
    1556                         continue
    1557                 if name in varylist:
    1558                     dMdv[varylist.index(name)][iBeg:iFin] += dFdvDict[name][iref]*corr
    1559                     if Ka2:
    1560                         dMdv[varylist.index(name)][iBeg2:iFin2] += dFdvDict[name][iref]*corr2
    1561                 elif name in dependentVars:
    1562                     depDerivDict[name][iBeg:iFin] += dFdvDict[name][iref]*corr
    1563                     if Ka2:
    1564                         depDerivDict[name][iBeg2:iFin2] += dFdvDict[name][iref]*corr2
     1544            if not Phase['General'].get('doPawley'):
     1545                #do atom derivatives -  for RB,F,X & U so far             
     1546                corr = dervDict['int']/refl[9]
     1547                if Ka2:
     1548                    corr2 = dervDict2['int']/refl[9]
     1549                for name in varylist+dependentVars:
     1550                    if '::RBV;' in name:
     1551                        pass
     1552                    else:
     1553                        try:
     1554                            aname = name.split(pfx)[1][:2]
     1555                            if aname not in ['Af','dA','AU','RB']: continue # skip anything not an atom or rigid body param
     1556                        except IndexError:
     1557                            continue
     1558                    if name in varylist:
     1559                        dMdv[varylist.index(name)][iBeg:iFin] += dFdvDict[name][iref]*corr
     1560                        if Ka2:
     1561                            dMdv[varylist.index(name)][iBeg2:iFin2] += dFdvDict[name][iref]*corr2
     1562                    elif name in dependentVars:
     1563                        depDerivDict[name][iBeg:iFin] += dFdvDict[name][iref]*corr
     1564                        if Ka2:
     1565                            depDerivDict[name][iBeg2:iFin2] += dFdvDict[name][iref]*corr2
    15651566#        print 'profile derv time: %.3fs'%(time.time()-time0)
    15661567    # now process derivatives in constraints
Note: See TracChangeset for help on using the changeset viewer.