- Timestamp:
- Apr 4, 2017 11:25:55 AM (8 years ago)
- Branches:
- master, ESS_GUI, ESS_GUI_Docs, ESS_GUI_batch_fitting, ESS_GUI_bumps_abstraction, ESS_GUI_iss1116, ESS_GUI_iss879, ESS_GUI_iss959, ESS_GUI_opencl, ESS_GUI_ordering, ESS_GUI_sync_sascalc, costrafo411, magnetic_scatt, release-4.2.2, ticket-1009, ticket-1094-headless, ticket-1242-2d-resolution, ticket-1243, ticket-1249, ticket885, unittest-saveload
- Children:
- 063dd44
- Parents:
- a7030c4 (diff), 36d69e1 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent. - git-author:
- Andrew Jackson <andrew.jackson@…> (04/04/17 11:25:55)
- git-committer:
- GitHub <noreply@…> (04/04/17 11:25:55)
- Location:
- src/sas
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
src/sas/sascalc/dataloader/manipulations.py
rb2b36932 r36d69e1 80 80 81 81 """ 82 if data2d.data == None or data2d.x_bins == None or data2d.y_bins ==None:82 if data2d.data is None or data2d.x_bins is None or data2d.y_bins is None: 83 83 raise ValueError, "Can't convert this data: data=None..." 84 84 new_x = numpy.tile(data2d.x_bins, (len(data2d.y_bins), 1)) … … 90 90 qy_data = new_y.flatten() 91 91 q_data = numpy.sqrt(qx_data * qx_data + qy_data * qy_data) 92 if data2d.err_data ==None or numpy.any(data2d.err_data <= 0):92 if data2d.err_data is None or numpy.any(data2d.err_data <= 0): 93 93 new_err_data = numpy.sqrt(numpy.abs(new_data)) 94 94 else: -
src/sas/sascalc/dataloader/readers/IgorReader.py
rb699768 r36d69e1 13 13 ############################################################################# 14 14 import os 15 import numpy 16 import math 17 #import logging 15 18 16 from sas.sascalc.dataloader.data_info import Data2D 19 17 from sas.sascalc.dataloader.data_info import Detector 20 18 from sas.sascalc.dataloader.manipulations import reader2D_converter 19 import numpy as np 21 20 22 21 # Look for unit converter … … 40 39 """ Read file """ 41 40 if not os.path.isfile(filename): 42 raise ValueError, \ 43 "Specified file %s is not a regular file" % filename 44 45 # Read file 46 f = open(filename, 'r') 47 buf = f.read() 48 49 # Instantiate data object 41 raise ValueError("Specified file %s is not a regular " 42 "file" % filename) 43 50 44 output = Data2D() 45 51 46 output.filename = os.path.basename(filename) 52 47 detector = Detector() 53 if len(output.detector) > 0:54 print str(output.detector[0])48 if len(output.detector): 49 print(str(output.detector[0])) 55 50 output.detector.append(detector) 56 57 # Get content 58 dataStarted = False 59 60 lines = buf.split('\n') 61 itot = 0 62 x = [] 63 y = [] 64 65 ncounts = 0 66 67 xmin = None 68 xmax = None 69 ymin = None 70 ymax = None 71 72 i_x = 0 73 i_y = -1 74 i_tot_row = 0 75 76 isInfo = False 77 isCenter = False 78 79 data_conv_q = None 80 data_conv_i = None 81 82 if has_converter == True and output.Q_unit != '1/A': 51 52 data_conv_q = data_conv_i = None 53 54 if has_converter and output.Q_unit != '1/A': 83 55 data_conv_q = Converter('1/A') 84 56 # Test it 85 57 data_conv_q(1.0, output.Q_unit) 86 58 87 if has_converter == Trueand output.I_unit != '1/cm':59 if has_converter and output.I_unit != '1/cm': 88 60 data_conv_i = Converter('1/cm') 89 61 # Test it 90 62 data_conv_i(1.0, output.I_unit) 91 92 for line in lines: 93 94 # Find setup info line 95 if isInfo: 96 isInfo = False 97 line_toks = line.split() 98 # Wavelength in Angstrom 99 try: 100 wavelength = float(line_toks[1]) 101 except: 102 msg = "IgorReader: can't read this file, missing wavelength" 103 raise ValueError, msg 104 105 #Find # of bins in a row assuming the detector is square. 106 if dataStarted == True: 107 try: 108 value = float(line) 109 except: 110 # Found a non-float entry, skip it 111 continue 112 113 # Get total bin number 114 115 i_tot_row += 1 116 i_tot_row = math.ceil(math.sqrt(i_tot_row)) - 1 117 #print "i_tot", i_tot_row 118 size_x = i_tot_row # 192#128 119 size_y = i_tot_row # 192#128 120 output.data = numpy.zeros([size_x, size_y]) 121 output.err_data = numpy.zeros([size_x, size_y]) 122 123 #Read Header and 2D data 124 for line in lines: 125 # Find setup info line 126 if isInfo: 127 isInfo = False 128 line_toks = line.split() 129 # Wavelength in Angstrom 130 try: 131 wavelength = float(line_toks[1]) 132 except: 133 msg = "IgorReader: can't read this file, missing wavelength" 134 raise ValueError, msg 135 # Distance in meters 136 try: 137 distance = float(line_toks[3]) 138 except: 139 msg = "IgorReader: can't read this file, missing distance" 140 raise ValueError, msg 141 142 # Distance in meters 143 try: 144 transmission = float(line_toks[4]) 145 except: 146 msg = "IgorReader: can't read this file, " 147 msg += "missing transmission" 148 raise ValueError, msg 149 150 if line.count("LAMBDA") > 0: 151 isInfo = True 152 153 # Find center info line 154 if isCenter: 155 isCenter = False 156 line_toks = line.split() 157 158 # Center in bin number: Must substrate 1 because 159 #the index starts from 1 160 center_x = float(line_toks[0]) - 1 161 center_y = float(line_toks[1]) - 1 162 163 if line.count("BCENT") > 0: 164 isCenter = True 165 166 # Find data start 167 if line.count("***")>0: 168 dataStarted = True 169 170 # Check that we have all the info 171 if wavelength == None \ 172 or distance == None \ 173 or center_x == None \ 174 or center_y == None: 175 msg = "IgorReader:Missing information in data file" 176 raise ValueError, msg 177 178 if dataStarted == True: 179 try: 180 value = float(line) 181 except: 182 # Found a non-float entry, skip it 183 continue 184 185 # Get bin number 186 if math.fmod(itot, i_tot_row) == 0: 187 i_x = 0 188 i_y += 1 189 else: 190 i_x += 1 191 192 output.data[i_y][i_x] = value 193 ncounts += 1 194 195 # Det 640 x 640 mm 196 # Q = 4pi/lambda sin(theta/2) 197 # Bin size is 0.5 cm 198 #REmoved +1 from theta = (i_x-center_x+1)*0.5 / distance 199 # / 100.0 and 200 #REmoved +1 from theta = (i_y-center_y+1)*0.5 / 201 # distance / 100.0 202 #ToDo: Need complete check if the following 203 # covert process is consistent with fitting.py. 204 theta = (i_x - center_x) * 0.5 / distance / 100.0 205 qx = 4.0 * math.pi / wavelength * math.sin(theta/2.0) 206 207 if has_converter == True and output.Q_unit != '1/A': 208 qx = data_conv_q(qx, units=output.Q_unit) 209 210 if xmin == None or qx < xmin: 211 xmin = qx 212 if xmax == None or qx > xmax: 213 xmax = qx 214 215 theta = (i_y - center_y) * 0.5 / distance / 100.0 216 qy = 4.0 * math.pi / wavelength * math.sin(theta / 2.0) 217 218 if has_converter == True and output.Q_unit != '1/A': 219 qy = data_conv_q(qy, units=output.Q_unit) 220 221 if ymin == None or qy < ymin: 222 ymin = qy 223 if ymax == None or qy > ymax: 224 ymax = qy 225 226 if not qx in x: 227 x.append(qx) 228 if not qy in y: 229 y.append(qy) 230 231 itot += 1 232 233 63 64 data_row = 0 65 wavelength = distance = center_x = center_y = None 66 dataStarted = isInfo = isCenter = False 67 68 with open(filename, 'r') as f: 69 for line in f: 70 data_row += 1 71 # Find setup info line 72 if isInfo: 73 isInfo = False 74 line_toks = line.split() 75 # Wavelength in Angstrom 76 try: 77 wavelength = float(line_toks[1]) 78 except ValueError: 79 msg = "IgorReader: can't read this file, missing wavelength" 80 raise ValueError(msg) 81 # Distance in meters 82 try: 83 distance = float(line_toks[3]) 84 except ValueError: 85 msg = "IgorReader: can't read this file, missing distance" 86 raise ValueError(msg) 87 88 # Distance in meters 89 try: 90 transmission = float(line_toks[4]) 91 except: 92 msg = "IgorReader: can't read this file, " 93 msg += "missing transmission" 94 raise ValueError(msg) 95 96 if line.count("LAMBDA"): 97 isInfo = True 98 99 # Find center info line 100 if isCenter: 101 isCenter = False 102 line_toks = line.split() 103 104 # Center in bin number: Must subtract 1 because 105 # the index starts from 1 106 center_x = float(line_toks[0]) - 1 107 center_y = float(line_toks[1]) - 1 108 109 if line.count("BCENT"): 110 isCenter = True 111 112 # Find data start 113 if line.count("***"): 114 # now have to continue to blank line 115 dataStarted = True 116 117 # Check that we have all the info 118 if (wavelength is None 119 or distance is None 120 or center_x is None 121 or center_y is None): 122 msg = "IgorReader:Missing information in data file" 123 raise ValueError(msg) 124 125 if dataStarted: 126 if len(line.rstrip()): 127 continue 128 else: 129 break 130 131 # The data is loaded in row major order (last index changing most 132 # rapidly). However, the original data is in column major order (first 133 # index changing most rapidly). The swap to column major order is done 134 # in reader2D_converter at the end of this method. 135 data = np.loadtxt(filename, skiprows=data_row) 136 size_x = size_y = int(np.rint(np.sqrt(data.size))) 137 output.data = np.reshape(data, (size_x, size_y)) 138 output.err_data = np.zeros_like(output.data) 139 140 # Det 640 x 640 mm 141 # Q = 4 * pi/lambda * sin(theta/2) 142 # Bin size is 0.5 cm 143 # Removed +1 from theta = (i_x - center_x + 1)*0.5 / distance 144 # / 100.0 and 145 # Removed +1 from theta = (i_y - center_y + 1)*0.5 / 146 # distance / 100.0 147 # ToDo: Need complete check if the following 148 # convert process is consistent with fitting.py. 149 150 # calculate qx, qy bin centers of each pixel in the image 151 theta = (np.arange(size_x) - center_x) * 0.5 / distance / 100. 152 qx = 4 * np.pi / wavelength * np.sin(theta/2) 153 154 theta = (np.arange(size_y) - center_y) * 0.5 / distance / 100. 155 qy = 4 * np.pi / wavelength * np.sin(theta/2) 156 157 if has_converter and output.Q_unit != '1/A': 158 qx = data_conv_q(qx, units=output.Q_unit) 159 qy = data_conv_q(qx, units=output.Q_unit) 160 161 xmax = np.max(qx) 162 xmin = np.min(qx) 163 ymax = np.max(qy) 164 ymin = np.min(qy) 165 166 # calculate edge offset in q. 234 167 theta = 0.25 / distance / 100.0 235 xstep = 4.0 * math.pi / wavelength * math.sin(theta / 2.0)168 xstep = 4.0 * np.pi / wavelength * np.sin(theta / 2.0) 236 169 237 170 theta = 0.25 / distance / 100.0 238 ystep = 4.0 * math.pi/ wavelength * math.sin(theta / 2.0)171 ystep = 4.0 * np.pi/ wavelength * np.sin(theta / 2.0) 239 172 240 173 # Store all data ###################################### 241 174 # Store wavelength 242 if has_converter == Trueand output.source.wavelength_unit != 'A':175 if has_converter and output.source.wavelength_unit != 'A': 243 176 conv = Converter('A') 244 177 wavelength = conv(wavelength, units=output.source.wavelength_unit) … … 246 179 247 180 # Store distance 248 if has_converter == Trueand detector.distance_unit != 'm':181 if has_converter and detector.distance_unit != 'm': 249 182 conv = Converter('m') 250 183 distance = conv(distance, units=detector.distance_unit) … … 254 187 output.sample.transmission = transmission 255 188 256 # Store pixel size 189 # Store pixel size (mm) 257 190 pixel = 5.0 258 if has_converter == Trueand detector.pixel_size_unit != 'mm':191 if has_converter and detector.pixel_size_unit != 'mm': 259 192 conv = Converter('mm') 260 193 pixel = conv(pixel, units=detector.pixel_size_unit) … … 267 200 268 201 # Store limits of the image (2D array) 269 xmin = xmin -xstep / 2.0270 xmax = xmax +xstep / 2.0271 ymin = ymin -ystep / 2.0272 ymax = ymax +ystep / 2.0273 if has_converter == Trueand output.Q_unit != '1/A':202 xmin -= xstep / 2.0 203 xmax += xstep / 2.0 204 ymin -= ystep / 2.0 205 ymax += ystep / 2.0 206 if has_converter and output.Q_unit != '1/A': 274 207 xmin = data_conv_q(xmin, units=output.Q_unit) 275 208 xmax = data_conv_q(xmax, units=output.Q_unit) … … 282 215 283 216 # Store x and y axis bin centers 284 output.x_bins = x285 output.y_bins = y217 output.x_bins = qx.tolist() 218 output.y_bins = qy.tolist() 286 219 287 220 # Units -
src/sas/sascalc/calculator/slit_length_calculator.py
rb699768 rbfba720 16 16 # y data 17 17 self.y = None 18 # default slit length18 # default slit length 19 19 self.slit_length = 0.0 20 20 … … 42 42 """ 43 43 # None data do nothing 44 if self.y == None or self.x ==None:44 if self.y is None or self.x is None: 45 45 return 46 46 # set local variable … … 54 54 y_sum = 0.0 55 55 y_max = 0.0 56 ind = 0 .056 ind = 0 57 57 58 58 # sum 10 or more y values until getting max_y, … … 70 70 # defaults 71 71 y_half_d = 0.0 72 ind = 0 .072 ind = 0 73 73 # find indices where it crosses y = y_half. 74 74 while True: … … 81 81 82 82 # y value and ind just before passed the spot of the half height 83 y_half_u = y[ind -1]83 y_half_u = y[ind - 1] 84 84 85 85 # get corresponding x values 86 86 x_half_d = x[ind] 87 x_half_u = x[ind -1]87 x_half_u = x[ind - 1] 88 88 89 89 # calculate x at y = y_half using linear interpolation … … 91 91 x_half = (x_half_d + x_half_u)/2.0 92 92 else: 93 x_half = ( x_half_u * (y_half - y_half_d) \94 + x_half_d * (y_half_u - y_half)) \95 / (y_half_u - y_half_d)93 x_half = ((x_half_u * (y_half - y_half_d) 94 + x_half_d * (y_half_u - y_half)) 95 / (y_half_u - y_half_d)) 96 96 97 97 # Our slit length is half width, so just give half beam value -
src/sas/sascalc/dataloader/readers/cansas_reader.py
rc221349 r8434365 930 930 self._write_data(datainfo, entry_node) 931 931 # Transmission Spectrum Info 932 self._write_trans_spectrum(datainfo, entry_node) 932 # TODO: fix the writer to linearize all data, including T_spectrum 933 # self._write_trans_spectrum(datainfo, entry_node) 933 934 # Sample info 934 935 self._write_sample_info(datainfo, entry_node) -
src/sas/sascalc/fit/BumpsFitting.py
r345e7e4 r1a30720 352 352 except Exception as exc: 353 353 best, fbest = None, numpy.NaN 354 errors = [str(exc), traceback. traceback.format_exc()]354 errors = [str(exc), traceback.format_exc()] 355 355 finally: 356 356 mapper.stop_mapper(fitdriver.mapper) -
src/sas/sasgui/guiframe/acknowledgebox.py
rc1fdf84 r74c8cd0 11 11 import wx.richtext 12 12 import wx.lib.hyperlink 13 from wx.lib.expando import ExpandoTextCtrl 13 14 import random 14 15 import os.path … … 36 37 Shows the current method for acknowledging SasView in 37 38 scholarly publications. 38 39 39 """ 40 40 … … 44 44 wx.Dialog.__init__(self, *args, **kwds) 45 45 46 self.ack = wx.TextCtrl(self, style=wx.TE_LEFT|wx.TE_MULTILINE|wx.TE_BESTWRAP|wx.TE_READONLY|wx.TE_NO_VSCROLL)46 self.ack = ExpandoTextCtrl(self, style=wx.TE_LEFT|wx.TE_MULTILINE|wx.TE_BESTWRAP|wx.TE_READONLY|wx.TE_NO_VSCROLL) 47 47 self.ack.SetValue(config._acknowledgement_publications) 48 self.ack.SetMinSize((-1, 55)) 48 #self.ack.SetMinSize((-1, 55)) 49 self.citation = ExpandoTextCtrl(self, style=wx.TE_LEFT|wx.TE_MULTILINE|wx.TE_BESTWRAP|wx.TE_READONLY|wx.TE_NO_VSCROLL) 50 self.citation.SetValue(config._acknowledgement_citation) 49 51 self.preamble = wx.StaticText(self, -1, config._acknowledgement_preamble) 50 52 items = [config._acknowledgement_preamble_bullet1, … … 52 54 config._acknowledgement_preamble_bullet3, 53 55 config._acknowledgement_preamble_bullet4] 54 self.list1 = wx.StaticText(self, -1, " \t(1) " + items[0])55 self.list2 = wx.StaticText(self, -1, " \t(2) " + items[1])56 self.list3 = wx.StaticText(self, -1, " \t(3) " + items[2])57 self.list4 = wx.StaticText(self, -1, " \t(4) " + items[3])56 self.list1 = wx.StaticText(self, -1, "(1) " + items[0]) 57 self.list2 = wx.StaticText(self, -1, "(2) " + items[1]) 58 self.list3 = wx.StaticText(self, -1, "(3) " + items[2]) 59 self.list4 = wx.StaticText(self, -1, "(4) " + items[3]) 58 60 self.static_line = wx.StaticLine(self, 0) 59 61 self.__set_properties() … … 69 71 self.SetTitle("Acknowledging SasView") 70 72 #Increased size of box from (525, 225), SMK, 04/10/16 71 self.Set Size((600, 300))73 self.SetClientSize((600, 320)) 72 74 # end wxGlade 73 75 … … 81 83 sizer_titles.Add(self.preamble, 0, wx.ALL|wx.EXPAND, 5) 82 84 sizer_titles.Add(self.list1, 0, wx.ALL|wx.EXPAND, 5) 85 sizer_titles.Add(self.ack, 0, wx.ALL|wx.EXPAND, 5) 83 86 sizer_titles.Add(self.list2, 0, wx.ALL|wx.EXPAND, 5) 87 sizer_titles.Add(self.citation, 0, wx.ALL|wx.EXPAND, 5) 84 88 sizer_titles.Add(self.list3, 0, wx.ALL|wx.EXPAND, 5) 89 #sizer_titles.Add(self.static_line, 0, wx.ALL|wx.EXPAND, 0) 85 90 sizer_titles.Add(self.list4, 0, wx.ALL|wx.EXPAND, 5) 86 sizer_titles.Add(self.static_line, 0, wx.ALL|wx.EXPAND, 0)87 sizer_titles.Add(self.ack, 0, wx.ALL|wx.EXPAND, 5)88 91 sizer_main.Add(sizer_titles, -1, wx.ALL|wx.EXPAND, 5) 89 92 self.SetAutoLayout(True) … … 91 94 self.Layout() 92 95 self.Centre() 96 #self.SetClientSize(sizer_main.GetSize()) 93 97 # end wxGlade 94 98 -
src/sas/sasgui/guiframe/config.py
rd85c194 rf9d1f60 1 1 """ 2 Application settings2 Application settings 3 3 """ 4 import time 4 5 import os 5 import time6 6 from sas.sasgui.guiframe.gui_style import GUIFRAME 7 import sas.sasview 8 import logging 9 7 10 # Version of the application 8 __appname__ = " DummyView"9 __version__ = '0.0.0'10 __build__ = '1'11 __appname__ = "SasView" 12 __version__ = sas.sasview.__version__ 13 __build__ = sas.sasview.__build__ 11 14 __download_page__ = 'https://github.com/SasView/sasview/releases' 12 15 __update_URL__ = 'http://www.sasview.org/latestversion.json' 13 16 14 15 17 # Debug message flag 16 __EVT_DEBUG__ = True18 __EVT_DEBUG__ = False 17 19 18 20 # Flag for automated testing … … 29 31 _acknowledgement_preamble =\ 30 32 '''To ensure the long term support and development of this software please''' +\ 31 ''' remember to do the following.'''33 ''' remember to:''' 32 34 _acknowledgement_preamble_bullet1 =\ 33 '''Acknowledge its use in your publications as suggested below'''35 '''Acknowledge its use in your publications as :''' 34 36 _acknowledgement_preamble_bullet2 =\ 35 '''Reference the following website: http://www.sasview.org'''37 '''Reference SasView as:''' 36 38 _acknowledgement_preamble_bullet3 =\ 37 39 '''Reference the model you used if appropriate (see documentation for refs)''' … … 39 41 '''Send us your reference for our records: developers@sasview.org''' 40 42 _acknowledgement_publications = \ 41 '''This work benefited from the use of the SasView application, originally 42 developed under NSF award DMR-0520547. 43 '''This work benefited from the use of the SasView application, originally developed under NSF Award DMR-0520547. SasView also contains code developed with funding from the EU Horizon 2020 programme under the SINE2020 project Grant No 654000.''' 44 _acknowledgement_citation = \ 45 '''M. Doucet et al. SasView Version 4.1, Zenodo, 10.5281/zenodo.438138''' 46 47 _acknowledgement = \ 48 '''This work was originally developed as part of the DANSE project funded by the US NSF under Award DMR-0520547,\n but is currently maintained by a collaboration between UTK, UMD, NIST, ORNL, ISIS, ESS, ILL, ANSTO and TU Delft and the scattering community.\n\n SasView also contains code developed with funding from the EU Horizon 2020 programme under the SINE2020 project (Grant No 654000).\nA list of individual contributors can be found at: https://github.com/orgs/SasView/people 43 49 ''' 44 _acknowledgement = \45 '''This work originally developed as part of the DANSE project funded by the NSF46 under grant DMR-0520547, and currently maintained by NIST, UMD, ORNL, ISIS, ESS47 and ILL.48 50 49 '''50 51 _homepage = "http://www.sasview.org" 51 _download = "http://sourceforge.net/projects/sasview/files/"52 _download = __download_page__ 52 53 _authors = [] 53 54 _paper = "http://sourceforge.net/p/sasview/tickets/" 54 55 _license = "mailto:help@sasview.org" 55 _nsf_logo = "images/nsf_logo.png" 56 _danse_logo = "images/danse_logo.png" 57 _inst_logo = "images/utlogo.gif" 58 _nist_logo = "images/nist_logo.png" 59 _umd_logo = "images/umd_logo.png" 60 _sns_logo = "images/sns_logo.png" 61 _isis_logo = "images/isis_logo.png" 62 _ess_logo = "images/ess_logo.png" 63 _ill_logo = "images/ill_logo.png" 56 57 58 icon_path = os.path.abspath(os.path.join(os.path.dirname(__file__), "images")) 59 logging.info("icon path: %s" % icon_path) 60 media_path = os.path.abspath(os.path.join(os.path.dirname(__file__), "media")) 61 test_path = os.path.abspath(os.path.join(os.path.dirname(__file__), "test")) 62 63 _nist_logo = os.path.join(icon_path, "nist_logo.png") 64 _umd_logo = os.path.join(icon_path, "umd_logo.png") 65 _sns_logo = os.path.join(icon_path, "sns_logo.png") 66 _ornl_logo = os.path.join(icon_path, "ornl_logo.png") 67 _isis_logo = os.path.join(icon_path, "isis_logo.png") 68 _ess_logo = os.path.join(icon_path, "ess_logo.png") 69 _ill_logo = os.path.join(icon_path, "ill_logo.png") 70 _ansto_logo = os.path.join(icon_path, "ansto_logo.png") 71 _tudelft_logo = os.path.join(icon_path, "tudelft_logo.png") 72 _nsf_logo = os.path.join(icon_path, "nsf_logo.png") 73 _danse_logo = os.path.join(icon_path, "danse_logo.png") 74 _inst_logo = os.path.join(icon_path, "utlogo.gif") 64 75 _nist_url = "http://www.nist.gov/" 65 76 _umd_url = "http://www.umd.edu/" 66 77 _sns_url = "http://neutrons.ornl.gov/" 78 _ornl_url = "http://neutrons.ornl.gov/" 67 79 _nsf_url = "http://www.nsf.gov" 68 _danse_url = "http://www.cacr.caltech.edu/projects/danse/release/index.html"69 _inst_url = "http://www.utk.edu"70 80 _isis_url = "http://www.isis.stfc.ac.uk/" 71 81 _ess_url = "http://ess-scandinavia.eu/" 72 82 _ill_url = "http://www.ill.eu/" 73 _corner_image = "images/angles_flat.png" 74 _welcome_image = "images/SVwelcome.png" 75 _copyright = "(c) 2008, University of Tennessee" 76 #edit the lists below of file state your plugin can read 77 #for sasview this how you can edit these lists 78 #PLUGIN_STATE_EXTENSIONS = ['.prv','.fitv', '.inv'] 79 #APPLICATION_STATE_EXTENSION = '.svs' 80 #PLUGINS_WLIST = ['P(r) files (*.prv)|*.prv', 81 # 'Fitting files (*.fitv)|*.fitv', 82 # 'Invariant files (*.inv)|*.inv'] 83 #APPLICATION_WLIST = 'SasView files (*.svs)|*.svs' 84 APPLICATION_WLIST = '' 85 APPLICATION_STATE_EXTENSION = None 86 PLUGINS_WLIST = [] 87 PLUGIN_STATE_EXTENSIONS = [] 88 SPLASH_SCREEN_PATH = "images/danse_logo.png" 89 DEFAULT_STYLE = GUIFRAME.SINGLE_APPLICATION 90 SPLASH_SCREEN_WIDTH = 500 91 SPLASH_SCREEN_HEIGHT = 300 92 WELCOME_PANEL_ON = False 93 TUTORIAL_PATH = None 94 SS_MAX_DISPLAY_TIME = 1500 95 PLOPANEL_WIDTH = 350 96 PLOPANEL_HEIGTH = 350 97 GUIFRAME_WIDTH = 1000 98 GUIFRAME_HEIGHT = 800 99 CONTROL_WIDTH = -1 100 CONTROL_HEIGHT = -1 101 SetupIconFile_win = os.path.join("images", "ball.ico") 102 SetupIconFile_mac = os.path.join("images", "ball.icns") 103 DefaultGroupName = "DANSE" 104 OutputBaseFilename = "setupGuiFrame" 83 _ansto_url = "http://www.ansto.gov.au/" 84 _tudelft_url = "http://www.tnw.tudelft.nl/en/cooperation/facilities/reactor-instituut-delft/" 85 _danse_url = "http://www.cacr.caltech.edu/projects/danse/release/index.html" 86 _inst_url = "http://www.utk.edu" 87 _corner_image = os.path.join(icon_path, "angles_flat.png") 88 _welcome_image = os.path.join(icon_path, "SVwelcome.png") 89 _copyright = "(c) 2009 - 2017, UTK, UMD, NIST, ORNL, ISIS, ESS, ILL, ANSTO and TU Delft" 90 marketplace_url = "http://marketplace.sasview.org/" 91 92 #edit the list of file state your plugin can read 93 APPLICATION_WLIST = 'SasView files (*.svs)|*.svs' 94 APPLICATION_STATE_EXTENSION = '.svs' 95 GUIFRAME_WIDTH = 1150 96 GUIFRAME_HEIGHT = 840 97 PLUGIN_STATE_EXTENSIONS = ['.fitv', '.inv', '.prv', '.crf'] 98 PLUGINS_WLIST = ['Fitting files (*.fitv)|*.fitv', 99 'Invariant files (*.inv)|*.inv', 100 'P(r) files (*.prv)|*.prv', 101 'Corfunc files (*.crf)|*.crf'] 102 PLOPANEL_WIDTH = 415 103 PLOPANEL_HEIGTH = 370 105 104 DATAPANEL_WIDTH = 235 106 105 DATAPANEL_HEIGHT = 700 106 SPLASH_SCREEN_PATH = os.path.join(icon_path, "SVwelcome_mini.png") 107 TUTORIAL_PATH = os.path.join(media_path, "Tutorial.pdf") 108 DEFAULT_STYLE = GUIFRAME.MULTIPLE_APPLICATIONS|GUIFRAME.MANAGER_ON\ 109 |GUIFRAME.CALCULATOR_ON|GUIFRAME.TOOLBAR_ON 110 SPLASH_SCREEN_WIDTH = 512 111 SPLASH_SCREEN_HEIGHT = 366 112 SS_MAX_DISPLAY_TIME = 2000 113 WELCOME_PANEL_ON = True 114 WELCOME_PANEL_SHOW = False 115 CLEANUP_PLOT = False 116 # OPEN and SAVE project menu 117 OPEN_SAVE_PROJECT_MENU = True 118 #VIEW MENU 119 VIEW_MENU = True 120 #EDIT MENU 121 EDIT_MENU = True 122 123 SetupIconFile_win = os.path.join(icon_path, "ball.ico") 124 SetupIconFile_mac = os.path.join(icon_path, "ball.icns") 125 DefaultGroupName = "." 126 OutputBaseFilename = "setupSasView" 127 107 128 FIXED_PANEL = True 108 129 DATALOADER_SHOW = True … … 113 134 # set a default perspective 114 135 DEFAULT_PERSPECTIVE = 'None' 115 # OPEN and SAVE project menu 116 OPEN_SAVE_PROJECT_MENU = True 117 CLEANUP_PLOT = False 118 # OPEN and SAVE project menu 119 OPEN_SAVE_PROJECT_MENU = False 120 #VIEW MENU 121 VIEW_MENU = False 122 #EDIT MENU 123 EDIT_MENU = False 124 import wx.lib.newevent 125 (StatusBarEvent, EVT_STATUS) = wx.lib.newevent.NewEvent() 136 137 # Time out for updating sasview 138 UPDATE_TIMEOUT = 2 139 140 #OpenCL option 141 SAS_OPENCL = None 126 142 127 143 def printEVT(message): 128 """129 :TODO - need method documentation130 """131 144 if __EVT_DEBUG__: 145 """ 146 :TODO - Need method doc string 147 """ 132 148 print "%g: %s" % (time.clock(), message) 133 149 134 150 if __EVT_DEBUG_2_FILE__: 135 151 out = open(__EVT_DEBUG_FILENAME__, 'a') 136 152 out.write("%10g: %s\n" % (time.clock(), message)) 137 153 out.close() 138 -
src/sas/sasgui/perspectives/fitting/fitting.py
rddbac66 r4c5098c 1755 1755 data_id="Data " + data.name + " unsmeared", 1756 1756 dy=unsmeared_error) 1757 1758 if sq_model is not None and pq_model is not None: 1759 self.create_theory_1D(x, sq_model, page_id, model, data, state, 1760 data_description=model.name + " S(q)", 1761 data_id=str(page_id) + " " + data.name + " S(q)") 1762 self.create_theory_1D(x, pq_model, page_id, model, data, state, 1763 data_description=model.name + " P(q)", 1764 data_id=str(page_id) + " " + data.name + " P(q)") 1765 1757 # Comment this out until we can get P*S models with correctly populated parameters 1758 #if sq_model is not None and pq_model is not None: 1759 # self.create_theory_1D(x, sq_model, page_id, model, data, state, 1760 # data_description=model.name + " S(q)", 1761 # data_id=str(page_id) + " " + data.name + " S(q)") 1762 # self.create_theory_1D(x, pq_model, page_id, model, data, state, 1763 # data_description=model.name + " P(q)", 1764 # data_id=str(page_id) + " " + data.name + " P(q)") 1766 1765 1767 1766 current_pg = self.fit_panel.get_page_by_id(page_id) -
src/sas/sasgui/perspectives/fitting/pagestate.py
rd5aff7f r27109e5 819 819 820 820 attr = newdoc.createAttribute("version") 821 import sasview821 from sas import sasview 822 822 attr.nodeValue = sasview.__version__ 823 823 # attr.nodeValue = '1.0'
Note: See TracChangeset
for help on using the changeset viewer.