Changeset 489 for trunk/GSASIIElem.py


Ignore:
Timestamp:
Feb 22, 2012 4:08:40 PM (10 years ago)
Author:
vondreele
Message:

fix to speed up scat fac calculations & skip texture calcs if order=0

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/GSASIIElem.py

    r484 r489  
    254254    return np.sum(fa[:,np.newaxis]*np.exp(t)[:],axis=0)+El['fc']
    255255       
    256 def BlenRes(BLdata,wave):
    257     FP = []
    258     FPP = []
     256def BlenRes(Elist,BLtables,wave):
     257    FP = np.zeros(len(Elist))
     258    FPP = np.zeros(len(Elist))
    259259    Emev = 81.80703/wave**2
    260     for BL in BLdata:
     260    for i,El in enumerate(Elist):
     261        BL = BLtables[El]
    261262        if len(BL) >= 6:
    262263            Emev = 81.80703/wave**2
     
    276277                fp += BL[8]*T/D
    277278                fpp += BL[8]/D
    278             FP.append(BL[2]*fp)
    279             FPP.append(-BL[3]*fpp)
     279            FP[i] = (BL[2]*fp)
     280            FPP[i] = (-BL[3]*fpp)
    280281        else:
    281             FP.append(0.0)
    282             FPP.append(0.0)
    283     return np.array(FP),np.array(FPP)
     282            FP[i] = 0.0
     283            FPP[i] = 0.0
     284    return FP,FPP
     285   
     286#def BlenRes(BLdata,wave):
     287#    FP = []
     288#    FPP = []
     289#    Emev = 81.80703/wave**2
     290#    for BL in BLdata:
     291#        if len(BL) >= 6:
     292#            Emev = 81.80703/wave**2
     293#            G2 = BL[5]**2
     294#            T = [Emev-BL[4],0,0]
     295#            D = [T**2+G2,0,0]
     296#            fp = T/D
     297#            fpp = 1.0/D
     298#            if len(BL) == 8:
     299#                T = Emev-BL[7]
     300#                D = T**2+G2
     301#                fp += BL[6]*T/D
     302#                fpp += BL[6]/D
     303#            if len(BL) == 10:
     304#                T = Emev-BL[9]
     305#                D = T**2+G2
     306#                fp += BL[8]*T/D
     307#                fpp += BL[8]/D
     308#            FP.append(BL[2]*fp)
     309#            FPP.append(-BL[3]*fpp)
     310#        else:
     311#            FP.append(0.0)
     312#            FPP.append(0.0)
     313#    return np.array(FP),np.array(FPP)
    284314   
    285315def ComptonFac(El,SQ):
Note: See TracChangeset for help on using the changeset viewer.