Changeset 701


Ignore:
Timestamp:
Aug 9, 2012 10:09:04 AM (10 years ago)
Author:
vondreele
Message:

change Hessian progress bar dialog
fix crash in General cell & isotope editing
avoid error in reflection list

Location:
trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/GSASIIimage.py

    r700 r701  
    761761        Ring = np.array(Ring).T
    762762        ring['ImxyObs'] = np.array(Ring[:2])      #need to apply masks to this to eliminate bad points
    763         [x,y] = np.array(makeIdealRing(ellipse)).T
    764         if len(x):
    765             Tth,azm = GetTthAzm(x,y,StaControls)
    766             azm += Controls['azmthOff']     #account for detector rotation
    767             th = Tth/2.
    768             th += 180.*np.sum(StrSta['strain']*calcFij(StrSta['Sample phi'],0.,azm,th))/(np.pi*1.e6) #in degrees
    769             Tth = th*2.
    770763       
    771764
     
    808801        print sigstr
    809802       
    810     def strainCalc(E,xyd,wave):
    811         x,y,dsp = xyd
    812         tth = 2.0*npasind(wave/(2.*dsp))
    813        
     803    def strainCalc(E,xyd,wave,phi):
     804        th,azm,dsp = xyd
     805        th0 = npasind(wave/(2.*dsp))
     806        dth = 180.*np.sum(StrSta['strain']*calcFij(phi,0.,azm,th))/(np.pi*1.e6) #in degrees
     807       
  • trunk/GSASIIphsGUI.py

    r699 r701  
    620620                cell[7] = G2lat.calc_V(G2lat.cell2A(cell[1:7]))
    621621                volVal.SetValue("%.3f"%(cell[7]))
     622                denList = denSizer.GetChildren()
     623                density,mattCoeff = getDensity()
     624                denList[1].GetWindow().SetValue('%.3f'%(density))
     625                if len(denList) > 2:
     626                    denList[3].GetWindow().SetValue('%.3f'%(mattCoeff))
    622627                generalData['Cell'] = cell
    623                 dataDisplay.DestroyChildren()           #needed to clear away bad cellSizer, etc.
    624                 wx.CallAfter(UpdateGeneral)
    625628           
    626629            cell = generalData['Cell']
     
    662665                indx = generalData['AtomTypes'].index(item)
    663666                data['General']['AtomMass'][indx] = generalData['Isotopes'][item][isotope][0]
    664                 dataDisplay.DestroyChildren()           #needed to clear away bad cellSizer, etc.
    665                 wx.CallAfter(UpdateGeneral)
     667                denList = denSizer.GetChildren()
     668                density,mattCoeff = getDensity()
     669                denList[1].GetWindow().SetValue('%.3f'%(density))
     670                if len(denList) > 2:
     671                    denList[3].GetWindow().SetValue('%.3f'%(mattCoeff))
    666672               
    667673            elemSizer = wx.FlexGridSizer(8,len(generalData['AtomTypes'])+1,1,1)
     
    711717                elemSizer.Add(colorTxt,0,wx.ALIGN_CENTER_VERTICAL)
    712718            return elemSizer
    713            
    714         def DenSizer():
     719       
     720        def getDensity():
    715721           
    716722            mass = 0.
    717723            for i,elem in enumerate(generalData['AtomTypes']):
    718724                mass += generalData['NoAtoms'][elem]*generalData['AtomMass'][i]
     725            Volume = generalData['Cell'][7]
     726            density = mass/(0.6022137*Volume)
     727            return density,Volume/mass
     728           
     729        def DenSizer():
     730           
     731            density,mattCoeff = getDensity()
    719732            denSizer = wx.BoxSizer(wx.HORIZONTAL)
    720733            denSizer.Add(wx.StaticText(dataDisplay,-1,' Density: '),0,wx.ALIGN_CENTER_VERTICAL)
    721             Volume = generalData['Cell'][7]
    722             density = mass/(0.6022137*Volume)
    723734            denTxt = wx.TextCtrl(dataDisplay,-1,'%.3f'%(density),style=wx.TE_READONLY)
    724735            denTxt.SetBackgroundColour(VERY_LIGHT_GREY)
     
    727738                denSizer.Add(wx.StaticText(dataDisplay,-1,' Matthews coeff.: '),
    728739                    0,wx.ALIGN_CENTER_VERTICAL)
    729                 mattTxt = wx.TextCtrl(dataDisplay,-1,'%.3f'%(Volume/mass),style=wx.TE_READONLY)
     740                mattTxt = wx.TextCtrl(dataDisplay,-1,'%.3f'%(mattCoeff),style=wx.TE_READONLY)
    730741                mattTxt.SetBackgroundColour(VERY_LIGHT_GREY)
    731742                denSizer.Add(mattTxt,0,wx.ALIGN_CENTER_VERTICAL)
     
    888899        Indx = {}
    889900        if len(generalData['AtomTypes']):
    890             mainSizer.Add(DenSizer())
     901            denSizer = DenSizer()
     902            mainSizer.Add(denSizer)
    891903            mainSizer.Add((5,5),0)           
    892904            mainSizer.Add(ElemSizer())
  • trunk/GSASIIpwdGUI.py

    r700 r701  
    18631863        Icorr = np.array([refl[13] for refl in data[G2frame.RefList]])
    18641864        I100 = refList.T[8]*Icorr
    1865         I100 *= 100.0/np.max(I100)
     1865        Imax = np.max(I100)
     1866        if Imax:
     1867            I100 *= 100.0/Imax
    18661868        refList = np.vstack((refList.T,I100)).T
    18671869    for i in range(len(refList)): rowLabels.append(str(i))
  • trunk/GSASIIstruct.py

    r697 r701  
    29792979                varylist,Histogram,Phases,calcControls,pawleyLookup)
    29802980            if dlg:
    2981                 dlg.Update(Histogram['wR'],newmsg='Hessian for histogram %d Rw=%8.3f%s'%(hId,Histogram['wR'],'%'))[0]
     2981                dlg.Update(Histogram['wR'],newmsg='Hessian for histogram %d\nAll data Rw=%8.3f%s'%(hId,Histogram['wR'],'%'))[0]
    29822982            if len(Hess):
    29832983                Vec += np.sum(dMdvh*np.sqrt(W[xB:xF])*dy[xB:xF],axis=1)
Note: See TracChangeset for help on using the changeset viewer.