Difference between revisions of "Sq pk programming"

From Jimenez Group Wiki
Jump to: navigation, search
(Squirrel)
(To Do Priority)
 
(262 intermediate revisions by 2 users not shown)
Line 3: Line 3:
 
===To Do===
 
===To Do===
  
* Delphine wanted to spit out the elemental mass spectra without normalizing them all to average total mass.
+
* Add the ability to do EA on non HROrg species.
* Get and incorporate Jose's read me to the wiki
 
* Allow users to select HR spectra from non-root data folders
 
  
=== Done ===
+
* Add more web documentation, with specific examples of mass calculations.
* Ken had an issue when he chose the tag wave instead of the text wave as the chemical mass formula wave.  Perhaps there should be a warning that appears when x number of mass fragments are flagged as having issues instead of simply printing them to history. (done in 1.02)
 
* Add a new table on the web page for downloading ipf (done in 1.01)
 
* Add ability to not require the fit of CO and/or CO2 (done in 1.01)
 
* Add the ability to do the analysis on user selected HR spectra, such ans PMF results (done in 1.01)
 
  
 
==Pika==
 
==Pika==
  
===Extreme Priority===
+
===To Do Priority===
 +
 
 +
* Do some sort of smoothing for the peak shape when user uses different left/right parameters.
 +
* The HR ion mass calculator, Query tool seems to need some sort of initialization before it works.
 +
* Remove use of HR_specName_list because it is redundant
 +
* for PMF prep error panel:
 +
** Jose wants the running median in the time series of the error and noise times series for individual sticks.
 +
** Do the time series plots differently so that users don't have to change axes
 +
** Graphs for isotopes hide isotopes
 +
** In prepping for PMF, nan isotopes
 +
** Add spike removal similar to what Qi Zhang did?
 +
 
 +
* Ask J if we have volunteer for the keeping of the HR list
 +
* Generate NeighboringHRIonSignal new type of Pika error
 +
* Pika fitting graph -  make it so that the user can resize
 +
* Doug wants H2O, OH, O and CO to be colored as CO2 in mass spec Org family plots.
 +
 
 +
* Create an HR frag check panel
  
 +
* Add ability to plot in time series closed baseline sticks.
  
Final Peak Shape
+
* Check that m/z calibration panel works if one run isn't done first.
* In final peak width/shape add ability to subtract sq baseline from peak shape algorithm (instead of baselines being constant)
 
* In final peak shape graph add ability to:
 
** truncate at 3.5 sigma
 
** trim wings to ensure monotonicity
 
* In final peak shape algorithm remove/modify final peak shape smoothing and/or make it user editable
 
* Add the ability to plot real data onto final peak shape graph (show scatter of real points on 'wings')
 
* Allow peak width to change as a function of time (smooth).
 
  
HR One Spectra plot
+
* Add K, j41K to default list of ions to fit
* Add the ability to plot residuals on the raw spectra axes in the HR_peakHeights graph (not only on the top axis).
 
* When different open/closed m/z fitting parameters are used, use these parameters in displaying raw data in HR_peakHeights graph
 
* When different open/closed m/z fitting parameters are used, calculate and display sensible 'blue lines, or fits' for the difference spectra in HR_PeakHeights graph
 
  
HR Fragment choices
+
* For the time-varying peak width, have a better errror if the user doesn't select an HR ion that was used.
* Do away with old 'family' derivations and require users to choose which HR fragment belongs to which family.
 
* Begin to implement the ability for certain HR fragments to belong to more than one family with the introduction of a "HR frag table".  For example CO2 would belong partially to the CHO2 family and partially to the air family.
 
* Begin to implement a batch table, that is, have users create "species" with their own RIE, CE.  Note that this is a slightly different concept than the family groupings.
 
  
Misc
+
* Remove N3 from default list. (Done?)
* Change the default behavior from fitting difference spectra to only fitting open and closed.  James' point at the user's mtg is that we should always be looking at the HR_OpenSticks - HR_ClosedSticks.
 
  
* m/z calibration - We need to subtract the mass of an electron from all our masses.
+
* Add code to require and check that HR ions be formatted in a certain way - i.e. disallow H7C5 and require C5H7.
  
===To Do Priority===
+
* Change code so that for todo waves fit with different pw and ps but with the same set of HR ions, one can nicely generate time series or average mass spectra.  The code should check that the set of HR ions are the same for different todo waves.  If they are the same, then one should be able to proceed.
 +
 
 +
* Add code to check that all the HR ions within each frag table element is fit. (Note: this is hard to do because of the recursive nature of frag entries!)
  
