Changeset 447 for trunk/GSASIIpwd.py


Ignore:
Timestamp:
Dec 20, 2011 11:46:45 AM (11 years ago)
Author:
vondreele
Message:

Add another variation on background - individual peaks (not finished)
fix image calibration problem

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/GSASIIpwd.py

    r446 r447  
    953953        backVals = Background[0][3:]
    954954        backNames = ['Back:'+str(i) for i in range(len(backVals))]
    955         Debye = Background[1]
     955        Debye = Background[1]           #also has background peaks stuff
    956956        backDict = dict(zip(backNames,backVals))
    957957        backVary = []
    958958        if bakFlag:
    959959            backVary = backNames
     960
    960961        backDict['nDebye'] = Debye['nDebye']
    961962        debyeDict = {}
     
    970971                debyeVary.append(item[0])
    971972        backDict.update(debyeDict)
    972         backVary += debyeVary   
     973        backVary += debyeVary
     974   
     975        peaksDict = {}
     976        peaksList = []
     977        for i in range(Debye['nPeaks']):
     978            peaksNames = ['BkPkpos:'+str(i),'BkPkint:'+str(i),'BkPksig:'+str(i),'BkPkgam:'+str(i)]
     979            peaksDict.update(dict(zip(peaksNames,Debye['peaksList'][i][::2])))
     980            peaksList += zip(peaksNames,Debye['peaksList'][i][1::2])
     981        peaksVary = []
     982        for item in peaksList:
     983            if item[1]:
     984                peaksVary.append(item[0])
     985        backDict.update(peaksDict)
     986        backVary += peaksVary   
    973987        return bakType,backDict,backVary           
    974988       
     
    9891003                    val = parmList[name+str(iDb)]
    9901004                    Background[1]['debyeTerms'][iDb][2*i] = val
     1005                iDb += 1
     1006            except KeyError:
     1007                break
     1008        iDb = 0
     1009        while True:
     1010            names = ['BkPkpos:','BkPkint:','BkPksig:','BkPkgam:']
     1011            try:
     1012                for i,name in enumerate(names):
     1013                    val = parmList[name+str(iDb)]
     1014                    Background[1]['peaksList'][iDb][2*i] = val
    9911015                iDb += 1
    9921016            except KeyError:
     
    10201044                    ip = parms.index(parm)
    10211045                    ptstr += ptfmt%(Background[1]['debyeTerms'][int(id)][2*ip])
     1046            print names
     1047            print ptstr
     1048            print sigstr
     1049        if Background[1]['nPeaks']:
     1050            parms = ['BkPkpos','BkPkint','BkPksig','BkPkgam']
     1051            print 'Peaks in background coefficients'
     1052            ptfmt = "%12.5f"
     1053            names =   'names :'
     1054            ptstr =  'values:'
     1055            sigstr = 'esds  :'
     1056            for item in sigDict:
     1057                if 'BkPk' in item:
     1058                    names += '%12s'%(item)
     1059                    sigstr += ptfmt%(sigDict[item])
     1060                    parm,id = item.split(':')
     1061                    ip = parms.index(parm)
     1062                    ptstr += ptfmt%(Background[1]['peaksList'][int(id)][2*ip])
    10221063            print names
    10231064            print ptstr
Note: See TracChangeset for help on using the changeset viewer.