Changeset 1491
- Timestamp:
- Sep 10, 2014 9:13:42 AM (8 years ago)
- Location:
- trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/GSASIIstrMain.py
r1489 r1491 42 42 43 43 ateln2 = 8.0*math.log(2.0) 44 DEBUG = True44 DEBUG = False 45 45 46 46 def RefineCore(Controls,Histograms,Phases,restraintDict,rigidbodyDict,parmDict,varyList, -
trunk/GSASIIstrMath.py
r1490 r1491 802 802 ''' 803 803 extCor = 1.0 804 dervCor = 1.0805 804 dervDict = {} 806 805 if calcControls[phfx+'EType'] != 'None': … … 860 859 PF3 = 0.5*(CL+2.*AL*PF/(1.+BL*PF)-AL*PF**2*BL/(1.+BL*PF)**2)/(PF4*extCor) 861 860 862 dervCor = (1.+PF)*PF3 #extinction corr for other derivatives863 861 if 'Primary' in calcControls[phfx+'EType'] and phfx+'Ep' in varyList: 864 862 dervDict[phfx+'Ep'] = -ref[7]*PLZ*PF3 … … 868 866 dervDict[phfx+'Eg'] = -ref[7]*PLZ*PF3*(PSIG/parmDict[phfx+'Eg'])**3*PL**2 869 867 870 return 1./extCor,derv Cor,dervDict868 return 1./extCor,dervDict 871 869 872 870 def Dict2Values(parmdict, varylist): … … 2003 2001 for iref,ref in enumerate(refDict['RefList']): 2004 2002 if ref[6] > 0: 2005 derv Cor,dervDict = SCExtinction(ref,phfx,hfx,pfx,calcControls,parmDict,varylist)[1:]2003 dervDict = SCExtinction(ref,phfx,hfx,pfx,calcControls,parmDict,varylist)[1] 2006 2004 w = 1.0/ref[6] 2007 2005 if w*ref[5] >= calcControls['minF/sig']: … … 2009 2007 for j,var in enumerate(varylist): 2010 2008 if var in dFdvDict: 2011 dMdvh[j][iref] = w*dFdvDict[var][iref]*parmDict[phfx+'Scale']*ref[11] #*dervCor2009 dMdvh[j][iref] = w*dFdvDict[var][iref]*parmDict[phfx+'Scale']*ref[11] 2012 2010 for var in dependentVars: 2013 2011 if var in dFdvDict: 2014 depDerivDict[var][iref] = w*dFdvDict[var][iref]*parmDict[phfx+'Scale']*ref[11] #*dervCor2012 depDerivDict[var][iref] = w*dFdvDict[var][iref]*parmDict[phfx+'Scale']*ref[11] 2015 2013 if phfx+'Scale' in varylist: 2016 dMdvh[varylist.index(phfx+'Scale')][iref] = w*ref[9]*ref[11] #OK? *dervCor2014 dMdvh[varylist.index(phfx+'Scale')][iref] = w*ref[9]*ref[11] 2017 2015 elif phfx+'Scale' in dependentVars: 2018 depDerivDict[phfx+'Scale'][iref] = w*ref[9]*ref[11] #OK? *dervCor2016 depDerivDict[phfx+'Scale'][iref] = w*ref[9]*ref[11] 2019 2017 for item in ['Ep','Es','Eg']: 2020 2018 if phfx+item in varylist and dervDict: 2021 dMdvh[varylist.index(phfx+item)][iref] = w*dervDict[phfx+item]/ref[11] #OK ? /dervCor2019 dMdvh[varylist.index(phfx+item)][iref] = w*dervDict[phfx+item]/ref[11] #OK 2022 2020 elif phfx+item in dependentVars and dervDict: 2023 depDerivDict[phfx+item][iref] = w*dervDict[phfx+item]/ref[11] #OK ? /dervCor2021 depDerivDict[phfx+item][iref] = w*dervDict[phfx+item]/ref[11] #OK 2024 2022 for item in ['BabA','BabU']: 2025 2023 if phfx+item in varylist: 2026 dMdvh[varylist.index(phfx+item)][iref] = w*dFdvDict[pfx+item][iref]*parmDict[phfx+'Scale']* dervCor2024 dMdvh[varylist.index(phfx+item)][iref] = w*dFdvDict[pfx+item][iref]*parmDict[phfx+'Scale']*ref[11] 2027 2025 elif phfx+item in dependentVars: 2028 depDerivDict[phfx+item][iref] = w*dFdvDict[pfx+item][iref]*parmDict[phfx+'Scale']* dervCor2026 depDerivDict[phfx+item][iref] = w*dFdvDict[pfx+item][iref]*parmDict[phfx+'Scale']*ref[11] 2029 2027 else: 2030 2028 for iref,ref in enumerate(refDict['RefList']): 2031 2029 if ref[5] > 0.: 2032 derv Cor,dervDict = SCExtinction(ref,phfx,hfx,pfx,calcControls,parmDict,varylist)[1:]2030 dervDict = SCExtinction(ref,phfx,hfx,pfx,calcControls,parmDict,varylist)[1] 2033 2031 Fo = np.sqrt(ref[5]) 2034 2032 Fc = np.sqrt(ref[7]) … … 2038 2036 for j,var in enumerate(varylist): 2039 2037 if var in dFdvDict: 2040 dMdvh[j][iref] = w*dFdvDict[var][iref]*parmDict[phfx+'Scale']* dervCor #*ref[11]2038 dMdvh[j][iref] = w*dFdvDict[var][iref]*parmDict[phfx+'Scale']*ref[11] 2041 2039 for var in dependentVars: 2042 2040 if var in dFdvDict: 2043 depDerivDict[var][iref] = w*dFdvDict[var][iref]*parmDict[phfx+'Scale']* dervCor #*ref[11]2041 depDerivDict[var][iref] = w*dFdvDict[var][iref]*parmDict[phfx+'Scale']*ref[11] 2044 2042 if phfx+'Scale' in varylist: 2045 dMdvh[varylist.index(phfx+'Scale')][iref] = w*ref[9]*ref[11] #*dervCor2043 dMdvh[varylist.index(phfx+'Scale')][iref] = w*ref[9]*ref[11] 2046 2044 elif phfx+'Scale' in dependentVars: 2047 depDerivDict[phfx+'Scale'][iref] = w*ref[9]*ref[11] #*dervCor2045 depDerivDict[phfx+'Scale'][iref] = w*ref[9]*ref[11] 2048 2046 for item in ['Ep','Es','Eg']: 2049 2047 if phfx+item in varylist and dervDict: … … 2053 2051 for item in ['BabA','BabU']: 2054 2052 if phfx+item in varylist: 2055 dMdvh[varylist.index(phfx+item)][iref] = w*dFdvDict[pfx+item][iref]*parmDict[phfx+'Scale']* dervCor2053 dMdvh[varylist.index(phfx+item)][iref] = w*dFdvDict[pfx+item][iref]*parmDict[phfx+'Scale']*ref[11] 2056 2054 elif phfx+item in dependentVars: 2057 depDerivDict[phfx+item][iref] = w*dFdvDict[pfx+item][iref]*parmDict[phfx+'Scale']* dervCor2055 depDerivDict[phfx+item][iref] = w*dFdvDict[pfx+item][iref]*parmDict[phfx+'Scale']*ref[11] 2058 2056 return dMdvh,depDerivDict,wdf 2059 2057
Note: See TracChangeset
for help on using the changeset viewer.