- Timestamp:
- Jul 28, 2008 10:14:16 AM (16 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.1.1, release-4.1.2, release-4.2.2, release_4.0.1, ticket-1009, ticket-1094-headless, ticket-1242-2d-resolution, ticket-1243, ticket-1249, ticket885, unittest-saveload
- Children:
- ea5551f
- Parents:
- 6aaf444
- Location:
- prview
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
prview/.pydevproject
rf3d51f6 r0bae207 4 4 <pydev_project> 5 5 <pydev_pathproperty name="org.python.pydev.PROJECT_SOURCE_PATH"> 6 <path>/prview /src</path>6 <path>/prview</path> 7 7 </pydev_pathproperty> 8 8 <pydev_property name="org.python.pydev.PYTHON_PROJECT_VERSION">python 2.5</pydev_property> -
prview/local_config.py
rfeb21d8 r0bae207 6 6 # Version of the application 7 7 __appname__ = "PrView" 8 __version__ = '0.2. 2'8 __version__ = '0.2.3' 9 9 __download_page__ = 'http://danse.chem.utk.edu' 10 __update_URL__ = 'http://danse.chem.utk.edu/prview_version. txt'10 __update_URL__ = 'http://danse.chem.utk.edu/prview_version.php' 11 11 12 12 -
prview/perspectives/pr/inversion_panel.py
r7a2feab r0bae207 411 411 explanation = "P(r) is found by fitting a set of base functions to I(Q). " 412 412 explanation += "The minimization involves a regularization term to ensure " 413 explanation += "a smooth P(r). The alpha parametergives the size of that "413 explanation += "a smooth P(r). The regularization constant gives the size of that " 414 414 explanation += "term. The suggested value is the value above which the " 415 415 explanation += "output P(r) will have only one peak." … … 837 837 if self.standalone==False: 838 838 self.file_radio.SetValue(True) 839 self.manager.show_data(path, reset=True) 839 840 self._on_pars_changed(None) 840 self.manager.show_data(path, reset=True)841 842 843 844 841 845 842 class HelpDialog(wx.Dialog): -
prview/perspectives/pr/pr.py
r900c787 r0bae207 52 52 ## Remember last plottable processed 53 53 self.last_data = "sphere_60_q0_2.txt" 54 self._current_file_data = None 54 55 ## Time elapsed for last computation [sec] 55 56 # Start with a good default … … 333 334 return self.parent.choose_file() 334 335 335 def load(self, path = "sphere_60_q0_2.txt"): 336 337 def load(self, path): 338 """ 339 Load data. This will eventually be replaced 340 by our standard DataLoader class. 341 """ 342 343 class FileData: 344 x = None 345 y = None 346 err = None 347 path = None 348 349 def __init__(self, path): 350 self.path = path 351 352 self._current_file_data = FileData(path) 353 print "load", path 354 basename = os.path.basename(path) 355 root, ext = os.path.splitext(basename) 356 if ext.lower()=='.abs': 357 x, y, err = self.load_abs(path) 358 359 else: 360 x, y, err = self.load_columns(path) 361 362 self._current_file_data.x = x 363 self._current_file_data.y = y 364 self._current_file_data.err = err 365 return x, y, err 366 367 def load_columns(self, path = "sphere_60_q0_2.txt"): 368 """ 369 Load 2- or 3- column ascii 370 """ 336 371 import numpy, math, sys 337 372 # Read the data from the data file … … 374 409 return data_x, data_y, data_err 375 410 411 def load_abs(self, path): 412 """ 413 Load an IGOR .ABS reduced file 414 @param path: file path 415 @return: x, y, err vectors 416 """ 417 import numpy, math, sys 418 # Read the data from the data file 419 data_x = numpy.zeros(0) 420 data_y = numpy.zeros(0) 421 data_err = numpy.zeros(0) 422 scale = None 423 min_err = 0.0 424 425 data_started = False 426 if not path == None: 427 input_f = open(path,'r') 428 buff = input_f.read() 429 lines = buff.split('\n') 430 for line in lines: 431 if data_started==True: 432 try: 433 toks = line.split() 434 x = float(toks[0]) 435 y = float(toks[1]) 436 if len(toks)>2: 437 err = float(toks[2]) 438 else: 439 if scale==None: 440 scale = 0.05*math.sqrt(y) 441 #scale = 0.05/math.sqrt(y) 442 min_err = 0.01*y 443 err = scale*math.sqrt(y)+min_err 444 #err = 0 445 446 data_x = numpy.append(data_x, x) 447 data_y = numpy.append(data_y, y) 448 data_err = numpy.append(data_err, err) 449 except: 450 pass 451 elif line.find("The 6 columns")>=0: 452 data_started = True 453 454 if not scale==None: 455 message = "The loaded file had no error bars, statistical errors are assumed." 456 wx.PostEvent(self.parent, StatusEvent(status=message)) 457 else: 458 wx.PostEvent(self.parent, StatusEvent(status='')) 459 460 return data_x, data_y, data_err 461 462 463 376 464 def pr_theory(self, r, R): 377 465 """ … … 556 644 self.control_panel.bck = pr.background 557 645 558 for i in range(len(out)):559 try:560 print "%d: %g +- %g" % (i, out[i], math.sqrt(math.fabs(cov[i][i])))561 except:562 print sys.exc_value563 print "%d: %g +- ?" % (i, out[i])564 565 # Make a plot of I(q) data566 646 if False: 647 for i in range(len(out)): 648 try: 649 print "%d: %g +- %g" % (i, out[i], math.sqrt(math.fabs(cov[i][i]))) 650 except: 651 print sys.exc_value 652 print "%d: %g +- ?" % (i, out[i]) 653 654 # Make a plot of I(q) data 567 655 new_plot = Data1D(self.pr.x, self.pr.y, dy=self.pr.err) 568 656 new_plot.name = "I_{obs}(q)" … … 589 677 590 678 591 if not path==None: 592 self._create_file_pr(path) 679 if path is not None: 680 pr = self._create_file_pr(path) 681 self.pr = pr 593 682 594 683 # Make a plot of I(q) data … … 727 816 from sans.guiframe.data_loader import load_ascii_1D 728 817 import numpy 818 729 819 # Load data 730 820 if os.path.isfile(path): 731 821 732 x, y, err = self.load(path) 822 if self._current_file_data is not None \ 823 and self._current_file_data.path==path: 824 x = self._current_file_data.x 825 y = self._current_file_data.y 826 err = self._current_file_data.err 827 else: 828 x, y, err = self.load(path) 733 829 #x, y, err = load_ascii_1D(path) 734 830 … … 756 852 pr.slit_width = self.slit_width 757 853 return pr 758 #self.pr = pr759 #return True760 #return False761 854 return None 762 855 -
prview/release_notes.txt
rf4e1c9e r0bae207 6 6 Package name: None 7 7 8 1- Version 0.2.2 8 1- Version 0.2.x 9 - Release date: ? 10 - Added functionality for .ABS IGOR reduced 1D files. 11 - Fixed problem with loading additional data after the P(r) graph's scale has been changed. 12 13 Version 0.2.2 9 14 10 15 - Release date: 7/8/2008 … … 48 53 49 54 3.1- All systems: 50 - None 55 Version 0.2.2: 56 - The application only loads .txt files. The expected format is 2- or 3-column ascii. 57 - More than a single additional data set should be plottable on the P(r) graph. 58 - Additional data plotted on the P(r) graph should also be normalizable. 59 - If additional P(r) data is loaded after a scale change has been done, the loaded data appears in another window rather than on the same graph. If additional P(r) data is loaded while the scale of the P(r) graph is linear, the behavior is correct. 60 - The application will not load data files with a point at Q=0. The user will not be notified. 61 51 62 52 63 3.2- Windows:
Note: See TracChangeset
for help on using the changeset viewer.