Changes in / [bcabf4e:2510b9b] in sasview
- Files:
-
- 1 added
- 18 edited
Legend:
- Unmodified
- Added
- Removed
-
.gitignore
r5dd7499 r51f1c347 14 14 .vagrant 15 15 .idea 16 .settings/ 16 17 build 17 18 dist -
docs/sphinx-docs/source/conf.py
r9a182b2 r220b1e7 53 53 # General information about the project. 54 54 project = u'SasView' 55 copyright = u'201 5, The SasView Project'55 copyright = u'2017, The SasView Project' 56 56 57 57 # The version info for the project you're documenting, acts as replacement for … … 60 60 # 61 61 # The short X.Y version. 62 version = '4. 0'62 version = '4.1' 63 63 # The full version, including alpha/beta/rc tags. 64 release = '4. 0.0'64 release = '4.1.0' 65 65 66 66 # The language for content autogenerated by Sphinx. Refer to documentation -
sasview/README.txt
r9a182b2 r220b1e7 4 4 1- Features 5 5 =========== 6 - New in Version 4.0.1 7 ------------------ 8 This release fixes the critical bug #750 in P(Q)*S(Q). Most damaging 9 it appears that the background term was being added to S(Q) prior to 10 multiplication by P(Q). 11 12 6 13 - New in Version 4.0 7 14 ------------------ -
sasview/__init__.py
r9a182b2 r220b1e7 1 __version__ = "4. 0"1 __version__ = "4.1" 2 2 __build__ = "GIT_COMMIT" 3 3 try: -
sasview/custom_config.py
r79492222 r73cbeec 15 15 TOOLBAR_SHOW = True 16 16 DEFAULT_PERSPECTIVE = "Fitting" 17 SAS_OPENCL = "None" -
sasview/local_config.py
r49e000b r73cbeec 97 97 GUIFRAME_WIDTH = 1150 98 98 GUIFRAME_HEIGHT = 840 99 PLUGIN_STATE_EXTENSIONS = ['.fitv', '.inv', '.prv', '.c or']99 PLUGIN_STATE_EXTENSIONS = ['.fitv', '.inv', '.prv', '.crf'] 100 100 PLUGINS_WLIST = ['Fitting files (*.fitv)|*.fitv', 101 101 'Invariant files (*.inv)|*.inv', 102 102 'P(r) files (*.prv)|*.prv', 103 'Corfunc files (*.c or)|*.cor']103 'Corfunc files (*.crf)|*.crf'] 104 104 PLOPANEL_WIDTH = 415 105 105 PLOPANEL_HEIGTH = 370 … … 140 140 UPDATE_TIMEOUT = 2 141 141 142 #OpenCL option 143 SAS_OPENCL = None 144 142 145 def printEVT(message): 143 146 if __EVT_DEBUG__: -
src/sas/sascalc/file_converter/c_ext/bsl_loader.c
rdc8a553 r2ab9c432 1 1 #include <Python.h> 2 //#define NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION 2 3 #include <numpy/arrayobject.h> 3 4 #include <stdio.h> … … 21 22 static PyObject *CLoader_init(CLoader *self, PyObject *args, PyObject *kwds) { 22 23 const char *filename; 23 constint n_frames;24 constint n_pixels;25 constint n_rasters;26 constint swap_bytes;24 int n_frames; 25 int n_pixels; 26 int n_rasters; 27 int swap_bytes; 27 28 28 29 if (self != NULL) { -
src/sas/sasgui/guiframe/customdir.py
r212bfc2 r73cbeec 34 34 if not os.path.isfile(config_file): 35 35 shutil.copyfile(os.path.join(path, "custom_config.py"), config_file) 36 37 #Adding SAS_OPENCL if it doesn't exist in the config file 38 # - to support backcompability 39 if not "SAS_OPENCL" in open(config_file).read(): 40 open(config_file,"a+").write("SAS_OPENCL = \"None\"\n") 36 41 except: 37 42 # Check for data path next to exe/zip file. -
src/sas/sasgui/guiframe/gui_manager.py
rd3911e3 r73cbeec 152 152 SPLASH_SCREEN_HEIGHT = config.SPLASH_SCREEN_HEIGHT 153 153 SS_MAX_DISPLAY_TIME = config.SS_MAX_DISPLAY_TIME 154 SAS_OPENCL = config.SAS_OPENCL 154 155 if not WELCOME_PANEL_ON: 155 156 WELCOME_PANEL_SHOW = False … … 176 177 else: 177 178 DEFAULT_OPEN_FOLDER = PATH_APP 179 SAS_OPENCL = custom_config.SAS_OPENCL 178 180 except: 179 181 DATALOADER_SHOW = True … … 190 192 CLEANUP_PLOT = False 191 193 DEFAULT_OPEN_FOLDER = PATH_APP 192 194 SAS_OPENCL = None 193 195 DEFAULT_STYLE = config.DEFAULT_STYLE 194 196 … … 225 227 CHILD_FRAME = wx.Frame 226 228 229 #Initiliaze enviromental variable with custom setting but only if variable not set 230 if SAS_OPENCL and not "SAS_OPENCL" in os.environ: 231 os.environ["SAS_OPENCL"] = SAS_OPENCL 227 232 228 233 class ViewerFrame(PARENT_FRAME): … … 2104 2109 Quit the application 2105 2110 """ 2111 #IF SAS_OPENCL is set, settings are stored in the custom config file 2112 self._write_opencl_config_file() 2106 2113 logging.info(" --- SasView session was closed --- \n") 2107 2114 wx.Exit() 2108 2115 sys.exit() 2116 2117 def _write_opencl_config_file(self): 2118 """ 2119 Writes OpenCL settings to custom config file, so they can be remmbered 2120 from session to session 2121 """ 2122 if custom_config is not None: 2123 sas_opencl = os.environ.get("SAS_OPENCL",None) 2124 new_config_lines = [] 2125 config_file = open(custom_config.__file__) 2126 config_lines = config_file.readlines() 2127 for line in config_lines: 2128 if "SAS_OPENCL" in line: 2129 if sas_opencl: 2130 new_config_lines.append("SAS_OPENCL = \""+sas_opencl+"\"") 2131 else: 2132 new_config_lines.append("SAS_OPENCL = None") 2133 else: 2134 new_config_lines.append(line) 2135 config_file.close() 2136 2137 #If custom_config is None, settings will not be remmbered 2138 new_config_file = open(custom_config.__file__,"w") 2139 new_config_file.writelines(new_config_lines) 2140 new_config_file.close() 2141 else: 2142 logging.info("Failed to save OPENCL settings in custom config file") 2143 2109 2144 2110 2145 def _check_update(self, event=None): -
src/sas/sasgui/guiframe/startup_configuration.py
rd85c194 r73cbeec 31 31 'CLEANUP_PLOT':False, 32 32 'DEFAULT_PERSPECTIVE':'Fitting', 33 'DEFAULT_OPEN_FOLDER': None} 33 'DEFAULT_OPEN_FOLDER': None, 34 'SAS_OPENCL': None} 34 35 try: 35 36 CURRENT_STRINGS = {'GUIFRAME_WIDTH':CURRENT.GUIFRAME_WIDTH, … … 45 46 'CLEANUP_PLOT':CURRENT.CLEANUP_PLOT, 46 47 'DEFAULT_PERSPECTIVE':CURRENT.DEFAULT_PERSPECTIVE, 47 'DEFAULT_OPEN_FOLDER':CURRENT.DEFAULT_OPEN_FOLDER} 48 'DEFAULT_OPEN_FOLDER':CURRENT.DEFAULT_OPEN_FOLDER, 49 'SAS_OPENCL': None} 48 50 except: 49 51 CURRENT_STRINGS = DEFAULT_STRINGS -
src/sas/sasgui/perspectives/corfunc/corfunc.py
r96d293da r1dc8ec9 32 32 self._always_active = True 33 33 self.state_reader = Reader(self.set_state) 34 self._extensions = '.c or'34 self._extensions = '.crf' 35 35 36 36 def get_panels(self, parent): … … 48 48 49 49 l = Loader() 50 l.associate_file_reader('.c or', self.state_reader)50 l.associate_file_reader('.crf', self.state_reader) 51 51 52 52 return [self.corfunc_panel] … … 67 67 return [] 68 68 data = plotpanel.plots[graph.selected_plottable] 69 if data.id == IQ_DATA_LABEL or data.id == IQ_EXTRAPOLATED_DATA_LABEL or data.id == TRANSFORM_LABEL :69 if data.id == IQ_DATA_LABEL or data.id == IQ_EXTRAPOLATED_DATA_LABEL or data.id == TRANSFORM_LABEL1 or data.id == TRANSFORM_LABEL3: 70 70 return [] 71 71 item = plotpanel.plots[graph.selected_plottable] … … 81 81 def set_state(self, state=None, datainfo=None): 82 82 """ 83 Callback for CorfuncState reader. Called when a .c orfile is loaded83 Callback for CorfuncState reader. Called when a .crf file is loaded 84 84 """ 85 85 if isinstance(datainfo, list): … … 179 179 # Show the extrapolation as a curve instead of points 180 180 new_plot.symbol = GUIFRAME_ID.CURVE_SYMBOL_NUM 181 elif label == TRANSFORM_LABEL :181 elif label == TRANSFORM_LABEL1 or label == TRANSFORM_LABEL3: 182 182 new_plot.xaxis("{x}", 'A') 183 183 new_plot.yaxis("{\\Gamma}", '') -
src/sas/sasgui/perspectives/corfunc/corfunc_panel.py
rd45d590 r1dc8ec9 274 274 plot_x = transform.x[np.where(transform.x <= 200)] 275 275 plot_y = transform.y[np.where(transform.x <= 200)] 276 self._manager.show_data(Data1D(plot_x, plot_y), TRANSFORM_LABEL )276 self._manager.show_data(Data1D(plot_x, plot_y), TRANSFORM_LABEL1) 277 277 # Only enable extract params button if a fourier trans. has been done 278 278 if self.transform_type == 'fourier': … … 325 325 dlg = wx.FileDialog(self, "Choose a file", 326 326 default_save_location, \ 327 self.window_caption, "*.c or", wx.SAVE)327 self.window_caption, "*.crf", wx.SAVE) 328 328 if dlg.ShowModal() == wx.ID_OK: 329 329 path = dlg.GetPath() … … 336 336 dlg.Destroy() 337 337 # MAC always needs the extension for saving 338 extens = ".c or"338 extens = ".crf" 339 339 # Make sure the ext included in the file name 340 340 f_name = os.path.splitext(path)[0] + extens -
src/sas/sasgui/perspectives/corfunc/corfunc_state.py
rd45d590 rae9b8bf 96 96 self.background = value 97 97 98 def toXML(self, filename='corfunc_state.c or', doc=None, entry_node=None):98 def toXML(self, filename='corfunc_state.crf', doc=None, entry_node=None): 99 99 """ 100 100 Writes the state of the CorfuncPanel panel to file, as XML. … … 257 257 type_name = "Corfunc" 258 258 259 type = ["Corfunc file (*.c or)|*.cor",259 type = ["Corfunc file (*.crf)|*.crf", 260 260 "SASView file (*.svs)|*.svs"] 261 261 262 ext = ['.c or', '.COR', '.svs', '.SVS']262 ext = ['.crf', '.CRF', '.svs', '.SVS'] 263 263 264 264 def __init__(self, callback): -
src/sas/sasgui/perspectives/corfunc/plot_labels.py
rff11b21 r1dc8ec9 4 4 5 5 GROUP_ID_TRANSFORM = r"$\Gamma(x)$" 6 TRANSFORM_LABEL = r"$\Gamma(x)$" 6 TRANSFORM_LABEL1 = r"$\Gamma1(x)$" 7 TRANSFORM_LABEL3 = r"$\Gamma3(x)$" -
src/sas/sasgui/perspectives/fitting/fitting.py
r1a5d5f2 r73cbeec 45 45 from sas.sasgui.guiframe.gui_manager import MDIFrame 46 46 from sas.sasgui.guiframe.documentation_window import DocumentationWindow 47 from sas.sasgui.perspectives.fitting.gpu_options import GpuOptions 47 48 48 49 from . import models … … 192 193 self.bumps_options_menu = self.menu1.FindItemById(self.id_bumps_options) 193 194 self.bumps_options_menu.Enable(True) 195 196 self.id_gpu_options_panel = wx.NewId() 197 self.menu1.Append(self.id_gpu_options_panel, "OpenCL Options", "Choose OpenCL driver or turn it off") 198 wx.EVT_MENU(owner, self.id_gpu_options_panel, self.on_gpu_options) 194 199 195 200 self.id_result_panel = wx.NewId() … … 801 806 self.result_frame.Show() 802 807 self.result_frame.Raise() 808 809 def on_gpu_options(self, event=None): 810 """ 811 Make the Fit Results panel visible. 812 """ 813 dialog = GpuOptions(None, wx.ID_ANY, "") 814 dialog.Show() 803 815 804 816 def stop_fit(self, uid): -
src/sas/sasgui/perspectives/fitting/media/plugin.rst
rca1eaeb rca6cbc1c 568 568 cube(x): 569 569 $x^3$ 570 s inc(x):570 sas_sinx_x(x): 571 571 $\sin(x)/x$, with limit $\sin(0)/0 = 1$. 572 572 powr(x, y): … … 669 669 (`link to Bessel function's code <https://github.com/SasView/sasmodels/tree/master/sasmodels/models/lib/sas_JN.c>`_) 670 670 671 Si(x):671 sas_Si(x): 672 672 Sine integral $\text{Si}(x) = \int_0^x \tfrac{\sin t}{t}\,dt$. 673 673 … … 693 693 (`link to code <https://github.com/SasView/sasmodels/tree/master/sasmodels/models/lib/Si.c>`_) 694 694 695 s ph_j1c(x):695 sas_3j1x_x(x): 696 696 Spherical Bessel form 697 697 $\text{sph_j1c}(x) = 3 j_1(x)/x = 3 (\sin(x) - x \cos(x))/x^3$, … … 701 701 This function uses a Taylor series for small $x$ for numerical accuracy. 702 702 703 :code:`source = ["lib/s ph_j1c.c", ...]`704 (`link to code <https://github.com/SasView/sasmodels/tree/master/sasmodels/models/lib/s ph_j1c.c>`_)705 706 707 sas_ J1c(x):703 :code:`source = ["lib/sas_3j1x_x.c", ...]` 704 (`link to code <https://github.com/SasView/sasmodels/tree/master/sasmodels/models/lib/sas_3j1x_x.c>`_) 705 706 707 sas_2J1x_x(x): 708 708 Bessel form $\text{sas_J1c}(x) = 2 J_1(x)/x$, with a limiting value 709 709 of 1 at $x=0$, where $J_1(x)$ is the Bessel function of first kind -
src/sas/sasgui/perspectives/fitting/media/sm_help.rst
r7805458 r27aabc1 20 20 ================== 21 21 22 Sometimes it will be necessary to correct reduced experimental data for the 23 physical effects of the instrumental geometry in use. This process is called 24 *desmearing*. However, calculated/simulated data - which by definition will be 25 perfect/exact - can be *smeared* to make it more representative of what might 26 actually be measured experimentally. 27 28 SasView provides the following three smearing algorithms: 22 Sometimes the instrumental geometry used to acquire the experimental data has 23 an impact on the clarity of features in the reduced scattering curve. For 24 example, peaks or fringes might be slightly broadened. This is known as 25 *Q resolution smearing*. To compensate for this effect one can either try and 26 remove the resolution contribution - a process called *desmearing* - or add the 27 resolution contribution into a model calculation/simulation (which by definition 28 will be exact) to make it more representative of what has been measured 29 experimentally - a process called *smearing*. SasView will do the latter. 30 31 Both smearing and desmearing rely on functions to describe the resolution 32 effect. SasView provides three smearing algorithms: 29 33 30 34 * *Slit Smearing* 31 35 * *Pinhole Smearing* 32 36 * *2D Smearing* 37 38 SasView also has an option to use Q resolution data (estimated at the time of 39 data reduction) supplied in a reduced data file: the *Use dQ data* radio button. 40 41 .. ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ 42 43 dQ Smearing 44 ----------- 45 46 If this option is checked, SasView will assume that the supplied dQ values 47 represent the standard deviations of Gaussian functions. 33 48 34 49 .. ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ -
src/sas/sasgui/perspectives/pr/media/pr_help.rst
r0391dae r1221196 10 10 ----------- 11 11 12 This tool calculates a real-space distance distribution function, *P(r)*, using 13 the inversion approach (Moore, 19 08).12 This tool calculates a real-space distance distribution function, *P(r)*, using 13 the inversion approach (Moore, 1980). 14 14 15 15 *P(r)* is set to be equal to an expansion of base functions of the type … … 24 24 25 25 \chi^2=\frac{\sum_i (I_{meas}(Q_i)-I_{th}(Q_i))^2}{error^2}+Reg\_term 26 26 27 27 28 28 where $I_{meas}(Q_i)$ is the measured scattering intensity and $I_{th}(Q_i)$ is 29 the prediction from the Fourier transform of the *P(r)* expansion. 29 the prediction from the Fourier transform of the *P(r)* expansion. 30 30 31 The $Reg\_term$ term is a regularization term set to the second derivative 31 The $Reg\_term$ term is a regularization term set to the second derivative 32 32 $d^2P(r)/d^2r$ integrated over $r$. It is used to produce a smooth *P(r)* output. 33 33 … … 40 40 41 41 * *Number of terms*: the number of base functions in the P(r) expansion. 42 42 43 43 * *Regularization constant*: a multiplicative constant to set the size of 44 44 the regularization term.
Note: See TracChangeset
for help on using the changeset viewer.