Changeset 1261 for trunk/exports/G2export_pwdr.py
- Timestamp:
- Mar 24, 2014 5:22:41 PM (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/exports/G2export_pwdr.py
r1236 r1261 38 38 self.multiple = True 39 39 40 def WriteInstFile(self,hist,Inst): 41 '''Write an instrument parameter file 42 ''' 43 prmname = os.path.splitext(self.filename)[0] + '.prm' 44 prmname = os.path.join(self.dirname,prmname) 45 self.OpenFile(prmname) 46 self.Write( ' 123456789012345678901234567890123456789012345678901234567890 ') 47 self.Write( 'INS BANK 1 ') 48 self.Write(('INS HTYPE %sR ')%(Inst['Type'][0])) 49 if 'Lam1' in Inst: #Ka1 & Ka2 50 self.Write(('INS 1 ICONS%10.7f%10.7f 0.0000 0.990 0 0.500 ')%(Inst['Lam1'][0],Inst['Lam2'][0])) 51 elif 'Lam' in Inst: #single wavelength 52 self.Write(('INS 1 ICONS%10.7f%10.7f 0.0000 0.990 0 0.500 ')%(Inst['Lam'][1],0.0)) 53 self.Write( 'INS 1 IRAD 0 ') 54 self.Write( 'INS 1I HEAD ') 55 self.Write( 'INS 1I ITYP 0 0.0000 180.0000 1 ') 56 self.Write(('INS 1DETAZM%10.3f ')%(Inst['Azimuth'][0])) 57 self.Write( 'INS 1PRCF1 3 8 0.00100 ') 58 self.Write(('INS 1PRCF11 %15.6g%15.6g%15.6g%15.6g ')%(Inst['U'][1],Inst['V'][1],Inst['W'][1],0.0)) 59 self.Write(('INS 1PRCF12 %15.6g%15.6g%15.6g%15.6g ')%(Inst['X'][1],Inst['Y'][1],Inst['SH/L'][1]/2.,Inst['SH/L'][1]/2.)) 60 self.CloseFile() 61 print('Parameters from '+str(hist)+' written to file '+str(prmname)) 62 return prmname 63 40 64 def Exporter(self,event=None): 41 65 '''Export one or more sets of powder data as FXYE file(s) … … 46 70 self.loadTree() 47 71 if self.ExportSelect( # set export parameters 48 AskFile= False # use the default file name, which is ignored72 AskFile='single' # get a file name/directory to save in 49 73 ): return 50 74 filenamelist = [] 51 75 for hist in self.histnam: 52 fileroot = G2obj.MakeUniqueLabel(self.MakePWDRfilename(hist),filenamelist) 53 # create an instrument parameter file 54 self.filename = fileroot + '.prm' 76 if len(self.histnam) > 1: 77 # multiple files: create a unique name from the histogram 78 fileroot = G2obj.MakeUniqueLabel(self.MakePWDRfilename(hist),filenamelist) 79 # create an instrument parameter file 80 self.filename = os.path.join(self.dirname,fileroot + self.extension) 81 else: 82 # use the supplied name, but force the extension 83 self.filename= os.path.splitext(self.filename)[0] + self.extension 84 85 histblk = self.Histograms[hist] 86 prmname = self.WriteInstFile(hist,histblk['Instrument Parameters'][0]) 87 55 88 self.OpenFile() 56 histblk = self.Histograms[hist]57 Inst = histblk['Instrument Parameters'][0]58 self.Write( ' 123456789012345678901234567890123456789012345678901234567890 ')59 self.Write( 'INS BANK 1 ')60 self.Write(('INS HTYPE %sR ')%(Inst['Type'][0]))61 if 'Lam1' in Inst: #Ka1 & Ka262 self.Write(('INS 1 ICONS%10.7f%10.7f 0.0000 0.990 0 0.500 ')%(Inst['Lam1'][0],Inst['Lam2'][0]))63 elif 'Lam' in Inst: #single wavelength64 self.Write(('INS 1 ICONS%10.7f%10.7f 0.0000 0.990 0 0.500 ')%(Inst['Lam'][1],0.0))65 self.Write( 'INS 1 IRAD 0 ')66 self.Write( 'INS 1I HEAD ')67 self.Write( 'INS 1I ITYP 0 0.0000 180.0000 1 ')68 self.Write(('INS 1DETAZM%10.3f ')%(Inst['Azimuth'][0]))69 self.Write( 'INS 1PRCF1 3 8 0.00100 ')70 self.Write(('INS 1PRCF11 %15.6g%15.6g%15.6g%15.6g ')%(Inst['U'][1],Inst['V'][1],Inst['W'][1],0.0))71 self.Write(('INS 1PRCF12 %15.6g%15.6g%15.6g%15.6g ')%(Inst['X'][1],Inst['Y'][1],Inst['SH/L'][1]/2.,Inst['SH/L'][1]/2.))72 self.CloseFile()73 print('Parameters from '+str(hist)+' written to file '+str(self.filename))74 prmname = self.filename75 76 self.filename = fileroot + self.extension77 self.OpenFile()78 histblk = self.Histograms[hist]79 89 self.Write(hist[5:]) 80 90 self.Write('Instrument parameter file:'+os.path.split(prmname)[1]) … … 95 105 self.Write(line) 96 106 self.CloseFile() 97 print('Histogram '+str(hist)+' written to file '+str(self.f ilename))107 print('Histogram '+str(hist)+' written to file '+str(self.fullpath)) 98 108 99 109 … … 121 131 self.loadTree() 122 132 if self.ExportSelect( # set export parameters 123 AskFile= False # use the default file name, which is ignored133 AskFile='single' # get a file name/directory to save in 124 134 ): return 125 135 filenamelist = [] 126 136 for hist in self.histnam: 127 fileroot = G2obj.MakeUniqueLabel(self.MakePWDRfilename(hist),filenamelist) 128 129 self.filename = fileroot + self.extension 137 if len(self.histnam) > 1: 138 # multiple files: create a unique name from the histogram 139 fileroot = G2obj.MakeUniqueLabel(self.MakePWDRfilename(hist),filenamelist) 140 # create an instrument parameter file 141 self.filename = os.path.join(self.dirname,fileroot + self.extension) 142 else: 143 # use the supplied name, but force the extension 144 self.filename= os.path.splitext(self.filename)[0] + self.extension 145 130 146 self.OpenFile() 131 147 histblk = self.Histograms[hist] … … 142 158 self.Write(line) 143 159 self.CloseFile() 144 print('Histogram '+str(hist)+' written to file '+str(self.f ilename))160 print('Histogram '+str(hist)+' written to file '+str(self.fullpath))
Note: See TracChangeset
for help on using the changeset viewer.