In peak shape panel, make sure when we update graphs that the window within the panel is called. (If you close the panel, other graph axes get rescaled.
+
* Make a Pika-specific airbeam correction?
  
* In Peak Heights graph, the x axis should be centered on the gray area.
+
* Implement the "resolution" fitting function for the peak width panel as default (Pete's suggestion)
  
* Allow for the selection of different todo waves from the one used in peak width functionality
+
* Allow including other families (such as SO, NO) in elemental analysis along with HROrg (Puneet & Doug)
  
* In peak width/shape panel, if todo wave is v mode and user selects a w mode peak shape, an error message should pop up right away.
+
* Tim O made a good suggestion for instances where peaks are not fit (resulting in nans).  Perhaps one could compare the  squirrel signal at an integer m/z, and if the value is sufficiently small, (the raw spectra shows noise), all the peak height values could be set to 0.  
  
* Begin to automatically create uncertainty values generated from peak shape and/or m/z calibration knowledge.
+
* We may want to allow a 'smoothly varying' peak width.
  
* Generate 'Neil's graph' whereby we plot as sticks from zero amount of C and H mass as a function of number of Oxygens.  Do a similar thing for the number of C's (the amount of H and Os and a function of number of Cs).
+
* Change all peak shape candidates to have a 0 entry in the left- and right-most value so that 'peak-shape type baselines' dont' get extended beyond +- 7 PW values.
  
* Deal with CO tag (Cobalt in usage in tags)  and (C2HN?)
+
* Fully fold in Mike Cubison's sensitivity analysis code.
* The legend for the peak width graph doesn't update when defaults are changed (is this true?).
 
* Checkbox for truncating sticks to zero in stacked graphs.
 
  
 
*  Many parameters panel
 
*  Many parameters panel
Line 64: Line 62:
 
** add graph showing spectra-like data with window highlighting where you are
 
** add graph showing spectra-like data with window highlighting where you are
 
** have run numbers update with cursor move
 
** have run numbers update with cursor move
 
* In Peak shape panel the first run number of index should be put into “run number” field (it defaults to 0)
 
 
* In Peak shape panel and "live update" button similar to the one in the m/z calibration panel.  Similarly,  don't clear all previous fits when one presses the 'begin peak width' button.
 
  
 
* Add ability to duplicate PeakHeights graph and functionality  
 
* Add ability to duplicate PeakHeights graph and functionality  
Line 74: Line 68:
 
** (Jose) This could be done with a radio button on top of the graph that selects SR/AR (meaning single run / all runs)
 
** (Jose) This could be done with a radio button on top of the graph that selects SR/AR (meaning single run / all runs)
  
* We need to add camels, dromedaries, and vw "bug" ions to the lists. We need some notation for these ions, let me suggest vw28, vw23, d28, d32, and c28, c32, with the comment column describing what they are. It is important that those are lowercase letters, so people don't confuse these ions with vanadium (V), tungsten (W), and deuterium (D).
+
===To Do (Less Urgent)===
 +
 
 +
* In HR_peakHeights_gr, change the color of the residuals to be different from the red, orange, brown.  Also add squirrel integration regions.  Also, add a checkbox to add remove black lines between raw data points.
 +
 
 +
* Perhaps shorten the names of some of the new error estimates (Pete)
 +
 
 +
* For Pika, we need to incorporate some sort of algorithm that sets the minimum error to be 1 ion.
 +
 
 +
* In average mass spec plots (including the 5-graph panel and the elemental analysis) Doug wants a way to 'move' isotopic child HR ions to their parent ion (i.e. j13C would be moved and grouped with the HR ion C.)
 +
 
 +
* From the HR_peakHeights_gr, when adding a brand new mass to the table, add a note in the history.  Also add a message when adding and removing masses to fit?
 +
 
 +
* m/z calibration and masses - We need to subtract the mass of an electron from all our masses. Note from Donna:  I want to leave this decision up to the HR list committee (Puneet, Niall, Delphine)
 +
 
 +
* Generate 'Neil's graph' whereby we plot as sticks from zero amount of C and H mass as a function of number of Oxygens.  Do a similar thing for the number of C's (the amount of H and Os and a function of number of Cs).
  
* In the tables that indicate pthalate279 use the formula C16H23O4
+
* In PeakWidth/Shape panel, add ability to not do average PW fits using the std dev as weights
  
===To Do (Less Urgent)===
+
* In the Graph 5 summaries, include one 'bar' type graph showing the fraction of each family to the total. 
  
* Create other methods for the user to select masses to fit beyond the simple default option.
+
* Pika on PToF spectra (gasp!)
  
 
* There is a need to consolidate the three sets of m/z lists that exist into a single one. We currently have the list of m/z possibly used in fits,(1) ones actually selected for HR sticks (2) list of m/z used for m/z calibration, and (3) the list of isolated ions. Each list is a subset of the previous one, and we can work with a single big list, and a series of masks to select / deselect the various m/z for the different purposes.
 
* There is a need to consolidate the three sets of m/z lists that exist into a single one. We currently have the list of m/z possibly used in fits,(1) ones actually selected for HR sticks (2) list of m/z used for m/z calibration, and (3) the list of isolated ions. Each list is a subset of the previous one, and we can work with a single big list, and a series of masks to select / deselect the various m/z for the different purposes.
  
* change the error that says "no can do!" to something more specific
 
 
* If user only does the m/z calibration and does not play with the HR panel, the code calculating the HR sticks may go awry (maybe - I need to check).
 
* If user only does the m/z calibration and does not play with the HR panel, the code calculating the HR sticks may go awry (maybe - I need to check).
* Incorporate some of Mike Q's functions that deal with sq frag vs pika sticks (Donna: Mike Q's July 2008 email) Also think about NH4 measure vs predicted and RIE for NH4 (Donna: Jose's July 2008 email).
+
 
 +
* Think about NH4 measure vs predicted and RIE for NH4 (Donna: Jose's July 2008 email).
 +
 
 
* Make clear what limitations there are about the total number of masses that can be fit at any m/z value.
 
* Make clear what limitations there are about the total number of masses that can be fit at any m/z value.
  
 
===To Discuss===
 
===To Discuss===
  
* Change saving of the HR sicks matrix from masses that were selected to fit to all known masses.
+
* Errors for input to PMF.
  
=== Done ===
+
===Done===
  
* Step 4 of pika: maybe rather than two options (one run or Todo wave) and one button, we could just have two buttons?  Something like  “Calculate HR Sticks for averaged Todo wave” and “Calculate HR Sticks for one run”?  (Done in 1.04)
+
Done in 2010 Users Mtg release:
* Change in step 4 options, test for peak height to be less than 0 to be less than user defined value (done in 1.03D)
 
* Warn clearly that changing selected masses is done globally (done in 1.03D)
 
* Add a button in PeakHeights graph to redo pika fits (Keep all user settings from step 4) (done in 1.03D)
 
* Partition Avg ability for todo waves (especially v only, for Qi Chen - done in 1.03A)
 
* In Param graph add radio buttons for raw and percent (done in 1.03D)
 
* In Param graph add print all cursors (done in 1.03D)
 
* Add button for web link in credits panel. (done in 1.03E)
 
* In the graph for one spectra HR fit, move the redo fits button so it is farther away than the arrows. (done in 1.03E)
 
* Double check m/z parameters (so they are not nan) before trying to fit (done in 1.03E)
 
* Alex had an issue with the show inset button being clicked on, but the insets weren't showing up.  Make sure that this toggle value keeps up with the display. (done in 1.03E)
 
  
==Squirrel==
+
* Doug wants a more clear warning when masses not fit (most likely due to nonmonotonicity in peak shape) in one spectra or many.
  
=== Extreme Priority===
+
* In Diurnal plots, x axis label is on y axis.
  
* Puneet discovered a small error in the m/z calibration panel.  If he adds a new species but doesn't use it to fit the section of code that deals with the updating of individual graphs throws an error.
+
* Remove any mention of "fitting with SQ baseline subtracted in the panel", and replace with "fitting on top of the SQ baseline" (Jose)
  
* James would like the ability to enlarge the stick integration region for one m/z. Currently the code only allows you to make the stick integration region smaller.  
+
* We need to add camels, dromedaries, and vw "bug" ions to the lists. We need some notation for these ions, let me suggest vw28, vw23, d28, d32, and c28, c32, with the comment column describing what they are. It is important that those are lowercase letters, so people don't confuse these ions with vanadium (V), tungsten (W), and deuterium (D).
  
* Rework the entire m/z calibration fitting routine so that we fit all plausible peaks (getting peak centers and widths) at the beginning.  Then we only need to select which masses to use for the m/z calibration equation.
+
* Jose wants to add other types of errors for folks to plot/use.  If the current list of errors is considered to be a,b,c,d, we also want sqrt(a^2+d^2) and sqrt(a^2+b^2+d^2).  
  
* Add Doug's threshholding diagnostics and correction factor.
+
* In HR_PeakHeights graph perhaps color the individual peak shapes to the colors of the families.
  
* Write intermediate files as compressed HDF files? Check to see if/how this is best done for updating experiments. (jose's suggestion only NEW files are compressed
+
* Begin to implement the HR frag table. W need to introduce the concept of species. For example CO2 would belong partially to an HR-Organic and partially to the HR_air species.  This also involves the use of an HR batch table, In this HR batch table users also their own RIE, CE.  Note that this is a similar but slightly different concept than the family groupings.
  
* The 'resolution' parameters for determining peak integration area need to be printed to the history window whenever we recalc sticks.
+
* Change default behavior so that we have two HR difference sticks one which is found by fitting the raw diff spectra (called HRDiff), and an OpenMinusClosed which is simply the open HR sticks - closed HR sticks.
 +
** Change the default behavior from fitting difference spectra to only fitting open and closed.  James' point at the user's mtg is that we should always be looking at the HR_OpenSticks - HR_ClosedSticks.
 +
** Jose, 4-Apr-09: disagree with not fitting the diff, I think we should keep fitting it as for some peaks it is much more useful. However we should also show the open-closed fits (not just sticks) in the PIKA window. User should be able disable fitting the diff, and to use the diff results, even if the default it to use the open-closed results.
  
* Incorporate errors into time series and average mass spectra plots!
+
* The peak width/shape panel needs tweaks to be more user friendly.  The specific changes have not yet been worked out.
  
* Add text to history window and journal to specify under what conditions sticks have been recalced.
+
* The list of completed programming tasks has been moved to [http://cires.colorado.edu/jimenez-group/wiki/index.php/Sq_Pk_Programming_Completed#Pika http://cires.colorado.edu/jimenez-group/wiki/index.php/Sq_Pk_Programming_Completed#Pika]
  
* In mz_reSizeMzCalWaves()rework it so that it does not nan the Accuracy_XX_yy waves when one fits only one run.
+
=== Important Bugs fixed since last release===
  
* In m/z calibration panel add pause update buttons so in experiments with a large number of runs (Tim O's Ron Brown) one doesn't have to wait forever for the panel to update when fitting only one run.
+
There was an annoying bug that resulted in not being able to choose > 1 mass fragment each for the left and right-side peak shape candidate.  The code was fine in 1.05 and using Igor version < 6.10. But in Igor 6.10 there was a compilation error, and the quick fix for Igor 6.10 caused this behavior.  You can download PK_peakShape_1_06A.ipf at [http://cires.colorado.edu/jimenez-group/ToFAMSResources/ToFSoftware/Downloads/PIKA/IntermediateRelease/PK_peakShape_1_06A.ipf].
 +
It is also downloadable form the main ToF_AMS sofware download site.
  
* Tim O et al made the suggestion for using the daq values as input for the m/z calibration fit
+
==Squirrel==
  
* Error that Samara found when trying to get error matricies... This section of code needs to go in the sq_err_calc function
+
===To Do Priority===
///  DONNA  addthis!
 
variable numCols0 = dimSize(source0, 1)
 
variable numCols1 = dimSize(source1, 1)
 
  
if (numCols0 > numCols1)
+
* The m/z calibration panel is too slow with the individual ion plots for large data sets.
  insertpoints/m=1 numCols1, (numCOls0 - numCols1 ), source1
 
elseif (numCols0 < numCols1)
 
  insertpoints/m=1 numCols0, (numCOls1 - numCols0), source0
 
endif
 
  
 +
* Confirm that the fast mode timing is in time acquiring etc diagnostic waves (Tim O's issue).
  
===To Do Priority===
+
* Add the fast ppt link to the wiki
  
* Incorporate speccorr_list (Batch table) functionality to make species specific time series corrections via batch table.
+
* Change code to automatically set flag for MSSDiff_p to be not in memory if number of runs > x  or in fast mode
  
* Incorporate the CE algorithms as identified by Tim O, Roya, etc
+
* Add the delay at the start/end of run (Tim O's issue) as a diagnostic wave. It is ParVal 88 (89 counting from 1).  For now since it doesn't affect the TimeMSOpen and TimeMSClosed values, I will leave it as an optional parameter.
  
* Make clear the errors are in units of Hz.
+
* If doing an average mass spectra using the AB correction and the AB correction has nans, the result will be nan - warn the user when this happens (ditto for HR).
  
* Add the LS diagnostics to the set of waves that get loaded. (This is finished in 1.43I but needs to be tested using new DAQ)
+
* PToF diurnal time trend graphs or daily profiles?
  
* Manjula thought that when the user puts more hdf files in the data folder, and presses the Get Index button, that the code does not handle new v/w switching and mode changes well. (For example, at first the DAQ is set up to do all v then does v/w switching.)  Donna's comment: Right now I cannot reproduce this problem but there was a problem with the diagnostic plot not updating correctly, and this was fixed in 1.43F.
+
* The average mass spec gives different values in the legend depending on whether you truncate sticks to zero or not. - it should be the same!
  
* Mike's pcurser in todo wave names
+
* Save PToF DC marker region 1 and 2
  
* Mike Q's issue with m/z calibration with fast mode data
+
* Deal with doing Avg PToF for DC marker examine plot
  
* Pre-process: when recalculating sticks with new m/z parameters, the error related to some m/z parameters being NaNs often shows up.  A few times at the beginning, and then halfway through.  Is there any way to deal with this more effectively? (done but not fully tested)
+
* Review Batch table for PAHs
  
* In the baseline subpanel, make the mass defect default values more clear.
+
* Add code to allow normalization of spectra
  
* In some data sets, many small intermediate files get written instead of a few big ones. (Some of Mike C's Arctas)
+
* m/z Cal
 +
** Change the default of the m/z cal ions, to include more ions than just low m/z and W+ (John S)
 +
** ability to fix exponent in m/z cal (John S)
 +
** add warning if exponent is off by more than 0.1% from 0.5 (per John S)
  
* In the preprocess step, make clear the distinction between using DAQ sticks and recalcing sticks
+
* In the Baseline panel, average raw spectra section, we need a way to make sure spectra of different ionization types are not averaged together for the display (currently it only distinguishes between v and w).
  
* In the modify SI table, also include ionization and tof type waves so users can more easily see how to change SI values.
+
* In the Baseline panel, the display shows the stick complement region smoothed twice. (it is fine for the calculation of sticks).
  
* Deal with Helsinki/Doug's unique PToF data (grouping last 3 of 4 choppers).
+
* The user has the ability to remove entirely a baseline region between two amus and thus grouping two m/z values into one wide stick (Roya's issue).  A warning should pop up.
  
* In average mass spec plots, review how negative values can be 'hidden' by other traces.
+
* Add Doug's threshholding diagnostics and correction factor.
  
* In average mass spec plots, a better system for expanding/shrinking is needed.
+
* Heringa Maarten brought up the issue about smoothing the AB correction factor when users are doing V/W mode switching. The current code does not smooth across V mode runs when users alternate between v and w mode.  Some code was inserted in the squirrel panel 1.46D, but has not been implemented into the panel.  There needs to be a new field in the AB corrections section of the panel to prevent smoothing across i.e. V-mode runs when adjacent V mode runs are too far apart in time space.
  
* We have problems with averaging PToF runs when the PToF settings change between runs.  Have squirrel automatically create different todo waves for each PToF setting.
+
* Tim O really want to have PToF min and max size regions for PToF operations.
  
* Bug found with Sanna: when using a user defined time base but minutes = 0, we get an out of memory error.
+
* Incorporate the CE algorithms as identified by Tim O, Roya, etc
  
* Review existing code that deals with fast mode data.
+
* Implement Mike Cubison's suggestion of the use of pcurser in creating new todo waves.
  
* change the field analysis to warn users to check for large CO influence in ab correction; provide  
+
* Change the field analysis to warn users to check for large CO influence in ab correction; provide a sample pre and post AB correction from Tim to demonstrate
a sample pre and post AB correction from Tim to demonstrate
 
  
* In average mass spec graph, check the display of negative values. (Doug thought that it wasn't working right.)
+
* Add somewhere in the help/faq something about the averaging of raw spectra and the units conversion (Donna - see James email of 11/2007).
  
* Load in menu information from DAQ hdfs and make menu info more readily available to user.  
+
* Doug wants the diagnostic of Closed/Diff sticks.  Anything that sticks out as being very high has a different source (CO2, O, K, C).
  
* In frag check tab we need a button to update plots instead of replotting every time.
+
* Rework the entire m/z calibration fitting routine so that we fit all plausible peaks (getting peak centers and widths) at the beginning.  Then we only need to select which masses to use for the m/z calibration equation.
  
* In frag diagnostic plots we need to change the 'display gaps' setting.
+
* In m/z calibration panel, add vertical red lines for gaussian peak centers. Change black lines to gray.  When saving a copy of the m/z calibration settings, write a message to the history window.
  
* In Dva popped table we should also see run numbers and whether or not a run has PToF data.
+
* Manjula had the fantastic idea of including a > and < button when looking at individual m/z calibration peaks (could also be used for individual peak width peaks).
  
* Doug really likes to have time series graphs be such that grids are on midnight of every day, and labels have day of week inserted.
+
* In the m/z calibration panel, think about the ability to tweak settings in conditions of high loadings (Mike C).
  
* We need to be able to select some ions to be used in m/z cal and peak shape for V or W only.
+
* Add the ability to use parentheses as grouping symbols in the todo runs control (i.e. "(todo1 or todo1) and todo3" )
  
* When doing an m/z cal fitting, put runs with bad fits into a separate todo wave.
+
* A better system for upgrading experiments is needed (stand-alone upgrade ipf).
  
* In the m/z calibration panel, think about the ability to tweak settings in conditions of high loadings (Mike C).
+
* Redo download web page (removing old copies, etc).
  
* Add somewhere in the help/faq something about the averaging of raw spectra and the units conversion (Donna - see James email of 11/2007).
+
===To Do (Less Urgent)===
  
* Achim wants the ability to calculate sticks beyond 1000m/z for SP2.
+
* Add some sort of pre-compiler directive that helps users that don't have the hdf5 xop loaded.
  
* From James: If you get it to do a batch of diurnal plots, it calculates all of the time series afresh before plotting each graph. It's just a function call on the wrong side of a for statement, so it should be pretty trivial to fix. It also plots a graph of the time series each time around as well, which is really annoying because it ends up creating loads of excess graphs.
+
* Tim O wants the capability to write the frag matricies for import into the DAQ.
  
* Doug wants the diagnostic of Closed/Diff sticks.  Anything that sticks out as being very high has a different source (CO2, O, K, C).
+
* Doug really likes to have time series graphs be such that grids are on midnight of every day, and labels have day of week inserted.
  
* In Tim's Ron Brown data set the m/z calibration panel updates so slow (91,000) runs because the right side plots update also.
+
* In some data sets, many small intermediate files get written instead of a few big ones. (Some of Mike C's Arctas)
 
 
* When overwriting a todo wave the message that gets printed to history can be incorrect - it says that the current todo wave was overwritten.
 
  
* In Tim's Ron Brown data it might be good to write MSSDiff_p matrix to memory to free up memory - make this an option?
+
* Add a note to the help web site that tells what the blue/red progress bars mean.
  
===To Do (Less Urgent)===
+
* Leah noticed that when doing a recursion check when the frag waves are big (5000 m/z)her computer slowed waaay down.  Revisit this functionality for big frag waves.
  
* Deal with the popup menus that deal with long strings by using 'reflection'.
+
* We may want to help folks who want to combine several squirrel experiments in cases, for example, when users have a 2 month campaign. Create a meta-squirrel?
  
* Doug wants to rename 'AB reference runs' to something else.
+
* Some want the ability to 'shut off' the automatic coloring that happens with a MS time series graph, for example.
  
* Make squirrel handle situations whereby the sEI is not really sEI but a different menu.
+
* Add the ability to do weekday/weekend diurnal time series plots (Folks can do this right now by making todo waves that reflect weekday/weekend periods.  Still, it would be a convenience.
  
* In m/z calibration panel we need a readout that tells ionization type (sEI, EI) as well as ToF type (v/w)
+
* Include Frank D's method for deriving detection limit for CToFs? http://direct.sref.org/amt/2009-2-33
  
* In baseline panel we need a readout that tells ionization type (sEI, EI) as well as ToF type (v/w)
+
* Deal with the popup menus that deal with long strings by using 'reflection'.
  
* Heikki had out-of-memory issues with the organic matricies.
+
* Doug wants to rename 'AB reference runs' to something else.
  
 
* Make more consistent the todo wave creation scheme whereby users can input "todowave and not 1xxx and not 2yyy" for the todo wave formula
 
* Make more consistent the todo wave creation scheme whereby users can input "todowave and not 1xxx and not 2yyy" for the todo wave formula
  
* Change PToF code so that users have an option to plot the legend (for size distrib graphs).
+
* Change PToF code so that users have an option to plot the legend (for size distribution graphs).
  
 
* For PToF size distributions, often the size range extends to smaller values than are useful.  Add controls so that user can quickly zoom in and out of interested size ranges.
 
* For PToF size distributions, often the size range extends to smaller values than are useful.  Add controls so that user can quickly zoom in and out of interested size ranges.
 
* In the baseline panel allow uses to go higher than m/z 500.
 
 
* Should we allow users to enter a negative value for the PToF vl parameter?
 
  
 
* Add the ability to calculate diameter mean and median in PToF data (Manjula).
 
* Add the ability to calculate diameter mean and median in PToF data (Manjula).
  
* Occasionally after preprocessing, the status bar ends saying “Estimating space requirements” rather than “Done”
+
* Occasionally after preprocessing, the status bar ends saying “Estimating space requirements” rather than “Done” (Donna can't reproduce this)
  
 
* For DC marker corrections, Manjula wants to be able to enter nitrate, and then have squirrel figure out what m/zs this corresponds to.
 
* For DC marker corrections, Manjula wants to be able to enter nitrate, and then have squirrel figure out what m/zs this corresponds to.
 
* In average mass spec graph, when checking linear scale have the default go to 0.
 
 
* In average mass spec graph, perhaps add a 'magnification' drop down menu - x 2, x 10, x 25, etc.
 
 
* Doug really likes for tables to have columns be the minimum width that is sensible.
 
  
 
* Re-look at IE/AB calculations (Donna - see Tim O's email of Jan 2008).
 
* Re-look at IE/AB calculations (Donna - see Tim O's email of Jan 2008).
Line 259: Line 245:
  
 
* In m/z calibration panel, check the possible bug when interpolating across a todo wave.  
 
* In m/z calibration panel, check the possible bug when interpolating across a todo wave.  
 
* Ask user to save experiment before blacklisting and/or indicate how to unblacklist
 
 
* In Alice's diagnostic plots, change legends that give integer m/z values to molecular species.
 
  
 
* Review todo wave name length limitations.
 
* Review todo wave name length limitations.
Line 271: Line 253:
  
 
* Incorporate some peak finding code as per Jesse's request.
 
* Incorporate some peak finding code as per Jesse's request.
 
* Deal with Fast runs not finishing a fast mode cycle.
 
 
* Update squirrel web site.
 
 
* From Ken: In the baseline fitting panel make the main plot in the popped window automatically scale the x axis to that in the main window. 
 
  
 
* From Ken: In the baseline fitting panel, when scrolling through the baseline fits for all runs in a todo list, add the ability to pause on a chosen run.  It would also be great to select the direction in which the run baselines are scrolled - forward or backward.
 
* From Ken: In the baseline fitting panel, when scrolling through the baseline fits for all runs in a todo list, add the ability to pause on a chosen run.  It would also be great to select the direction in which the run baselines are scrolled - forward or backward.
  
* Allow users to go > 500m/z.
+
* Create Frag table default fragment text waves (Donna - this would would be good for the manual)
 
 
* Create Frag table default fragment text waves (Donna would be good for the manual)
 
  
* When a user enters runs and the first is > than the last, 45-40, a better error message should be generated (for todo wave creation).
+
* Tim O's issue with somehow getting the squirrel_index matrix messed up and getting the stick matrix data set being as wide (columns) as the raw spectra matrices. (Donna - is this replicable?)
 
 
* Tim O's issue with somehow getting the squirrel_index matrix messed up and getting the stick matrix data set being as wide (columns) as the raw spectra matricies. (Donna - is this replicable?)
 
  
 
* Review the use of t_series_old
 
* Review the use of t_series_old
 
* Review the use of custom time series - are sanity checks in place?
 
  
 
* Review the use of the todo graph.... add checkboxes to remove todo waves?
 
* Review the use of the todo graph.... add checkboxes to remove todo waves?
  
 
* Add code that calculates the mean/median for size distributions (Manjula)
 
* Add code that calculates the mean/median for size distributions (Manjula)
 
* Add code that somehow simply tells the user whether the sticks were recalced or not, and if recalced, the parameters used.
 
  
 
* Add an upper limit to when we generate normalization factors (current usage is to have user's create custom size interval).
 
* Add an upper limit to when we generate normalization factors (current usage is to have user's create custom size interval).
  
* When a user has applied an AB correction and a new ion_eff has been calculated, then adds new hdf files (and indexes, etc) the ion_eff wave may not grow to the needed size. This adding more hdf files scenario could also cause problems when new ionization types (sEI) may appear(Donna: email from Alberto Presto July 2008 - he used sEI 'mode' when it wasn't soft EI, he just wanted to clearly delineate modes, and we now have sample types to address this).
+
* Suggestion from Tim O: Since everyone needs to do size calibrations, can we get the fitting function into the squirrel code for use?  Ideally, we would have two functions, one to fit velocity vs dva data (typical process for getting size calibration parameters) and one that takes the parameters and calculates the dva from velocity (i.e. same equation, just solved for dva rather than velocity).  I can provide you with both, if you wish.  I keep finding myself going back to either retype these in all of the time or copying for older *.pxp files.
  
* Add 2 new ionization types to code (see Joel's email of March 2008).
+
* Achim wants the ability to calculate sticks beyond 1000m/z for SP2. (It is a simple code change; Achim knows how to do it.  It is not clear how this could be incorporated into squirrel for other users.)
  
* Amewu gets (1) strange wave stats error in baseline panel (2) strange interpolate2 after pre-processing and noticed (3) Frag checks color-by-f(z) problems.
+
===To Discuss===
  
===To Discuss===
+
* Leah mentioned that in the legend for the average mass spectra plots the speciated total values do not use the RIE for each species.  They are just the nitrate equivalent sum. Should we change the total values in the legend to reflect the species RIE values?  Perhaps just make it more obvious in the legend? Similarly, when one truncates the sticks to zero, should the values in the legend be the sum of the truncated or the pre-truncated values?
  
 
* Normalize w mode to v mode - One diagnostic:the ratio of v and w sticks with the x axis as m/z.
 
* Normalize w mode to v mode - One diagnostic:the ratio of v and w sticks with the x axis as m/z.
Line 315: Line 283:
 
** Frag_SO3 and H2SO4 are kept in Squirrel for reference and if someone wants to put them back to use, but not used by default
 
** Frag_SO3 and H2SO4 are kept in Squirrel for reference and if someone wants to put them back to use, but not used by default
  
* change frag_organics as per Allison's paper
+
* Change frag_organics as per Allison's paper
  
* sq_verifyTodoForPToF function aborts in case where every run in ToDo wave has PTOF. Currently commentize the abort call to get SQ to pre-process. MJC 1/14/09
+
* Should we allow users to enter a negative value for the PToF vl parameter? (Liz, John J)
  
===Done===
+
* Should I add PAH to the default list of species? (i.e. in the MS average graphs)
  
* Check the labels for graphs generated using x vs tof and dxdlogdp (Done in 1.43I).
+
===Completed===
* Possibly rename the checks to be done before preprocessing as 'stick adjustments'. (Done in 1.43I)
+
 
* Change defaults in Frag checks tab to be 'all' and colored by timewave.
+
* Incorporate John S's method for improving m/z calibration using PFT (or PFK) (via a constant power value) 1.49E.
* Fix bug that pops up in Frag checks plots. (Done in 1.43I)
+
 
* Make sure that when doing DC marker corrections squirrel changes todo wave to be todo wave AND allPToF (Donna note:  This was done primarily to avoid creation of blanks in the prepocess step but was also added in the corrections tab, done in 1.43I).
+
* Tim O made a good suggestion that we optionally kill some waves in the ms_mats and HR_ms_mats folder when we are done with them.  This interface will likely look like a checkbox in the misc tab. (This is a button in the misc tab.) 1.49E
* Add checkbox in Misc - graphs section that sets the default displays to not show gaps. (Done in 1.43I)
+
 
* When preprocessing PToF sticks generate a todo wave that has only PToF runs in it instead of generating dire warning. (Done in 1.43I)
+
* In m/z calibration window, include ability to nan parameters only in runs in a todo wave.
* Change the preprocess checkbox settings so that the default is to apply dc markers. (Done in 1.43I)
+
 
* An error pops up when trying to creat normalization factors for user defined species (As in Pb for Leah). (The normalization routine was overhauled in 1.43G and this error should no longer appear.)
+
* In the m/z calibration panel we should use the term 'resolving power' instead of 'resolution'.
* A general warning should pop up when users try to create todo wave names with > x characters. (Done in 1.43E)
+
 
* Add button to generate diagnostic plot if user killed it. (Done in 1.43I)
+
* Allow for m/z fitting of PToF data
* Change default for average mass spec so that only sticks (not sticks + raw) are calculated. (Done in 1.43I)
+
 
* Bug found by Mike Q about checking modifications of all frag waves, not just species selected in average mass spec (fixed in 1.43C-ish)
+
* Paul W made the suggestion of naming the intermediate files using all or part of the same name as the experiment (instead of the AMS_intermediate_xx.hdf naming scheme).
* In the m/z calibration panel, make the live option checked automatically when viewing one run. (Done in 1.43I)
+
 
* Bug found by Carly whereby the MS time series for the species all can replace the 'all' todo wave (Done in 1.32I)
+
* Redo the Frag Corrections section to have just one big panel with pop-able graphs.
* For PToF size distributions, the total loading for each species should be displayed (somewhat similar to the legends that get displayed with average mass spec). (Total MS and normalization factors are now printed to history - Done in 1.43I)
+
 
* When an intermediate file was not accessed successfully change the code from the existing error message that gets printed to history, to an abort command (Manjula). Done in 1.43I
+
* In the baseline panel the setting the R0 etc values to default button does not work. (Fixed in 1.49E)
 +
 
 +
* The names for the average raw mass spec should be changed to not have the "_all" suffix. (done in 1.47I)
 +
 
 +
* Add a button to the misc tab for dumping MSSDiff_p to intermediate files (Tim O Ron Brown data). (done in 1.47I)
 +
 
 +
* Users may often run into out of memory issues when performing the Export Matricies in the PToF tab, because results will be #runs * #mz * #sizebins big.  Perhaps there should be an option for exporting these matricies, but cutting things off a a max m/z value (150ish?) (done in 1.47I)
 +
 
 +
* In the preprocess step, make clear the distinction between using DAQ sticks and recalcing sticks.(fixed in 1.47I)
 +
 
 +
* Appending one size distribution on top of another (with a different todo wave) does not work.(fixed in 1.47I)
 +
 
 +
* In the modify SI table, perhaps include the TofTypeVKey and TofTYpeWKey waves to help folks know that they are available for use.(done in 1.47I)
 +
 
 +
* In baseline panel, when averaging many spectra, if run num > 1e6, temporary waves have an E+ in them (Liz Rainer data) (done in 1.47I).
 +
 
 +
* In the MS tab, when one chooses to update an average mass spec plot, the legend should update (done in 1.47I).
 +
 
 +
* In the MS tab, perhaps move all the average mass spec controls to the left, and the buttons to the right so that users don't hit one when they mean to hit the other.
 +
 
 +
* Tim O's issue with HDF file generating errors for not being able to append to hdf files. The code needs to add the checking of errors generated during the routine closing of hdf files (done in 1.47I).
 +
 
 +
*In pre-processing section, change the Diff Sticks = Open Sticks - Closed Sticks to that most users don't use it (Leah W) (done in 1.47I)
 +
 
 +
* The list of completed programming tasks has been moved to [http://cires.colorado.edu/jimenez-group/wiki/index.php/Sq_Pk_Programming_Completed#Squirrel http://cires.colorado.edu/jimenez-group/wiki/index.php/Sq_Pk_Programming_Completed#Squirrel]
  
 
==Time Trace==
 
==Time Trace==
Line 348: Line 340:
 
==LS==
 
==LS==
  
===Priority===  
+
=== To Do ===  
  
 +
Get the firstBeta release out.
  
 
=== To Do ===
 
 
Wait for requests and updates from Eben, Tim, Jay, etc.
 
  
 
==EC==
 
==EC==
  
===Priority===  
+
===To Do===  
 
* Wait for request from Delphine - nothing to do yet.
 
* Wait for request from Delphine - nothing to do yet.

Latest revision as of 15:19, 19 May 2011

APES

To Do

  • Add the ability to do EA on non HROrg species.
  • Add more web documentation, with specific examples of mass calculations.

Pika

To Do Priority

  • Do some sort of smoothing for the peak shape when user uses different left/right parameters.
  • The HR ion mass calculator, Query tool seems to need some sort of initialization before it works.
  • Remove use of HR_specName_list because it is redundant
  • for PMF prep error panel:
    • Jose wants the running median in the time series of the error and noise times series for individual sticks.
    • Do the time series plots differently so that users don't have to change axes
    • Graphs for isotopes hide isotopes
    • In prepping for PMF, nan isotopes
    • Add spike removal similar to what Qi Zhang did?
  • Ask J if we have volunteer for the keeping of the HR list
  • Generate NeighboringHRIonSignal new type of Pika error
  • Pika fitting graph - make it so that the user can resize
  • Doug wants H2O, OH, O and CO to be colored as CO2 in mass spec Org family plots.
  • Create an HR frag check panel
  • Add ability to plot in time series closed baseline sticks.
  • Check that m/z calibration panel works if one run isn't done first.
  • Add K, j41K to default list of ions to fit
  • For the time-varying peak width, have a better errror if the user doesn't select an HR ion that was used.
  • Remove N3 from default list. (Done?)
  • Add code to require and check that HR ions be formatted in a certain way - i.e. disallow H7C5 and require C5H7.
  • Change code so that for todo waves fit with different pw and ps but with the same set of HR ions, one can nicely generate time series or average mass spectra. The code should check that the set of HR ions are the same for different todo waves. If they are the same, then one should be able to proceed.
  • Add code to check that all the HR ions within each frag table element is fit. (Note: this is hard to do because of the recursive nature of frag entries!)
  • Make a Pika-specific airbeam correction?
  • Implement the "resolution" fitting function for the peak width panel as default (Pete's suggestion)
  • Allow including other families (such as SO, NO) in elemental analysis along with HROrg (Puneet & Doug)
  • Tim O made a good suggestion for instances where peaks are not fit (resulting in nans). Perhaps one could compare the squirrel signal at an integer m/z, and if the value is sufficiently small, (the raw spectra shows noise), all the peak height values could be set to 0.
  • We may want to allow a 'smoothly varying' peak width.
  • Change all peak shape candidates to have a 0 entry in the left- and right-most value so that 'peak-shape type baselines' dont' get extended beyond +- 7 PW values.
  • Fully fold in Mike Cubison's sensitivity analysis code.
  • Many parameters panel
    • add small raw spectra insets to left and right
    • add graph showing spectra-like data with window highlighting where you are
    • have run numbers update with cursor move
  • Add ability to duplicate PeakHeights graph and functionality
  • In the m/z calibration panel, currently the width and accuracy vs m/z graphs don't show a summary of all the runs. E.g. the summary of all the peak widths for all the runs with error bars in the peak shape panel very nicely summarizes this information.
    • (Jose) This could be done with a radio button on top of the graph that selects SR/AR (meaning single run / all runs)

To Do (Less Urgent)

  • In HR_peakHeights_gr, change the color of the residuals to be different from the red, orange, brown. Also add squirrel integration regions. Also, add a checkbox to add remove black lines between raw data points.
  • Perhaps shorten the names of some of the new error estimates (Pete)
  • For Pika, we need to incorporate some sort of algorithm that sets the minimum error to be 1 ion.
  • In average mass spec plots (including the 5-graph panel and the elemental analysis) Doug wants a way to 'move' isotopic child HR ions to their parent ion (i.e. j13C would be moved and grouped with the HR ion C.)
  • From the HR_peakHeights_gr, when adding a brand new mass to the table, add a note in the history. Also add a message when adding and removing masses to fit?
  • m/z calibration and masses - We need to subtract the mass of an electron from all our masses. Note from Donna: I want to leave this decision up to the HR list committee (Puneet, Niall, Delphine)
  • Generate 'Neil's graph' whereby we plot as sticks from zero amount of C and H mass as a function of number of Oxygens. Do a similar thing for the number of C's (the amount of H and Os and a function of number of Cs).
  • In PeakWidth/Shape panel, add ability to not do average PW fits using the std dev as weights
  • In the Graph 5 summaries, include one 'bar' type graph showing the fraction of each family to the total.
  • Pika on PToF spectra (gasp!)
  • There is a need to consolidate the three sets of m/z lists that exist into a single one. We currently have the list of m/z possibly used in fits,(1) ones actually selected for HR sticks (2) list of m/z used for m/z calibration, and (3) the list of isolated ions. Each list is a subset of the previous one, and we can work with a single big list, and a series of masks to select / deselect the various m/z for the different purposes.
  • If user only does the m/z calibration and does not play with the HR panel, the code calculating the HR sticks may go awry (maybe - I need to check).
  • Think about NH4 measure vs predicted and RIE for NH4 (Donna: Jose's July 2008 email).
  • Make clear what limitations there are about the total number of masses that can be fit at any m/z value.

To Discuss

  • Errors for input to PMF.

Done

Done in 2010 Users Mtg release:

  • Doug wants a more clear warning when masses not fit (most likely due to nonmonotonicity in peak shape) in one spectra or many.
  • In Diurnal plots, x axis label is on y axis.
  • Remove any mention of "fitting with SQ baseline subtracted in the panel", and replace with "fitting on top of the SQ baseline" (Jose)
  • We need to add camels, dromedaries, and vw "bug" ions to the lists. We need some notation for these ions, let me suggest vw28, vw23, d28, d32, and c28, c32, with the comment column describing what they are. It is important that those are lowercase letters, so people don't confuse these ions with vanadium (V), tungsten (W), and deuterium (D).
  • Jose wants to add other types of errors for folks to plot/use. If the current list of errors is considered to be a,b,c,d, we also want sqrt(a^2+d^2) and sqrt(a^2+b^2+d^2).
  • In HR_PeakHeights graph perhaps color the individual peak shapes to the colors of the families.
  • Begin to implement the HR frag table. W need to introduce the concept of species. For example CO2 would belong partially to an HR-Organic and partially to the HR_air species. This also involves the use of an HR batch table, In this HR batch table users also their own RIE, CE. Note that this is a similar but slightly different concept than the family groupings.
  • Change default behavior so that we have two HR difference sticks one which is found by fitting the raw diff spectra (called HRDiff), and an OpenMinusClosed which is simply the open HR sticks - closed HR sticks.
    • Change the default behavior from fitting difference spectra to only fitting open and closed. James' point at the user's mtg is that we should always be looking at the HR_OpenSticks - HR_ClosedSticks.
    • Jose, 4-Apr-09: disagree with not fitting the diff, I think we should keep fitting it as for some peaks it is much more useful. However we should also show the open-closed fits (not just sticks) in the PIKA window. User should be able disable fitting the diff, and to use the diff results, even if the default it to use the open-closed results.
  • The peak width/shape panel needs tweaks to be more user friendly. The specific changes have not yet been worked out.

Important Bugs fixed since last release

There was an annoying bug that resulted in not being able to choose > 1 mass fragment each for the left and right-side peak shape candidate. The code was fine in 1.05 and using Igor version < 6.10. But in Igor 6.10 there was a compilation error, and the quick fix for Igor 6.10 caused this behavior. You can download PK_peakShape_1_06A.ipf at [1]. It is also downloadable form the main ToF_AMS sofware download site.

Squirrel

To Do Priority

  • The m/z calibration panel is too slow with the individual ion plots for large data sets.
  • Confirm that the fast mode timing is in time acquiring etc diagnostic waves (Tim O's issue).
  • Add the fast ppt link to the wiki
  • Change code to automatically set flag for MSSDiff_p to be not in memory if number of runs > x or in fast mode
  • Add the delay at the start/end of run (Tim O's issue) as a diagnostic wave. It is ParVal 88 (89 counting from 1). For now since it doesn't affect the TimeMSOpen and TimeMSClosed values, I will leave it as an optional parameter.
  • If doing an average mass spectra using the AB correction and the AB correction has nans, the result will be nan - warn the user when this happens (ditto for HR).
  • PToF diurnal time trend graphs or daily profiles?
  • The average mass spec gives different values in the legend depending on whether you truncate sticks to zero or not. - it should be the same!
  • Save PToF DC marker region 1 and 2
  • Deal with doing Avg PToF for DC marker examine plot
  • Review Batch table for PAHs
  • Add code to allow normalization of spectra
  • m/z Cal
    • Change the default of the m/z cal ions, to include more ions than just low m/z and W+ (John S)
    • ability to fix exponent in m/z cal (John S)
    • add warning if exponent is off by more than 0.1% from 0.5 (per John S)
  • In the Baseline panel, average raw spectra section, we need a way to make sure spectra of different ionization types are not averaged together for the display (currently it only distinguishes between v and w).
  • In the Baseline panel, the display shows the stick complement region smoothed twice. (it is fine for the calculation of sticks).
  • The user has the ability to remove entirely a baseline region between two amus and thus grouping two m/z values into one wide stick (Roya's issue). A warning should pop up.
  • Add Doug's threshholding diagnostics and correction factor.
  • Heringa Maarten brought up the issue about smoothing the AB correction factor when users are doing V/W mode switching. The current code does not smooth across V mode runs when users alternate between v and w mode. Some code was inserted in the squirrel panel 1.46D, but has not been implemented into the panel. There needs to be a new field in the AB corrections section of the panel to prevent smoothing across i.e. V-mode runs when adjacent V mode runs are too far apart in time space.
  • Tim O really want to have PToF min and max size regions for PToF operations.
  • Incorporate the CE algorithms as identified by Tim O, Roya, etc
  • Implement Mike Cubison's suggestion of the use of pcurser in creating new todo waves.
  • Change the field analysis to warn users to check for large CO influence in ab correction; provide a sample pre and post AB correction from Tim to demonstrate
  • Add somewhere in the help/faq something about the averaging of raw spectra and the units conversion (Donna - see James email of 11/2007).
  • Doug wants the diagnostic of Closed/Diff sticks. Anything that sticks out as being very high has a different source (CO2, O, K, C).
  • Rework the entire m/z calibration fitting routine so that we fit all plausible peaks (getting peak centers and widths) at the beginning. Then we only need to select which masses to use for the m/z calibration equation.
  • In m/z calibration panel, add vertical red lines for gaussian peak centers. Change black lines to gray. When saving a copy of the m/z calibration settings, write a message to the history window.
  • Manjula had the fantastic idea of including a > and < button when looking at individual m/z calibration peaks (could also be used for individual peak width peaks).
  • In the m/z calibration panel, think about the ability to tweak settings in conditions of high loadings (Mike C).
  • Add the ability to use parentheses as grouping symbols in the todo runs control (i.e. "(todo1 or todo1) and todo3" )
  • A better system for upgrading experiments is needed (stand-alone upgrade ipf).
  • Redo download web page (removing old copies, etc).

To Do (Less Urgent)

  • Add some sort of pre-compiler directive that helps users that don't have the hdf5 xop loaded.
  • Tim O wants the capability to write the frag matricies for import into the DAQ.
  • Doug really likes to have time series graphs be such that grids are on midnight of every day, and labels have day of week inserted.
  • In some data sets, many small intermediate files get written instead of a few big ones. (Some of Mike C's Arctas)
  • Add a note to the help web site that tells what the blue/red progress bars mean.
  • Leah noticed that when doing a recursion check when the frag waves are big (5000 m/z)her computer slowed waaay down. Revisit this functionality for big frag waves.
  • We may want to help folks who want to combine several squirrel experiments in cases, for example, when users have a 2 month campaign. Create a meta-squirrel?
  • Some want the ability to 'shut off' the automatic coloring that happens with a MS time series graph, for example.
  • Add the ability to do weekday/weekend diurnal time series plots (Folks can do this right now by making todo waves that reflect weekday/weekend periods. Still, it would be a convenience.
  • Deal with the popup menus that deal with long strings by using 'reflection'.
  • Doug wants to rename 'AB reference runs' to something else.
  • Make more consistent the todo wave creation scheme whereby users can input "todowave and not 1xxx and not 2yyy" for the todo wave formula
  • Change PToF code so that users have an option to plot the legend (for size distribution graphs).
  • For PToF size distributions, often the size range extends to smaller values than are useful. Add controls so that user can quickly zoom in and out of interested size ranges.
  • Add the ability to calculate diameter mean and median in PToF data (Manjula).
  • Occasionally after preprocessing, the status bar ends saying “Estimating space requirements” rather than “Done” (Donna can't reproduce this)
  • For DC marker corrections, Manjula wants to be able to enter nitrate, and then have squirrel figure out what m/zs this corresponds to.
  • Re-look at IE/AB calculations (Donna - see Tim O's email of Jan 2008).
  • In the diagnostic plots, perhaps the PToF airbeam wave should be nanned whenever the run doesn't have PToF data.
  • In m/z calibration panel, check the possible bug when interpolating across a todo wave.
  • Review todo wave name length limitations.
  • In the m/z calibration panel, make more clear what the nan param button does.
  • From Tim O:During manual (F3) saves, the mass spectral data (e.g. MSOpen_V, MSSOpen_V, etc.) are saved as simple data arrays with the m/z in the rows direction. During autosaving, even if only for one run, these waves are always saved with the m/z in the column (run number in the row dimesion). It turns out that Squirrel can read and process either, just not at the same time. Thus, while he can process the data separately, he cannot ask Squirrel to load and process autosaved data with nonautosaved data interspersed.
  • Incorporate some peak finding code as per Jesse's request.
  • From Ken: In the baseline fitting panel, when scrolling through the baseline fits for all runs in a todo list, add the ability to pause on a chosen run. It would also be great to select the direction in which the run baselines are scrolled - forward or backward.
  • Create Frag table default fragment text waves (Donna - this would would be good for the manual)
  • Tim O's issue with somehow getting the squirrel_index matrix messed up and getting the stick matrix data set being as wide (columns) as the raw spectra matrices. (Donna - is this replicable?)
  • Review the use of t_series_old
  • Review the use of the todo graph.... add checkboxes to remove todo waves?
  • Add code that calculates the mean/median for size distributions (Manjula)
  • Add an upper limit to when we generate normalization factors (current usage is to have user's create custom size interval).
  • Suggestion from Tim O: Since everyone needs to do size calibrations, can we get the fitting function into the squirrel code for use? Ideally, we would have two functions, one to fit velocity vs dva data (typical process for getting size calibration parameters) and one that takes the parameters and calculates the dva from velocity (i.e. same equation, just solved for dva rather than velocity). I can provide you with both, if you wish. I keep finding myself going back to either retype these in all of the time or copying for older *.pxp files.
  • Achim wants the ability to calculate sticks beyond 1000m/z for SP2. (It is a simple code change; Achim knows how to do it. It is not clear how this could be incorporated into squirrel for other users.)

To Discuss

  • Leah mentioned that in the legend for the average mass spectra plots the speciated total values do not use the RIE for each species. They are just the nitrate equivalent sum. Should we change the total values in the legend to reflect the species RIE values? Perhaps just make it more obvious in the legend? Similarly, when one truncates the sticks to zero, should the values in the legend be the sum of the truncated or the pre-truncated values?
  • Normalize w mode to v mode - One diagnostic:the ratio of v and w sticks with the x axis as m/z.
  • Change frag table of sulfate according to suggestion from Ann
    • Current frag_sulphate -> frag_sulphate_old
    • New frag_sulphate doesn't depend on frag_SO3 and frag_H2SO4 (Ann will wori up this new table)
    • Frag_SO3 and H2SO4 are kept in Squirrel for reference and if someone wants to put them back to use, but not used by default
  • Change frag_organics as per Allison's paper
  • Should we allow users to enter a negative value for the PToF vl parameter? (Liz, John J)
  • Should I add PAH to the default list of species? (i.e. in the MS average graphs)

Completed

  • Incorporate John S's method for improving m/z calibration using PFT (or PFK) (via a constant power value) 1.49E.
  • Tim O made a good suggestion that we optionally kill some waves in the ms_mats and HR_ms_mats folder when we are done with them. This interface will likely look like a checkbox in the misc tab. (This is a button in the misc tab.) 1.49E
  • In m/z calibration window, include ability to nan parameters only in runs in a todo wave.
  • In the m/z calibration panel we should use the term 'resolving power' instead of 'resolution'.
  • Allow for m/z fitting of PToF data
  • Paul W made the suggestion of naming the intermediate files using all or part of the same name as the experiment (instead of the AMS_intermediate_xx.hdf naming scheme).
  • Redo the Frag Corrections section to have just one big panel with pop-able graphs.
  • In the baseline panel the setting the R0 etc values to default button does not work. (Fixed in 1.49E)
  • The names for the average raw mass spec should be changed to not have the "_all" suffix. (done in 1.47I)
  • Add a button to the misc tab for dumping MSSDiff_p to intermediate files (Tim O Ron Brown data). (done in 1.47I)
  • Users may often run into out of memory issues when performing the Export Matricies in the PToF tab, because results will be #runs * #mz * #sizebins big. Perhaps there should be an option for exporting these matricies, but cutting things off a a max m/z value (150ish?) (done in 1.47I)
  • In the preprocess step, make clear the distinction between using DAQ sticks and recalcing sticks.(fixed in 1.47I)
  • Appending one size distribution on top of another (with a different todo wave) does not work.(fixed in 1.47I)
  • In the modify SI table, perhaps include the TofTypeVKey and TofTYpeWKey waves to help folks know that they are available for use.(done in 1.47I)
  • In baseline panel, when averaging many spectra, if run num > 1e6, temporary waves have an E+ in them (Liz Rainer data) (done in 1.47I).
  • In the MS tab, when one chooses to update an average mass spec plot, the legend should update (done in 1.47I).
  • In the MS tab, perhaps move all the average mass spec controls to the left, and the buttons to the right so that users don't hit one when they mean to hit the other.
  • Tim O's issue with HDF file generating errors for not being able to append to hdf files. The code needs to add the checking of errors generated during the routine closing of hdf files (done in 1.47I).
  • In pre-processing section, change the Diff Sticks = Open Sticks - Closed Sticks to that most users don't use it (Leah W) (done in 1.47I)

Time Trace

Not Urgent

  • Make the quick view program instructions more clear.


LS

To Do

Get the firstBeta release out.


EC

To Do

  • Wait for request from Delphine - nothing to do yet.