source: trunk/User Procedures/Irena/Modification history.txt @ 856

Last change on this file since 856 was 856, checked in by ilavsky, 22 months ago

Beta version 2.691, Modified Fractals model to add option to use for Mass fractals Unified Fit Form Factor

  • Property svn:executable set to *
File size: 76.0 KB
2******    I r e n a    *******
4Jan Ilavsky,
7This set of macros is developed for analysis data of USAXS, SAXS, and WAXS data from various instruments.
8It runs on Wavemetrics Igor Pro version 7.05 and higher.
11Modification history:
132.691 (beta)
14Fractals - added optional use of Unified Fit Sphere form factor. This removes high-q Bessel function oscillations which are nto reasonable for most cases.
172.69 2/9/2020
183D models - added new set of tools : 3DAggregate, 2PhaseSolid and support for import of data from SAXSMorph (POV) and ATSAS (PDB) for visualization
19Due to verification issues, SAXSMorph code in release version of Irena is disabled. use Master version if you want to test the code.
20Many tools - changed code compiler instruction to rtGLobals=3, this is less forgiving compile which prevents more accidental bugs, but may generate new errors in old code. Report as many errors as possible to author, please. 
21Scripting tool - added save individual Populations data when running from Scripting tool.
22Added new group of Anisotropy characterization tools, first one is HOP - Hermans Orientational Parameter.
23Unified fit added info about k value on the panel.
24Data manipulation II - fixed issues with liberal names and actually very long names. Now should create long names, if Igor 8 and user enabled it.
25Guinier-Porod - fixed fitting of structure factor parameters. Was not working at all (forgot to include that).
26Data picker - fixed use of root folder for data (BAD IDEA), use of weird characters in names (like [], etc=bad idea) and use of QIS data (not tested very well, do not have much test data). 
27Create QRS folder structure should now handle also QIS data.
292.68 12/5/2018
30Igor 8 OSX XOPs now available. version 2.0 of 64-bit xops.
31Removed link to pdf manual, does not exist anymore.
32Control procedures - increases speed about twice of generating the menu strings.
33ASCII SAS data import - improve importing of slit smeared data.
34Unified fit - add left axis units which match units inside the Intensity wave note.
35Size distribution, Guinier-Porod, Analytical models, SASDiffraction - add left axis units which match units inside the Intensity wave note.
36Size distribution - add new parameters introduced in version 2.67 to wave note and arrange their saving and recovery. Somehow this was forgotten during the original work.
37Plotting - remove CanSAS data type. Not used...
38Plotting tool - changed the mirror size axis to show 2pi/Q and modified label to "Diameter/dimension 2pi/q [A]"
39Modified "Configure GUI..." menu name and added warning on name shortening. Should generate dialog when names are too long and users are not using Igor 8 with long names enabled. Only once per Igor experiment. 
40Evaluate Size distributions - fixed failure with data from Modeling (II) when user used Pop1 as non-size distribution and used Size distribution in higher Pops. GUI and parameter readout failed at that situation. Checked (and fixed) for data from Modeling package - using Number of Volume distribution and using Radius or Diameter. Previously problem was with Number density of particles and Specific surface area = all worked well only for Diameters. Needed to add hooks for Radius conversion as needed...
41Nexus export - fixed Nexus export to output files compatible with SasView (beta version for now). Should work with both desmeared and slit smeared data now.
42Merge data - added more functionality, ability to shift in Q data 1 as well as 2, and modified graph for WAXS and SAXS display. Completely reworked optimization routines to make all more robust and easier to fix. Removed lots of ugly repetitive code.
462.67  7/7/2018
47Igor 8.0 tested.
48Size distribution - added power law slope to Background so one can subtract also low-q power law slope. Added buttons to perform power law fit and background fit. Added option to fit the parameters when data are added to the tool.
49Nexus exporter - changed to use 1/angstrom for Q as sasView below 4.1.2 (probably below 4.3 at least) cannot convert Q units on import.
50Nexus Importer - fixed and modified to be able to import NXcanSAS files from DAWN and Mantid.
51Unified fit - modified how the limits and steps are handled when user set value to 0. Fixed Uncertainty analysis in Unified fit which seems to have failed on Igor 8.
52Created depository for user contributed form factors on Github:
542.66 1/27/2018
55Converted all procedure files to UTF8 to prevent text encoding issues.
56Fixed Case spelling of USAXS Error data to SMR_Error and DSM_Error
57Plotting tool I - added control which enforces maximum number of items in legend (default=30). If more waves are in graph, legend gets decimated by necessary integer(2, 3, 4,...). First and last are always included. This presents selection of data names when too many data sets are used.
58MergeData - added ability to fit-extrapolate data 1 at high q end and added possibility to fit arbitrary combination of merging parameters. Lots of changes. More capable and more complicated.
59Unified Fit - added button "Copy/Swap level" which will move content of existing level to another level.
60Checked that - with reduced functionality - code will work without Github distributed xops.
61Tested and fixed for Igor 8.
632.65 11/05/2017
64Promoted required minimum version to 7.05 due to bug in Igor prior of this version.
65Panels now restore prior size and position. This is set when you drag lower-right corner to scale them up. Data stored on the user computer and size is limited to 50% width and 90% height of current screen size. Hold down any modifier key and size will be reset to original default state.
66Merge two data sets - added option of sorting qrs names by xyz_string, needed for Nika. Added SMR and DSM data to USAXS.
67Modeling - added calculation of Rg for size distributions. Requested by Dale Schaefer.
68Unified fit - changes to two phase systems requested by Dale. Added ability to handle multiple levels at the same time where possibleÉ
69Data merging tool - modified Optimize code to prevent failures, hopefully improved fitting capabilities.
70WAXS - Added option to import free AMS diffraction data ( - this database contains d, hkl, intensities for minerals.
71All packages - internal changes and improvements resulting in less and cleaner code.
72Removed pdf manual from distribution. It is obsolete, use on-line version and if needed, download pdf from the on-line source. 
73Added Update Message to CheckForUpdate code. If present, it will display a message for users.
74ASCII exporter - added export of GSAS-II xye data file.
772.64, 5/1/2017
78Made Igor 7 compatible ONLY. Thanks to GeneralProcedures changes will not work on Igor 6.
79Added buttons with links to web based manual pages to each tool.
80Version check - using Github now.
81Smearing/Desmearing data support - increased smearing speed about 3x
82Unified Fit - Modified to handle Slit smeared data which do not extend beyond slit length. Same logic as in Modeling II - extend temporary data to 3*slit length and then truncate.
83Data merging - added name modifier string and defaulted to new folder name even for QRS name systems.
84Size distribution - removed limitation that Qmax > 3*slit length for slit smeared data. Optimized speed (2x improvement)
85Size distribution - fixed bug introduced in MaximumEntropy
86Fixed more slow debugging calls, few more packages see improvement in speed now.
87Completely removed Modeling I - about 2k lines of code. Moved code where needed and removed about 3 ipf files from loading.
892/63, 5/1/2071
90version 2.62 updated with on line manuals, for Igor 6 only.
922.62a 3/3/2017
93Silently fixed bug in ScreenResolution check for Windows computers, which printed high-res screens warning at wrong time.
952.62 2/22/2017
96Updated manual
97Modified Nexus support, added new library to use it.
98Moved some common functions to IN2G_GeneralProcedures
99Fix to QRS names which failed on names containing string ÒspecÓ in the name.
100Added checkbox for slit smeared/desmeared USAXS data in Merge 2 data sets tool.
101Small-angle diffraction - when user selects ÒoversampleÓ the parameters for peaks (d, q, width) are now calculated at 5x higher resolution than measured Q points.
102Desmearing - propagate dQ and if does not exist, create dQ based on points distance.
103Pair Distance Distribution - changed Matrix solving method since the one used was deprecated by Igor 7.
104Plotting tool - added ability to add top 2pi/Q linked axis. Using Transform axis package from Igor Pro. Added few new styles and modified existing settings. Fixed Gizmo for Igor 7 which stopped working due to Gizmo function syntax changes.
105WAXS - removed LaueGo capability and added import of PDF-4+ xml files. Fixed help file.
106Modeling II - if you hold any modifier key (shift/ctrl/opt/altÉ) while clicking on parameters change arrows, the step for next step is set 10x smaller. This enables making small changes to the values. Just keep holding the modifier key, first step is still large, subsequent are small.
107Size distribution - fixed Regularization for Igor 7, modified trust ranges which were using wrong logic. Now large size is estimated 2pi/Q while small size pi/Q. 
108Fixed slow down caused by debugging messages function
1102.61 6/29/2016
111Due to some new features used, requires Igor 6.34 or higher
112ASCII import - added ability to slit smear the data on import. Redistributed controls on the Import panel.
113ASCII import non SAS data - first version of Import non-SAS data tool. No manual yet.
114Fixed panel scaling and added better package preferences management. 
115Added package for handling files outside Igor to make it easier to write tools working with external files directly. Should not be visible to users.
1182.60 3/5/3016
119Added Panel scaling to most large panels
120Modified GUI package preferences handling. It was reseting the GUI choices, wrong logic.
121Data merging tool - fix problem with liberal names.
122Added multi-package loader (Irena+Nika)
1242.59 2/1/2016
125Igor 7 compatibility release
126Unified fit - GUI behavior improvements and minor bug fixes.
127WAXS-Powder diffraction tool - version 1 of Powder diffraction tool for users. Still work in progress, but usable for testing by users.
128Modified check for updates macro to use http once, if it fails use ftp, if that fails also then bail out and give error. Should be much easier for users who are on systems without net connectivity.
1302.58 10/30/2015
131Verified to work on Igor 7 beta 1
132Removed Modeling I from the code and manual. This tool has been deprecated for few years now and it was removed to reduce code clutter.
133Added Data Merging - new dedicated tool to merge two segments of data (q-segments). version 1.0, so this may be bit buggy.
134Modeling II - added ability to handle per pixel smearing of the model. Quite complicated for users, read the manual!.
135Modeling II - removed the need to model data to high enough Qs for slit smeared data. The slit smeared data will be extended to 2*Slit length when user selects too small Qmax.
136Modeling II - catch Log-Normal Min Size if smaller than 3A and reset for user to 3A. Cannot have SAS from particles smaller than 3A - that is atom and not particle for SAXS.
137Modeling II - fixed bug where the Size distribution plot in Modeling II was showing information vs Radius always, even when user used Diameters as particle dimension. And it was not obvious to users that is happening. Now uses dimension based on what is selected as the particle dimension (Radius or Diameter).
138Data Manipulation I - enabled Q shifts and added MergeData2, which optimizes scaling Data2, backgroundData1, and Qshift of Data2. This makes sense when SAXS alignment is not perfect.
1412.57 3/8/2015
142Fractals model - added Qc as transitional Q value when surface fractal changes to PorodÕs slope at high Q. Set to 0 if not needed.
143Modeling II - added MassFractal and SurfaceFractal - models are copied form Fractals tool, so users need to read manual for that tool
144Modeling II - added controls which enable to select, which additional graphs are displayed. Choices are SizeDistribution, Residuals, and IQ^4 vs Q. These two graphs are now matching colors to the main Graph colors for easier navigation when multiple data sets are used.
145Modeling II - minor bug fixes: Catch when slit length is set incorrectly (too small or too large), set properly Dv and Dv limits for Fractals and some other ones.
146Modeling II - Scale data by now actually works. It was never programmed to work (it is cumbersome to make it operational, so it may have some unforeseen consequences). Tread carefully!
147Scripting tool - added hook function after data set is loaded, before it is fitted, for user to do something which needs to be done. Check the code. For now only for Modeling II.   
148Scripting tool - fixed preservation of user choices on errors and intensity scaling for Modeling II and Size Distribution.
149Scattering contrast calculator -  Modified description for exp(-Mu*T) as Transmission. Users seem to be missing the pointÉ
150Size distribution - added colored bar at the top of the graph - Òtrust indicatorÓ - which indicates, which sizes can be trusted and which are suspect/totally uncertain. Based on 2*pi/Q values used for fitting.
151Data manipulation II - added divide by data set (requested feature).
1542.56 8/20/2014
155ASCII export - fixed bug which prevented Multiple QRS data export. 
156Plotting tool I - made ÒZoom and Set limitsÓ marquee item dynamic, so it shows only on the right graph.
157Plotting tool I - added Int*Q^3 as plotting data option
158Unified fit - fixed bug in GUI of level 2 not showing Link B to G/Rg/P
159Unified fit - minor change of GUI - changed Surface to Volume description to: pi*B/Q which is also S/(V*fi(1-fi)).
160Scripting tool - added wave name match string to QRS data type.
161All packages - created on log-rebinning routine and propagated that routine (General Procedures 1.71) through the system, replacing all log-rebinning other routines.
162Data Manipulation I - removed the slider for log-rebinning, it seems not functional for some time and new code does not accept this parameter anyway. May need to address this in the future again.
163Data Manipulation II - fixed bug which caused failure when wave names were liberal.
164ASCII import - added q sorting as some users seem to have data which are not necessarily q increasing and it causes troubles for analysis packages.
165All packages - added check for slit smeared data to force Qmax to be at least 3*SlitLength. It does not work otherwise. 
166Modeling II - added User Name string to each population, so user can (when individual populations are displayed) sort out what he/she is looking at. Similar to names for each data set.
167FitPowerLawWithCursors and FitLineWithCursors now follow user selected font size and power law does not have units (depends on data calibration).
1692.54 1/5/2014
170All files - extended copyright to 2005 - 2014
171Installer - version 1.23 will overwrite stale links to hdf5 xops, created on OSX when updating Igor from 6.2x to 6.3x etc.
172ASCII Import - added ÒRemoveFromNameStringÓ which allows users to remove part of name which is of no interest.
173ASCII Import - import data as double precision to avoid some users running out of precision when their intensity has unusual values due to calibration. also made minor change in Modeling II to address this.
174ASCII Import - modified log-q points rebinning to keep minimum q step (matching difference between the first two points after trimming). This should be more robust.
175Control Procedures - minor fix to handle weird transient bug and some case when the controls were failing. Fixes for handling of Irena results and QIS data type.
176Plotting tool - modified to have infinite number of colors and symbols (well, repeating set of 10) and modified how formatting string is stored. This may change how old graphs look (colors and symbols).
177Plotting tool - minor fix for Change Graph details panel visibility
178Data manipulation I - added controls for Units of the input data (just show) and output data (select). 
179Data manipulation II - added Units controls.
180Analytical models - added Rg cutoff parameter to Unified level. Requested featureÉ
181Analytical models - added linking of Rg cutoff to Corr. Lengths and added ability to display separate data for the tabs. Minor improvements.
182Analytical models - added residuals plot per user request.
183Modeling II - fixed export of Schulz-Zimm distribution parameters to notebook and waves, which seemed to unfinished.
184Modeling II - fixed bug in Analyze uncertainty which caused problems when parameter name was simply too long. Made shorter by replacing parts of the string.
185Scripting tool - fix for Plotting tool controls which were failing on Modeling II diameter/radii option.
186Scripting tool - if Plotting tool is not opened, Scripting tool will open it now instead of throwing error. Fixed Sync of Folder match strings. 
187Unified fit - number of fixes made by DWS with corrections to analysis tools, some output and also GUI changes.
188Form Factor package - fixed support functions which were missing some of the FF and did not produce Volume or Surface conversions.
189Form Factor package - Cylinder, CylinderAR, and Spheroid will now use NIST XOP, if available (many times faster).
190Evaluate Size distributions - minor fixes for new form factors.
191Reflectivity - fixed annoying bug which caused sliders to be drawn over one of the graphs instead of updating the positions in the main panel.
1942.53 11/23/2013
195Force users to use Igor 6.3x
196Controls procedures - enabled use of following characters in names: (){}%#^$?|&@
197É note: this means the Fldr and Wv match fields are now Òstring matchÓ matching part of the name, cannot use Grep commands with control characters, as I have to escape all of the control characters as they are now considered part of the nameÉ 
198Form factors/Modeling II - added Parallelepiped using NIST XOP. If the XOP is installed, this shape is available and works. FastÉ Need to convert more Form factors to XOP, it is fast!
199Data manipulation 1 - fix log rebinning when Q data starts with points where Q<=0. This used to fail.
200Data manipulation I - added simple method of merging data (for different q ranges). Sets background for Data1 and scales Data2 (and optimizes the two values to get best fit).
201Data manipulation I - preserve cursor positions through adding data.
202Controls procedures - modified handling Irena results waves, mainly the Y wave. Faster.
203Controls procedures - modified to avoids showing folders, which are disallowed by use of wave name grep string. This was showing parent folder before, which caused some confusion.
204Controls procedures - fixed case when it was unable to get to folders with same names in different parent folders.
205Control procedures - QRS data handling fixes (againÉ) Minor location of controls fixes.
206Control procedures - Fixed time delay when the Folder match string was retained for 5 seconds due to cashing.
207Scripting tool - modified to set cursors to first and last point of data, if they are not set by user ahead of fitting.
208All panels - Added check to detect, that experiment moved from other platform (Win/OSX) and if detected, reset fonts to default of the new platform.
209Modeling II - added no fitting limits option
210Modeling II - propagates Intensity units through and made GUI changes to match those.
211modeling II - removed option to combine SpehereWithLocallyMonoDispersed Sq and any structure factor (it is nonsense).
212Modeling II - added optional Constraints input to enable more user control of the fitting and relationships between the parameters.
213Modeling II - Unified levels - added ability to link B to Rg/G/P based on Hammouda's Guinier/Porod and removed ability to fit RgCO. If anyone needs it, I can add it back.
214Modeling II - enabled use of radii or diameters. Changed GUI to simplify and added visual description of what type of distribution is used and which tabs are being used.
215Modeling II - fixed bug in Analyze uncertainties which caused the code not to read number of fitted points, getting wrong Chi-square range
216Modeling II - fixed the Form factor and Structure factor help file to work also on Windows and fixed it extension.
217Unified fit - fixed bug introduced in last update which prevented fitting with fixed P, Rg, and G. Changed the code to always include fitting B as that is probably necessary.
218Unified fit - added optional Constraints input to enable more user control of the fitting and relationships between the parameters.
219Unified fit - added option to link B to G/Rg/P values using Hammouda's Guinier/Porod relationship
220Size distribution - Changed all Graph fonts to follow user defined choices. Added option to run automatically Calculate parameter on whole distribution.
221Size distribution - Fixed units of saved distributions to : Volume distribution cm3/cm3/A and Number distribution 1/cm3/A.
222Main system - added Form factor and Structure factor panels to "Kill all graph & panels" procedure.
223Plotting Tool I - fixed minor bug caused by Igor Pro behavior change which caused Modify data always to remove at least first and last point.
224Export ASCII data - modified GUI to be more obvious (user problems) and changed Listbox mode to enable range of data selection for multiple data sets.
225Import ASCII - Removed error when file being imported has less columns than found originally, if these are not being imported and used.
226Import ASCII - enabled use of following characters in names: (){}%#^$?|&@
227Data Manipulation I - disabled Q shift, letÕs see if anyone complains.
228Reflectivity - minor change in behavior, when starting or recovering parameters, it will set all sliders to the middle of their range.
229Reflectivity - attempted to fix when some users have data with NaNs and attempt to fit to them, which fails. Cleaning up NaNs from data before fit now.
2322.52 7/23/2013
233Changed back everything to rtGlobals=2, major issues in the code run were found.
234Control Procedures - fixed failure to work for qrs waves when folder name contained [].
235Form factors/Modeling II - Added Janus CoreShell micelles form factor.
236Form factors - removed algebraic form factors. Useless, use Unified ones if needed.
237Form factors - added CoreShellPrecipitate. Core shell particle where shell thickness is calculated for each particle size in such manner, that average contrast of the particle is the same as surrounding matrix. Seems surprisingly common in my experience. Read manual!
238Form/Structure factors - created Igor help file with the description. Added call buttons from Modeling II & Size Distribution GUIs.
239Plotting tool I - added basic contour plot capabilities
240Unified fit - fixed invariant calculation for levels using RgCuttOff. These levels had previously calculated higher invariant value then correct.
241Unified fit - added optional panel (default is to show it) which let's users check fitting parameters before fitting is done same as in Modeling II. Modified code for Uncertainty evaluation and Scripting tool to handle this change and skip the panel.
242Unified fit - removed FitRgCO option for all levels. I think it is not sensible to try to fit this. 
243Unified fit - local fits now will guess starting parameters from cursor position and will not use user input parameters (that kept failing with many users).
244Data Manipulation I- fixed log rebining of data which was not working. Note, it overlays log-x scale over the data and then simply averages points in each bin. Similar to Nika.
245Data Manipulation II - checked behavior and fixed some GUI and behavioral problems, especially with Data subtraction.
246ASCII Data Import - fixed log rebining and removed the parameter, which no one understood anyway. It is not being used now.
247ASCII Data Import - header information, when attached to wave note is now cleaned of any leading special characters and leading spaces. This allows USAXS exported ASCII data import with meaningful wave note and should work for everyone.   
248ASCII Data Import - Remove Int<0 is now Remove Int<=0. Note that on import the all Q<=0 points are also removed. 
249All panels - changed orientation of the two arrows at the top right to move content of the window. Wrong logic used originally, now same as regular PC/Mac GUI system. 
250Size distribution - reduced significantly the number of available form factors. Complex FFs make no sense in this tool.
251Scripting tool - modified calling routines to avoid getting stale state of controls. This should prevent "error, report it" message.
252All tools - changed all cases when I used "Save in É" in buttons to "Store in É" to prevent confusion of users that this actually saves Igor experiment.
253Main procedures - Changed all web addresses to new, changed Manual and Manuscript download to http protocol, ftp was failing. 
254Guinier-Porod fit - finally local fits to smeared data seems to be under control. Updated manual with real description of the tool and elevated the version to 1.0, first release version. Need to finish some nice outputs, but I think it is finally useable even on smeared data.
255Reflectivity - added option to calculate model at 5x denser Q points. Check and fixed some GUI problems. Need to update manual, it is obsolete, but do nto have time now.
2592.51 4/8/2013
260Added monthly check for updates and reminder of references for publications.
261Modified to compile on computers even without xop and abort & produce message when xop is called with instructions.
262Guinier-Porod Fit - created first version of this tool.
263Control procedures - modified to show only last folder but work transparently for the tools.
264Control procedures - added G(r) as data type of Irena results. 
265Control procedures - changed "Indra 2 data" to "USAXS". More human readable.
266Unified fit - fixed Checking of validity levels not to declare level without Guinier part to be invalid.
267Unified fit - added "No limits" checkbox and support code to fit without limits.
268Reflectivity - added "Motofit" as data type for use with this tool.
269Added scroll buttons to scroll vertically content of panels for small displays. Modified tools: Unified Fit, Modeling II, Size Distribution, Gunier-Porod, Fractals tool, Analytical models, Small-angle diffraction, Pair-distace dist., Reflectivity, ASCII import, ASCII Export, Data manipulation I, Data manipulation II, Data mining tool, Plotting tool I.
270Added "User" defined structure factor (implemented in Modeling II)
271Added panel version control for: Fractals tool, Small-angle diffraction, ASCII export, ASCII Import
272Data Manipulation II - modified to add ability to create errors (=uncertainties), scale and rebin to number of points. Modified GUI to separate processing, errors generation and post processing (scaling/rebinning).
273Plotting tool II - changed how error bars are displayed and enables SMR data error bars.
274Plotting tool I - added ability to use calibration unit (arbitrary, cm2/cm3 or cm2/g) from the USAXS data. Added checkbox to avoid units checking. 
275ASCII Import data - added controls to select import units for Intensity [options: Arbitrary, VolumeÉcm2/cm3, WeightÉcm2/g]
2782.50 1/4/2013
279Universal Installer - Modified to be able to update xops and made more robust. It will attempt to download file 10x before giving up to fix problem with ANL proxy.
280Size Distribution - ability to estimate uncertainty. Propagated the uncertainty to SizeDistribution through rest of the code and support in calculations of volume.
281Data Manipulation - fixed problem when the new data folder name was too long, which was failing. Cut the length to 31 characters ONLY.
282Control procedures - improved speed by caching IR2P_GenStringOfFolders to reuse list if it is newer than 5 seconds. Major speed improvement for scripting tool - changed for all data types.
283Control procedures - added ability handle trs, drs, and mrs data as qrs system. These data are produced by Nika when user wants output as d-spacing, two theta and distance.
284Scripting tool - modified user feedback due to increase in speed of Control procedures. 
285Scripting tool - modified to handle Size Distribution with uncertainties evaluation.
286Added DataManipulationII panels to "Kill all Irena panels" function.
287Form factors - added SphereWHSLocMonoSq - this is sphere with Percus Yevic Hard spheres Structure factor which is a fraction of sphere size. 
288Reflectivity - about 40x increase in speed due to improvements Andrew made in last few years. Added sliders to control parameters - seems to be now fast enough.
289Reflectivity - Added ability to use dq and dq^2 as resolution wave, not only % resolution.
290Reflectivity - Added ability to link parameters. Major change in GUI. Added button to "Fix limits".
291Reflectivity - Added saving fitting uncertainties into already existing "Error" variables. Made many functions static.
292Reflectivity - Added ability to insert or remove layer (requested feature). 
293Reflectivity - Added fudging errors for data when user chooses not to provide them. Original code set them to 0, which really did not fit. Using my own function from GeneralProcedures.
294Unified fit - added ability to analyze effect of the data uncertainties on the results 
295Modeling II - added Fix Fitting limits buttons - two - "tight" (L1) setting smaller range and "loose" (L2) setting wider range.
296Modeling II - added ability to analyze uncertainties/stabilities for parameters as is currently available in Unified fit.
297Analytical models - small fixes in Treubner-Strey GUI.
2992.49 11/5/2012
300Universal export - Fixed bug which prevented QRS data from being processed.
301Import ASCII - removed popup with folder selection. Keeps confusing users (class observation). Type folder name in manually, if you need to.
302Data Manipulation II - modified GUI to make thing bit more obvious.
303Data Manipulation II - fixed handling liberal names, modified NameModifier to reflect the operation done.
304Data Manipulation II - added tool to normalize data sets to area under the curve in range of Qs defined by user. Requested feature.
305Unified fit - added ability to analyze the uncertainity/stability of each parameter. 
3082.48 8/13/2012
309Updated Manual.
310XMLutils xop updated to fix speed in loading xml data files
311Data mining - fixes to length of Modeling II results of wavenote parameters searches names.
312GUI fonts control - fixed bug in Windows 7 which caused that fonts were not changed.
313GUI fonts control - removed all declared fonts and sizes for panels so user has controls over the GUI visualization
314Modeling II - Reduced number of parameters stored in wave note and therefore exported to minimize garbage.
315Plotting tool I - removed one ipf file and added for now invisible KBColorizeTraces package to use with some graphs.
316Plotting tool I - added "Gizmo" based 3D plotting tool. Still under development, but actually useable. 
317ASCII data import - added ability to reduce data to smaller number of points on import with suggestion to reduce number of points when too large number is found. Also added double click action on file selection - now it will check number of columns in the file and display the file (like clicking "Test" and "Preview" buttons)
318DataManipualtion II - converted match strings to RegEx and modified GUI to be bit more user friendly.
319Debye-Bueche - fixed formula used. User reported bug.
3222.47 5/30/2012
323New irena_users mailing list. See for details.
324Control procedures - speed up (by factor of 10 or more) qrs data structure search. Hopefully did not break anything.
325Scripting tool  - Yet another fix - fixed Size distribution fitting, which was not loading new files.
326Scripting tool - added ability to handle Irena results (generations 0 to 0 and last) and be used with Plotting tool I.
327Plotting tool I - Added Rainbow and BW options.
328Plotting tool I - Added 3D graph option, fixed ZoomAndSetLimits marquee bug which caused troubles when used on graph other than on GeneralGraph.
329Plotting tool I - added ability to create movies. Both 2D and 3D movies are supported.
330ASCII Importer  - Fixed bug in which threw error when data without error wave were loaded.
331ASCII Importer  - Added name match string (RegEx, grep) for the ASCII importer to help with file selection. Added checkbox to automatically overwrite existing data. 
332ASCII importer - added ability to trim data to specific q range on import.
333Data miner -  added Match string for Items in the folder and Wave note/string values. Added "Latest generation" option, which will find highest generation (meant for results) in case something is named XYDSA_0, XYDSA_1, etc.
334Data Miner - added multiple selection when appropriate. Shift-click selects contiguous range, ctrl/cmd select discontiguous cells.
335Data Miner - converted Folder Match string to Regular expression.
336Modeling I and II - change min size allowed internally to 1A. Seems like many users are pushing limits to high-qs.
3382.46 4/30/2012
339Removed Motofit ipfs distributed with Irena as they were out of date and caused conflicts with Motofit users. Updated xop.
340Added Reflectivity to check version routines. Changed (per request) range of thickness displayed in the Reflectivity SLD plot. Widened from 4% more to 8% more than the thickness of the system.
341Form factors - upgraded Core Shell cylinder to be multicore.
342Controls procedures - fixed problems with user defined data structure and hopefully improved performance on qrs and qis data structures.
343ASCII import - default to use qrs name structure and use file names as folder names.
344Scripting tool - fixed bug which caused one-before-last qrs data set to be invisible.
345Scripting tool - enabled better selection options: cmd/ctrl click selects one item, shift-click selects range of items. Added option to sort the data in number of different ways.
346Scripting tool, Sizes, and Import ASCII - added version check for panels. Will force restart of tool if procedure version has changed.
347Size distribution - added button to open Scripting tool and also added version control to panel.
348Modeling II - added scripting tool button and supporting features.
349Unified fit - removed bug which caused that RgCo from higher levels was fitted if the checkbox was selected, even when the level was not used.
350Unified fit - added button to call Scripting tool
351Plotting tool II - added option to be controlled by Scripting tool, so it can be used to produce easily graphs with many data sets in it.
352Modeling II - fixed bug in Shulz-Zimm distribution which prevented parameters from fitting.
3572.45 2/27/2012/Users/ilavsky/Igor Pro Folder/User Procedures/Indra 2/Readme.txt
358Added to Data Manipulations II ability to average N data sets at time, so one can "chunk" the data together. Requested feature.
359Reflectivity - added ability to store results in new folder when user created "model" data. It will now ask for new folder name and store results in root:NewFoldername. It does remember this name for subsequent saves.
360Updated manual.
361Fixed Modeling II bug when Unified local fit P/B set wrong limits(Rg/G). Typo. Fixed checking for limits in Fitting which checked for Unified and Diffraction also parameters which were not fitted. Added checking if the parameters did not reach (to within 2%) their limits which will put up now dialog to user and print list of parameters in the history area.
3632.44 2/18/2012
364Fix in fitting for Modeling II - fitting of peak profile shapes did not check if the  shape has 3 or 4 parameters and may have tried to fit 4 parameters even though that was not right. Fixed problem in checking for background fitting parameters causing confusing messages.
365Updated Analytical models to include option to use Genetic optimization. Seemed way too easy, I wonder what I forgot.
366Data miner tool, updated to work better with wave notes of QRS data coming from Nexus. They have : in the key names, so I need to work around that.
367Added Analytical models and Data miner to panel control for updated tool.
368Minor fix in Unified analysis where the contrast for the included materials contained 10^10 but code assume it does not contain the 10^10 and hence we got many orders of magnitude differences. Changed included set of contrasts so users do not have to include e10 in the numbers.
369Reflectivity: fixed minor bug which disallowed negative SLDs when SLD step was changed.
370Scripting tool: Fixed minor bug in controls of Size distribution and added controls for Modeling II with ability to run that tool with single input data set.
3732.43 1/10/2012
374Modeling II major upgrade. Now there are 10 "populations", each can be either size distribution, Unified level, or Diffraction peak. ALso added Normalized residual display and made some more fixes and changes. Added "Add tags to graph" option and cleaned up the notebook output so it is more useful.
375Started upgrading tools to be aware which version of Irena they were run with and force user to restart tool when panel opened with old version is detected. Should prevent some of the crashes when incompatible up[grade is done.
376Changed how the loader works. Now the loader will look for files relatively related to the loader files itself. This should enable in the future having multiple Irena packages installed and be able to switch among them. I am not sure why would any user need to have it, but I need it myself for debugging purposesÉ
377Unified fit - modified so parameters change their limits as they are changed from GUI.
3802.42 11/15/2011
381Small Angle Diffraction tool É Fixed the PercusYevickSQFQ to use F(Q)^2
382FormFactorPackage - per user request I have modified what can be to make as many FF as possible multithreaded. Now it uses multiple cores, when possible. Also I have modified some integration waves in the code to reduce the cpu time.
3842.41 7/29/2011
385Modeling II É Changed Unified fit included to use Contrast (both G and B are multiplied by the contrast),. This should enable to use with data sets with different contrasts for the Unified data, such as combined neutron/X-ray data or Anomalous X-ray data. Fixed display bug which prevented Rg, B, and P to appear in some cases.
386Modeling II É Added Core-Shell-Shell form factor per request.
387Modeling II É Fixed display issue when Contrast was displayed even for CoreShell models for which it is NOT used. NOTE: as it is, these models cannot be used with multiple data sets with different contrasts since the form factor parameters contain the contrasts. 
388Modeling II É Fixed bug in export of data when Model data are used. Now user is asked to for name for new (will be created) or existing folder so the data are safely saved in way user can figure out.
389Modeling II É Fixed logbook record when it recorded wrong type of distribution type in the logbook. User reported bug.
390Modeling II É Fixed storing of the results, now storing the individual distribution results (as waves) works. This has not been apparently ever finished.
391Modeling II É Changed limits on Structure factor parameter 1 - previously if it was smaller than 10 or so, it was reset to 50, it was getting into my way and so the limit is changed to 0.5. 
392All - fixed inability to select any folder/data when no checkbox was selected.
393Small-angle diffraction - added LorenzSquared peak, Skewed Normal, Percus-Yevick S(q), and Percus-Yevick S(q)*F(q) as another peak shapes.
394Small-angle diffraction - fixed few bugs: FitRg had typo and so Rg was never fitted.
395PDDF É added display of Gamma function (gamma = pddf/(4*pi*r^2)) per requestÉ Is anyone actually using this?
396Bug fix - fixed bug which caused problems compiling when Genetic optimization xop was not present.
3982.40 June 16, 2011
399Modeling II - added Unified Level as one of the Form factor parameters. Surprisingly, this was major complication and change and hence there may be some residual bugs yet to be discovered.
400Modeling II - added Shultz-Zimm distribution.
401Minor fixes in Modeling II and CalcIntgCylinderFF
402Fix link to Irena web page.
403Speed up QRS data selection routines to help users with large QRS folders.
404Remove old method of genetic optimization, now will run ONLy when xop is installed or will through abort. This way we do not need the GeneticOptimisation.ipf which was causing issues with Motofit.
405Unified - tried to speed up GUI response and avoid unnecessary recalculations. The bug in Igor native GUI controls speed update on mac requires this panel to be set on mac to old (os9) GUI appearance. Bug reported to WM. 
406Removed CursorMovedHook function to avoid conflicts, converted to Window hook functions when necessary.
4092.39 9/25/2010
410Added ANL license
411Import ASCII tool will now prevent users from cresting n% errors on import with n~0 (resulting in errors=0 for all points). Really happened. 
4132.38 8/27/2010
414Modified Data Manipulation II to be able to subtract one wave from many waves. 
415Fixes for Igor 6.20.
416Added Ciccariello-Benedetti tool to Analytical models. I still have questions on calibration of slit smeared data (difference between infinite and finite slit length), but it may work now. Manual chapter added.
417Added preconfigured special plots into Ploting tool I. (Porod, Guinier, Kratky,É). Will need to add fits also. May be next release...
4192.37 2/23/2010
420Data manipulation - enable errors of 0 values to let users use wrong errors from some instruments. NOTE: other tools will fail, if errors are 0!
421Minor Fixes in Cromer Liberman and Scattering contrast calculator (fixed values for Au) code.
422Added new tool - Data Manipulation II. Intended for many data sets at once - at this moment it can only average data, but can be modified to add more functionality.
423Added InterPrecipitate Structure factor per user request. See updated Form factor and Structure Factor description pdf file.
424Modified Unified fit - added now "Analyze Unified" tool with new Greg Beaucage's advancements, modified graphing of Unified to follow user choices for legend font and font size.
4262.36 July 17, 2009
427Fixed bug, when many tools could not fit background. Apparently created in version 2.34 when trying not to limit background to positive numbers only. Now there is no limit in fitting on background, in Genetic optimization (where limits must be) the limit is +/- 10* background/
4292.35 July 10, 2009
430Fixed bug in Reflectivity tool, when if using errors with Genetic optimization (using xop) the code stopped with error "wave does not exist". Typo.   
431Fixed 6.10 update bug, when actionFunctions would cause weird behavior related to not checking evenCode. Checked rest of Irena and Nika, not problems found. 
432Desmearing - fixed bug when background was not recalculated when value for Q start was changed in the panel.
433Fixed bug when background in Unified could not be fitted. This part of code was commented out for unknown reason...
434Fix bug in DataMiner, after latest improvements did not call right procedures. Problem with structure-based popup controls. 
435Fixed bug in Data Selection Tools which went crazy when different panels used different types of naming structure and folders were not selected.
436Got reports about problems in 6.10 which I cannot reproduce on Mac. Need to test on Windows.
437Added feature to modeling 1. If used only for modeling with no input data, now I present user with dialog where they can create new folder for the model data storage. ANy path will be created, if Igor-sensible path is given. 
4402.34 March 2009
441Irena manuscript is published to Journal of Applied Crystallography (2009). The reference is J. Appl. Cryst 42 (2009), 347-353. Added to About and also added option to open the manuscript (and download copy from APS web site).
442Added package preferences for Panel and Graph fonts and font sizes. These are now specific to given computer and experiment. Computer has priority when new experiment is created.  Panel fonts are specific to platform too. It is logistical mess what and when is applied, but hopefully will work for most well.
443Added Treubner-Streus model into original Gels model and changed name to Analytical models. 
444Changed all (hopefully) GUI and fit functions to enable negative background. This was requested by one of the reviewers of the manuscript in J Appl. Cryst. Apparently our neutron colleagues have problems with over-subtracting background.
445Changed Panel control tools to require errors for Indra type-data. Seem to cause minor issues with users trying to use Indra type names and having no errors...
446Fix Scattering Contrast calc, which had electron radius as 0.28 only, instead of 0.28179. This caused small difference in values compared to other calculators.
447Changed desmearing to allow desmearing with both slit length and slit width and enable for both use of trapezoidal slit profile.
450Quick fix for removal of Window and panel macros - forgot to name them properly when changed to Proc. Hope I found all calls...
453Removed all panel and windows macros from the menus - they should not be called through Igor GUI, just through Irena commands as they are not initiated otherwise.
454Found serious bug in CoreShell model - volume of particle was defined incorrectly (3/4*pi*r^3 instead of 4/3*pi*r^3) which resulted in volumes calculated to be off by factor of 1.78. This bug was found by careful user who did some creative testing.
458Modify Data tool - added option to reduce data on log-scale. Added explanation in manual. Strongly encouraged as reading...
459Plotting tool I - Fixed bug when Remove data panel was coming up behind the main panel...  Similar when checkboxes were changed when the panels were reordered...
460PDDF - added calculation of errors for resulting PDDF using obscure (GNOM) MonteCarlo method for regularization and similar method for Moore method.
461Added (but not finished) ability to select this error for the Panel Controls. Needs fixing still..
462PDDF - export of semi-GNOM files. Seem to be working - tested on DAMMIN. Really weird data file format.
463Import ASCII data - added some print into history statements so user knows what actually happened.
464Tested on Igor 6.10 beta. All seems to compile and tested packages seem to work. No problems in GUI on Mac seen yet.
467Added tool to analyze SAS using Pair distance distribution function. 
468Fixed Multiple data export tool when it showed one less data set than should have been.
469Added CanSAS XML loader. Requires canSASXML.ipf and XMLutils - XOP (
470Fixed Data manipulation tool - after change in controls procedures it did not create _mod wave names...
471Modified and improved Diffraction tool. Now has many more peak shapes, two options of dealing with peak-SAS relationship and al standard goodies - data saving and other things...
472Added "paste to notebook" to Size distribution.
473Included Plotting tool II - Dale's tool for plotting data.
476beta 2.29 - never released.
477Fixed recording CoreShell cylinder (and other 4 and 5 parameters Form factors) in Modeling I.
478Added new tool - Plotting tool II - modified tool by Dale W Schaefer which can control any top graph. No manual yet.
479Fixed bug in wrong label on Evaluation graph. Mixed Number and volume distribution.
480Limited length of export data name on Macintosh to 25 + extension. Had troubles without this limit. 
481Added NIST "QIS" data naming structure to loader - but not much value, as they insist on loading it by themselves, which makes our life difficult for data with no errors...
484Modifications to SA diffraction tool - many...
485Modeling II - on load the name of either folder (Indra) or int wave (QRS) will be put in User name for the data... Trying to help users keep sane.
486Bug fixes:
487Modeling II - when I renamed Tube onto coreShellCylinder, I have created bug which resulted in wrong intensity calibrations for this Form factor. Fixed.
488Modeling I - fixed problem when the Panel for CoreShellCylinder did not pop up when FF was selected. Fixed.
493Fixed GUI for Unified_tube. Note, it is using yet another definition of volume - just to make sure, here is the list:
494Unified_tube   volume is volume of the shell only. Core has same contrast as solvent.
495OK - fix... Added controls to tube (renamed to CoreShellCylinder) and CoreShell on what is the definition of the volume: Whole particle (NIST definition), Core, or Shell. This should fix all. Unified_tube volume is only the shell, as that is how the form factor is written...
496Export tool... Added comment to history area when data are exported.
497Export tool .... Added multiple data sets export tool. Should enable export of same data in sequence.
498Unified - fixed save in folder which broke during coding of scripting tool.
499Updated manual and FF description.
502Fixed core-shell cylinder, aka tube by using NIST code. Should work for all test cases Andrew came up with...
5042.25 January 6 2007
505Added tool for analysis of small-angle diffraction. Still beta and needs to be finished.
506Some fixes for Data selection tool as requested by Dale Schaefer. 
507SOme fixes in export of data for Modeling II. Not likely to be problem for users, but some waves did not have correctly set name and units.
5092.24 December 27, 2007
510Added Scripting tool. Should be able to run Unified and Size distribution on Indra and QRS data. This is likely little bit buggy tool (a lot of unpredictable failures is likely), so let's call it beta version for now...
5122.23 December 5, 2007
513Fixed problem with need to reopen all opened panel introduced in previous version... Now it should work even for old experiments created prior version 2.22.
5152.22 December 2, 2007
516Added controls for Scaling factor in Reflectivity. Requested change.
517Modified PanelCntrlProcs to be able to be used on subpanels (child panels or graphs). Major change - converted all control procs to structures. Note, it had impact on DataMiner also, where I needed to change one function. But, now it can be used for multiple data selection on single (Host) panel by using child panels. Now I can fix the data manipulation tool to use this...
5192.21 November 8th, 2007
520Fix problem when in Modeling I the control panel for the form factor parameters came below the main panel introduced in the last version.
521Change in PanelControl Procedures - now will not search for any waves in the Packages folder...
522Reflectivity - fixed window alignment and loss of focus for panel as previously done for other packages...
523Reflectivity - allow storing results with no layers (substrate only). Fixed minor bug related to wavenote storing (when previous wave note is there, Igor 6 will not remove it, it will append "\r" and new text, unless /NOCR is used.
524Fixed lost attention for Plotting tool.
525Added new tool for evaluation of size distributions. Updated manual. 
526Added Menu Item to generate for user e-mail to send me back bug or feedback with some info.
5282.16 & 2.20
529Added "stickiness" to wave name in Data miner. When user selects folder in which previously selected wave existed, it will be automatically selected also.
530Added mean/mode/median to the calculator for Size distribution.
531Changed internal name of some variables not to conflict with function names (beta, gamma)
532Reflectivity & Modeling tools - Added capability to run genetic optimization function using xop on both Mac and PC. Likely only Igor 6 compatible... Note: if xop is not found, uses old code...   
533Unified - Returned back the Slit smearing controls in Unified, which disappeared some time ago. Fixed some controls. Note: behavior change, the slit smearing checkbox does not control the wave selection anymore but the wave selection controls the checkbox. Necessary due to use of common data selection library. 
534Modeling II - added output of data into formated notebook, so user can dump human-readable stuff somewhere. Fixed note keeping in SAS notebook. Some minor bug fixes related to the note keeping.
535Modeling I - some fixes related to use of slit smeared data.
536Sizes - some fixes related to use of slit smeared data. 
537Scattering contrast calculator - fixed display of internally stored compounds, when started...
5402.15 July 15, 2007
541Fixed case when number distribution from Size distribution was inf (failed generating volume of scatterers wave).
542Fixed Modeling II when Q selection filed if user set cursors in opposite sense (square to low Q and circle to high Q). Fixed error on Mac when on load the Q range was incorrectly set to first point (only) of the data. Apparently, on Mac you cannot use for last point in wave the wave[inf]...
543Modified dataMiner to create shorter namers - for some results the names were getting beyond Igor 32 characters limit and users could not get to some parameters.
544Added libary of structure factors to be used. This is ONLY for Modeling II, the others are using old "interferences". Would be really difficult to change. Currently available: Interferences, Hard spheres, Square Well, Hayer Penfold MSA, and Sticky hard spheres. Code for the new ones is from NIST macros.
545Modified Form factor description pdf file to include Structure factors.
546Changed names in menus, as I am writing the manuscript about Irena I realized, that the current names are not the best.
547Added Genetic optimization method to Modeling I, Modeling II and Reflectivity. Genetic optimization is much slower but acheives results in very complicated cases amazingly well... Some changes in GUI were needed.
548Modifed PanelControlProcedures to enable user to write "hook" functions which can be run after the selection is made... Important: There are 4 hook functions, run after folder, Q, intensity, and error data are selected, names must be exactly: IR2_ContrProc_F_Hook_Proc(), IR2_ContrProc_Q_Hook_Proc(), IR2_ContrProc_R_Hook_Proc(), and IR2_ContrProc_E_Hook_Proc(). User needs to make sure these can be called with no parameters and that they will not fail if called by different panel!!! This is important, as they will be called from any panel whic is using this package, so they have to be proof to that. I suggest checking on the name of top active panel window or the current folder...  Example of function is below:
549Function IR2_ContrProc_Q_Hook_Proc()
550        print getDataFolder(0)
552Added in General procedures function to generate errors for SAS data using different methods.... Looks very interesting for use in packages.
553Modified Scattering contrast calc and calls to pdf files to manage when user procedures are not in the Igor folder or user has not right to write there.
554Changed limits for Reflectivity to allow negative SLD values for all fields.
555Fixed typo, which caused the Normalized error not to be recalculated during graphing data.
556Unified - fixed bug which caused error when user tried to subtract background. The code was calling old (SAS modeling) procedure and not the new Unified procedure. Introduced in version 2.12.
5592.13 December 21, 2006
560Fixes to New LSQF - previous beta version could not work with slit smeared data and few other bugs were found... Still should be considered beta version, but I have used it and it works. Just is very cumbersome due to large number of parameters allowed and associated controls.
561New feature for Igor 6 - for log plots in general ploting tool now Igor 6 can do log-offsets. Note, this will cause problems, when experiment with file created on Igor 6 is opened in Igor 5 and general graph is opened, as Igor recreation macor will fail with error message.
562Fixes in the NewControlProcedures package - user defined part did not work as advertised... Needs to ne checked again.
563Bug fix to common library... IN2G_FindFolderWithWaveTypes(startDF, levels, WaveTypes, LongShortType)modified to find also empty folders, when search wave name is "*"... Question are the consequences...
5652.12 BETA September 5, 2006
566Added beta version of new Least square fitting package. Not finished yet, but need to get out to get tested...
567Most packages now can generate input data for modeling only, so one does not need to use any experimental data. Convenient for simple modeling...  Not finished saving of the data in new folder yet.
568Potentially INCOMPATIBLE CHANGE with previously saved experiments which have opened Unified panel - moved Unifed fit into separate folder. Was (for historical reasons)using the same folder as LSQF. It was using the same waves as LSQF and this was bad for parallel use of the tools. Unfied needs to be restarted...
569Converted Unified to use the new control procedures.
570Fixed bug in Fractals model, when saving data into the folder generated error due to wrong list of parameters.
571Added into the ControlProcedures ability to generate distribution of q values (lin/log) - can be used for modeling...
572Converted LSQF (old) into use of these new Control procedures. Painless, but minor change in behavior of GUI...
573Converted Gels and Fractals into the new Control procedures
574Converted desmearing into new Control procedures
575Converted invariant in Unified fit to cm^-4 from cm^-1*A^-3
577Need to ADD in Unified Invariant calculator...
578//comment :
579// the invariant is:
580//   2*pi^2*FI(1-FI)*delta-rho-squared
581// Need to convert the Unified provided invariant to cm^-4 by multiplying by 10^24 (from cm^-1A^-3 to cm^-4)
5842.11 April 5, 2006
585New control procs - sped up searching for qrs data (created IN2G_NewFindFolderWithWaveTypes, which should be faster, but may behave differently. Use with caution).
586General ploting tool - changed to new control functions. Was drop dead easy...
587        - Allowed use of x-wave scaling for Irena results (SLD profile uses that) and generic data. Need to be tested more and verified.
588Form factors package - added capability to create control panel for given form factor parameters. Will convert all packages to this method - one place to maintain the code when adding new form factor.
589Reflectivity - added SLD to export (was missing), add switch to define start of thickness at the substrate (more natural anyway)... Changed also the amount of points in substrate & in air.
590        - added possibility to update plots during fitting...
591        - added calculator of resolution. Need to be checked...
592        - fixed bug - the imaginary part of SLD was not used correctly - should be negative, but was used positive. Fixed and te results now match Parrats code.
593        - added option for use of xop from Andy. If xop functions are present, faster xop code will be used (5x faster), if not, old Igor Parrats code will be used. Should be transparent.
594        the xop should be available from :
595Fractals - Fixed bug when mass fractal for beta =1 (sphere) shape model failed. Also, sped up the calculations for beta =1 since skipped the integration and used sphere FF... Only used for beta = 1 exactly. Anything else and slow calc is used.
596Data miner - some more fixes to improve performance...
597Fixed bug in General Graph when Execute("Legend ..." had parameters order wrong...
5992.10 October 11, 2005
600Modified Anomalous Scattering contrast calculator to provide (f+f') and f" in cm^-2 units for use as real and imaginary contrast of material in reflectivity.
601Added option into Scattering contrast calculator to save data within Igor experiment or outside Igor experiment as before.
602Sizes - major update. Added option of using no errors and creation of errors by various methods inside the tool itself. Changed ot Panel control procedures. Need to fix "bailout" due to acheieved Chisquare. At this time does not work with
603no errors (as should be expected) and the only tool which can reach solution in IPG/TNNLS. Needs more work.
6052.10 beta October 30,2005
606New tool:  Data miner - tool to pull out of experiment various useful info from variables, strings, wave notes and plot all waves in subtree... Not finished yet. QRS system is still problem, but great for Indra named waves and for results also OK.
607New tool - Reflectivity with code by Andy Nelson
608Tweaked search in the Panel control procedures. Now faster (much faster) searching for results waves. 
609Found major bug in LSQF. Fitting had major bug in whcih could cause troubles. The check on number of populations was not done properly and caused failure in fitting under some conditions. At least 3 years old!!!
6112.07 October 4, 2005
612Added minor control into Data manipulation tool to prevent user from not realizing there is nothing to do with data and therefore nothing to save.
613Added date and time stamp to each entry to logbook.
614Set default fonts (for tools which use the user defined stuff) to 10 points on Mac and 8 on Windows.
615Fixed bug in Logbook name (too long name).
6172.06 September 27, 2005
618Optimized some internal functions in the Panel control procedures and increased speed by factor of ~5x... Major improvement for larger files.
6202.05 September 26, 2005
621Added new package - Universal data export tool. In principle handles any 2-3 column dat aand exports as Header + 2-3 columns separated by tabs.
622Added code to set and use in graphs user default variables and font names. For now set to provide default font sizes for legedn, axis etc.
623Sync with Dale Schefers corrections for form factors. Added Unified tube in process. May be made the Fractal aggregate to work(?)
624Data manipulation - fixed bug achich caused data point reduction to fail without errors....
625Created new control package which provides controls for data selection for arbitrary tool... Now I need to use it in other packages.
626Fixed GUI for the fixed Core shell FFs.
627Added Unified_tube and modified controls for it.
628Fixed bug in IR2P_LogPowerWithNaNsRetained which casued last point not being right.
629Data import tool - will now add automatically skipped lines into wave note as header recording.
6322.05 beta March 2005
633Added macros logging data processing into log book for: Data import tool, Data manipulation tool, Desmearing, Sizes,
634Checked and modified recording for Unified,
635Added Desmearing windows in "Kill all Irena windows macro"
636Started to fix problem with LSQF user models, apparently I forgot to made modifications necessary for use of the new set of form factors...
637Fixed bug in import data function IR1I_RecordResults(), which seemed to point to wrong folder:
638Sizes - added IPG/TNNLS code. Changed GUI to allow easier use with more different methods.
639Sizes - Changed in Sizes behavior of button "Calculate volume" on the graph. If no checkboxes found on the right data, all of the data are calculated.
640Sizes - added more logic to display right name of the sample - will handle qrs data and will skip the name for other types of data
641Sizes - fixed storing parameters of new form factors in wave notes and added IPG/TNNLS method in it...
642Sizes - added button for maxEnt to set the sky background to appropriate number
643LSQF - modified ASCII export data - changed comment character to # and removed empty lines. Requested feature (PRJ).
644ImportData - added feature to allow including extension as part of folder name... Requested feature.
645General plotting tool - allowed use of qrs data without errors (requested)... Needed major change of support function IR1_ListOfWaves and IR1_GenStringOfFolders where I needed to add switch to allow use of the qr data only. Potential for major problems..
646General plotting tool - Corrected names for ploted functions, added ln(Y) (requested)...
647General plotting tool - added option to offset data horizontally and vertically...
648General ploting tool - fixed bug when sometimes text was printed on graph accidentally...
649Data manipulations - allowed use of data without errors in qrs data.
650Unified - fixed minor bug in local fits which displayed wrong locall fits after fitting...
651Form factors - attempted to fix problem with Core Shell models - both spheres as well as cylinders (aka tubes). Needed to update also GUI and may have caused many problems. Need to fix...
6542.04    December 2004
655!!!!!! Moved package to "Irena" folder from "Irena 1" and also moved the Styles and Compounds folder to "Irena_xxxx"...
656Removed following functions: IR1R_SelectShapeModel, IR1U_StyleButtonCotrol, IR1_CalcIntgPr_x_Vr, IR1_CalcWidthOfBin, IR1_LogLogPlotStyle
657Added list of form factors - and verified function. Have removed non functioning integrated alg spheroid and fixed few bugs found.
658Added Unified form factors by Dale Schaefer... Added also cylinderAR and Unified_cylinerAR - both use aspect ratio instead of length...
659Enabled Unified to use smeared data... Whole Unified now works USING desmeared data parameters, but will happily use smeared data... Note, that now the slopes may not agree - the Porod in smeared data is -3. But P will be 4! Note, thsi tool now can be used for desearing...
660Added feature - graphs now should have time and data stamp. For General geraph it is optional (switch on "Graph details").
661Fixed bug when in LSQF when recovering the popups and controls were not set correctly
662Returned back the log notebook menuitem, fixed bug for loging LSQF, but I think it is the only LSQF & Unified which makes record. Need to add the others. 
663Fixed bug in Data manipulation, where single quotes ' were added to new data names, which was wrong and caused problems. Added some cleanup for teh names, so user cannot really screw up...
664Fixed small bug in note in Desmearing, where the name of waves with results was not properly written in... Caused problems in other tools.
665Gels tool -fixed error in initialization (background error variable was not created).
666Added capability to call directly SMR data in Data manipulation tool...
667Added capability to call directly SMR data in General Graph tool.
668Added reset tool for Unified (requested)
669Added in Unified display of single level of Unified (included in local fits display) to aid users in how the unified level looks.
670Set default RgCutoff for all levels to 0.
673Fixed bug which caused Number Distribution from sizes to be set to 0...
674Found major bug for desmearing - one index was wrong and the last point was screwed up. this caused problems for data, which did not terminate in flat background (USANS, desktop USAXS) and caused major crash of the desmear routine.
675Added capability to use User defined form factor and volume for the particle in both Sizes and LSQF package. Checked following form factors;
676        spheres, cylinder, algebraic cylinder   - found OK
677        algebraic disk - have problems with it.
678Changed one of general procedures to work more reasonably, but this caused major flurry of bugs in folder selection throughout the package. Should be all removed?
679Fixed bug when using slit smeared data in models which caused error - the temporary folder may have not existed, if slit smearing was not run before.
680Sizes - fixed bug withloading slit smeared data...Changed little bit the GUI.
681Added function which should (on both PC and Mac) open Irena manual in default pdf reader. Not much checking done, so this function may fail under non-standard conditions.
682Desmearing - For USAXS data (Indra2) added button for next sample, so user does not have to select any more folders and can go through all samples in row.
683General ploting tool - Added tool to calculate area under the curve - volume or number of particles for size distributions.
684                - fixed saving Igor recreation macro
685Added some basic SAXS ploting tools - place in graph line with some slope and fit line and powerlaw... These came from USAXS macros and previously from Gregg Beaucage.
686Major source of possible bugs - changed behavior of IN2G_FindFoldersWithWaveType function, now the * needs to be included with the string to search for....
687Added tool for Debye-Bueche modeling of polymers.
690Minor fix for desmearing listed above, not included other fixes listed above...
693LSQF - Added option to use smeared data. Internally smeares the data with provided slit length. Should work fine with fitting... Fixed problem in LogNormal Dist, when SDeviation was >1.3 or so. Volume step is now changing (step 0.03) with the value. Few bug fixes of minor nature.
694Data manipulation tool - added automatic creation of errors for spline smoothing, so data which do not contain erros can be spline smooth. Asigned 0.005* vlaue as error. This error does not get propagated further and is removed after spline smoothing.
695Desmearing - fixed bug causing problems when creating error bars for desmeared data and used smoothing on range of data.
696           -  added few more features in way the desmearing can be done (run preselected number of iterations, iterate until average normalized residual is < selected number...). Added modified way the desmearing can be run - "dampeneed"...
697General graph - fixed bug with wave selection for "irena 1 result" - name was incorrect, could not find some folders... FIxed recording of parameters related to use of interferences
698Modified manual with help of Pete Jemian.
701Common for sizes and Standard models:
702Use of common library or form factors and method to calculate intensity - through G  matrix. This should make it much easier to add new shapes if needed...
705Added different shapes using Pete's code - seems to work, was not verified independently....
706Modified Sizes graph view and added button to calculate volume of scatterers...
707Regularization - changed D_matrix calculation to MatrixOp - speed increase at least 30x in this step...
708Fixed bug when Data selection for Sizes would not work for really short weird names...
709Control of diamter and volume axis - provide log scaling through checkbox.
711Standard models:
712Allow export of separate population distributions.
713Standard models LSQF - fixed bug which caused controls to be put under some conditions into graph instead of panel...
714Setting cursors to wrong wave will nto cause problems now...
715Internally the code now calculates using either number distribution OR volume distribution. Previously used only number distributions, which caused some artefacts sometimes...
716Mimnimum volume set to 1e-5, basic number of bins increased.
717Fixed bug for step in one of teh setVariables.
718Changed names of parameters for particle size distribtions to more common names, specific for each distribution type. Very messy, but hopefully user friendly. 
720General Plotting tool:
721FIxed bug in General ploting tool which caused that under some conditions the set variable for strings/variables was set into the graph instead of panel...
722Modified names for wave pull down menus in General ploting tool...
723Remove data in general plot did not update graph when data were removed. Fixed.
724Fixed bug causing small panels to disappear on change.
725Fixed bug in grid checkboxes, they were controlling the other axis than name indicated...
727Data manipulation
728Internal modification of code for Data manipulation... Moved internal controls, seems to be working. Needs more checking.
729Added option to pass through Data 2 set, so the user can save each component separately and also save combined data. Requested feature.
730Changed order of user input for results wave names to be Q/I/E...
731Added Spline smoothing.
734Added more text to screen size checking, which should advise users on 1024x768 screens.
735All control panels now should have more user friendly names...
736Now checking for latest version of Igor 4 - 4.09. Had problems with macros not compiling on 4.02... Force users to update to 4.09...
737Many bugs in LSQF-User models to list...
740Added Spline smoothing.
741Modification for desmearing - switches between fast and slow mode on fly to work on USANS data also...  Added user controls for this so user can switch as he/she wishes...
742Added starting guesses for power law fit... Wavemetrics method failed badly under some conditions...
743Changed where data are searched when Indra 2 data are slected (requested feature). No need to have data in root:USAXS folder anymore... ALl folders are searched for tripplets with SMR_xxx waves...
744Fixed bug in General ploting tool when the automatic wave selection for Indra 2 data failed for M_DSM waves...
747Fixed bug with limits for internal number of poitns for iteration, which was plainly wrong...
752Fixed font call in Button which caused problems on Mac OS10. Changed CromerLiberman package to be within the Irena 1 folder and use Irena standard function name template.
754Version 1.60
755Scattering contrast calculator with CromanLiberman code for anomalous effects. Should provide all functionality of previous (old) version. ALos stored compounds are now saved in Igor Procedures subfolder, not in subfolder of Irena1. This should be  safe place for it on Macs...
756Fixed nasty bug in control commands for many tools introduced in previous release by modification of one common procedure.
759Version 1.53
760Sizes - fix for cases when user canceled in the middle of run and did not clean waves properly. Increased default number of iterations to 100. Fast computers.
761Ploting tool - Changed where styles are stored. This should fix problems with updating the macros on Mac, when replacing the folder on Mac would wipe out stored styles for user... Chnaged axis description in puldowns from q and I to X and Y... The tool can display also different data than Intensity vs q. Changed use to q instead of Q.
762Scattering contrast calculator - stores now data in different folder in User Procedures to avoid danger on Macs, that updating macros by replacing folder wipes out stored compounds...
763All - changes font and font size for all buttons to Times and 10 pnts.
766Version 1.52
767Requested feature - added checkbox for export of local fits from Unified. Allows to switch on and off this feature.
770Version 1.51
771Typos in new code. Standard bug fixes with wave names etc...
772Fixed numerical error in Fractal model.
775Version 1.50 Major update - new feature added
776Added Fractal model by Andrew Allen, read the manual for this piece of code... Careful, when using, this is still under development.
777Modified functions to enable loading "BKG_Int" etc (Indra 2) waves as part of Indra 2 data structure...
778Added capability to display results (both Int/Q fits and Size distributions) in the General graph... Will have to polish interface for this in the future.
779General plotting tool - added capability to export tiff and jpg files, save my own (Irena 1 ploting tool) recreation macros etc.
780In various panels now the step used in click up/down for variables will also changet the step for next clisk to either 10% or 5% of the value currently set in the variable. This gives "dynamic" steps, necessary for variables which change a lot (radius, background,...).
784Version 1.35
785Added subtract background from data in Unified. Requested feature.
788Version 1.34
789All tools - reduced necessary screen height available to minimum necessary for panels to be fully on the screen.
790Ploting tool - changed default plot style to log-log plot with axis description. Should fix problems seen on Igor 5 (beta).
791Ploting tool - Fixed bug which caused corruption of data records if user tried to import wrongly selected data.
792Standard models - added saving of interference parameters (and recovery)
793Standard models - fixed shape step issue (at startup was set incorrectly due to typo).
794Standard models - added power-law size distribution for fractal materials. This is being worked on so it WILL change in future releases... Use at your own peril.
795Data manipulation - added rebinning. Can now reduce number of points by integer number. Removes points, does not do integration...
796Unified - will now save also local fits into original data folder (requested feature).
797Unified - work around Igor bug in 4.08 version which caused crash of Igor when recovering some of the saved unified fits.
798Desmearing - Fixed bug (hopefully) which crashed Igor. CursonMovedHook function was causing troubles.
799Import data - Fixed bug - conversion to A-1 from nm-1 when loading Qs in nm-1 was wrong.
803Version 1.32
804Finished version 1 of scattering contrast calculator. Alows to save and load compounds now...
807Version 1.31
808Patched few cosmetic problems. Nothing major...
811Version 1.30
812Dixed bug in Data Manipulations routine, which caused troubles under some conditions of Q overlap, when data were subtracted or summed...
8148/7 2003
815Version 1.29
816Minor bug fix of scattering contrast calculator... Fixed N problem and recalcualtion when matrix is changed...
820Version 1.27
821Created Scattering contrast calculator. Working on creating tables of X-ray and neutron preporeties of elements... A lot on numbers. Source - Periodic table from Alpha Aesar (element weights) and Kostorz book for neutrons.
822Added check for the tools, which checks for screen size (in pixles) and will prevent tools to run if the screen height is not large enough for them...
825modified Unified model RGCO starting values to 0 for all levels, users routienly do not have any clue what this parameter means and the value of 0 will cause less disastrous consequences.
826Fixed help in UNIFIED Pack.
827Fixed bug in fitting in General plotting tool, which caused non-fatal error in linear fit.
829current version 1.26 from 7/7/2003
Note: See TracBrowser for help on using the repository browser.