ToF-AMS HR Analysis Toolkit v1.25 August 1, 2021 release Update since ToF-AMS Analysis Toolkit v1.24 ----PK_Conc---- Modified functions: *Mystery regarding the nonexistence of global variable root:packages:sq_abort after a call to a sq_Progress window *PK_WavesForHRResults Added a sanity check for the type of data New functions: *PK_butt_recalcHRErrs Does the work of recalcing the HR errors ----PK_elemAnal---- Modified functions: *HR_EAatomicMassSeparation General code cleanup *HR_EAatomicMassSeparation Added examination of Hydrogen isotopes *HROrgCheck_Plot_EA_AAvsIA Fixed a small type ----PK_frag---- No change ----PK_grTable---- Modified functions: *HROrgCheck_Panel_make Changed a button color to gold, smaller font size *HR_Analysis_Panel_Create2 Added a button next to pika fitting button (step 5B) to allow for recalculation of HR errors without refitting *HR_Analysis_Panel_Create3 Changed a button color to gold, smaller font size *HR_butt_CalcExactMassSticksTodo Fixed a bug in the naming of a todo wave Added a sanity check for todo waves with 0 number of points Added a fix to calculate the HR errors *HR_calc_TSeriesMSMatricies Added some wave notes for exported waves, indicating the version of Pika, Igor, date and time of creation *HR_plotPeakHeightsOneRun Fixed the color of the summed fit raw spectra *HR_butt_MS_Calc Fixed typo in abort statement *HR_butt_TableHRIonsTodoFit Prevented users from modifying waves in the popped table Removed waves from table that dealt with summing HR data to integer mz values New functions: *PK_butt_recalcErrsFor122H Recalculates HR fitting errors ----PK_HRPToF---- No change ----PK_PartitionAvg---- * PA_FastModeFillInStartStopRun Fixed bug having to do with short PToF runs ----PK_peakShape---- Modified functions: *PW_GausFitOneRun Slight modification for adding a minimum value of peak width *PS_fetch_PeakShapeAllMassTodo Mystery regarding the nonexistence of global variable root:packages:sq_abort after a call to a sq_Progress window *PS_CalcPSCandidateFromList Added a sanity check before redimensioning ----PK_UnitMassSpec---- No change ToF-AMS HR Analysis Toolkit v1.24 February2 4, 2021 release Update since ToF-AMS Analysis Toolkit v1.23 The progress bars have moved to their own pop up panels and has their own new ipf. The interface for saving spectra to the AMS data base has been completely overhauled; it is now an independent module and ipf. Added the ability to do elemental analysis on non DAQ time bases. Made the code compatible in Igor 9. Changed the default CE in the CDCE panel to 0.45 (as in the Middlebrrok paper) ----PK_ChemSibCheck---- Modified functions: * HR_create_ChemSibPanel The panel now kills itself quickly when closed. ----PK_Conc---- Modified functions: * PK_MS_concentration Progress bars changed. * HR_MakeRawSpectra Progress bars changed. * HR_PeakShapeSanity Added a flag to check if we are doing pika fits for one run. * HR_CalculateSticksSQ Progress bars changed. * PK_HeightToAreaMatrix Progress bars changed. * sq_UMRBaselineSticks Added floor and ceiling calls when finding max mz values * HRE_CreateCorbinErrPanel The panel now kills itself quickly when closed. ----PK_elemAnal---- Obsolete functions: * HR_EAratioOneHRSpectra_t_base * HR_EACreateElementalTSWaves Modified functions: * HR_calc_EARatios Now checks for DAQ time base. *HR_EACalibrateRatios Now checks for DAQ time base. *HR_plot_EARatioTimeSeries Now checks for DAQ time base. *HR_EAextractIsotopicElements variable jCharPos, DCharPos, tempVar, numAfterIsotope, colVal, isotopeVal, fragIsotopeVal, jcharPosX, anotherIso=0 *HR_HRIonMassCalculator Added code to cacluate when multiple isotopes are within a fragment *HROrgCheck_Plot_EA_AAvsIA Now checks for DAQ time base. ----PK_frag---- Modified functions: *HR_ViewSqVsPk_Panel The panel now kills itself quickly when closed. *HR_ck_ChangeHR4BC Fixed a bug when going back and forth from SP AMS and AMS. ----PK_grTable---- New functions: *HR_ShowFitRedoWarning Helper function in the mass calculator *HR_butt_FindIsoMissingEveryIon A companion button to 'Check every isotopic abundance. *HR_butt_ShowWin Replaces HR_butt_ShowPkHtsGr *HR_reorderNHonly Reorders to correspond to 'friendly NxHy Obsolete functions: *PK_exportSaveFileDB Replaced by ipf *PK_exportForDataBase Replaced by ipf *HR_butt_ShowPkHtsGr Replaced by HR_butt_ShowWin Modified functions: * HR_Analysis_Panel_Create Added a separate button for the creation and the display of the SQ vs PK panel. *HR_Analysis_Panel_Create2 New proc for dispaying Pika graph *HR_panel_credits Added Pedro to the Pika credits *HR_butt_CreateMSDiffp Progress bars changed. *HR_butt_CalcSticksForThisRun Added checks to make sure data exists *HR_butt_CalcExactMassSticksTodo Progress bars changed. Added checks to make sure data exists. *HR_calc_MSVsTime Fixed bug having to do with CO, CO2 calcs for elemental analysis. *HR_calc_MSAvg Fixed bug when requesting both species and families *HR_plot_MSAvg Fixed bug when requesting both species and families Added a wave note to makeclear which axis waves are plotted against *HR_calc_TSeriesMSMatricies Added HR fragment dim labels so that table displays in PMF code are helpful. *HR_reCenterAmu Fixed some annoying axis range issues. *RA_MakeRoughAveragePanel_create The panel now kills itself quickly when closed. *HR_butt_UpdateNewExactMass Fixed a minor typo. *HR_ExtractResidSum Progress bars changed. *HR_checkDuplicatesAllMasses Fixed a bug that the table didn't pop up when an error was generated. *HR_checkOrderOfAllMasses Fixed a bug that the table didn't pop up when an error was generated. *HR_butt_updateMaskWave Added checks for ExactMassText_All *PK_graphTweaks Now prevents an Igor 7 error if family names get too long. *HR_butt_MS_Calc Allows for non-DAQ time base for elemental analysis Warns use if at time the AB corr factor is not checked. *HR_cleanupHRResults_ionList Allows the 'all' or multiple species for some results. *HR_butt_FindIsoDiscrepancy A companion button to 'Check every isotopic abundance' in the mass calculator. *sq_NormalizeSpectra Added error code if some checks didn't pass. *HR_FindMissingIsotopes Changed the order of some operations to handle CHNSO order. *HR_oneHRIonElementalComp Added check for CHNSO order. *HR_addThisMass In the mass calculator, added a warning if users need to redo fits. *HR_butt_CalcMassOneHRIon Added code to ensure that requested HR fragment si in CHNSO order and has been parsed by the periodic table, smaller bug fixes. *HR_SqVsPk_OneRun_Panel Renamed function that calls back the pika panel. *HR_pop_getStickDataSet Added sanity check for the data set type *PK_SortHRionTextByCHNSO Fixed bugs that erupted with odd HR fragments, element order is now CHNSClBrO *PK_CreatePhaseDepCE The panel now kills itself quickly when closed. Changed the default CE in the CDCE panel to 0.45 (as in the Middlebrrok paper) *PK_butt_CalcTS_CDCE Warns the user if they are not using the Diff or the OMinusC data set. *PK_butt_CEAdvPanel The panel now kills itself quickly when closed. PK_butt_CETypeFlagLegend The panel now kills itself quickly when closed. *gen_sortRemoveDups Modified code to remain Igor 6 compatible. ----PK_HROrgCheck---- New functions: *gen_ClearPlot Helps to clear plot if using non-DAQ time bases. *PK_modifyHROcheck_tbase Now allows for non-DAQ time bases. Modified functions: *HROrgCheck_Panel_make The panel now kills itself quickly when closed. Fixed a typo in Canagaratna name. *HROrgCheck_ImpAmbControls Changed font so control look more even. *HROrgCheck_calcj15NNCheck Added code to verify that data is only in V or W. *HROrgCheck_calcHROrgCO2Check Added code to verify that data is only in V or W. *HROrgCheck_smoothingScalar Now allows for non-DAQ time bases. *PK_populate_HROrgCheckTSGraph Now allows for non-DAQ time bases. *HROrgCheck_calcfCO2fCHO Now allows for non-DAQ time bases. Added code to verify that data is only in V or W. ----PK_HRPToF---- Modified functions: *HP_butt_CreateDataSet Progress bars changed. *HP_SaveDataSet Progress bars changed. ----PK_PartitionAvg---- Most of the modifications in this ipf happened in 1.23D New functions: *PA_FastModeDivyUpMaxTime When in fast mode, one can elect to set a maximum duration of a new partition *PA_MakeTodoExclWave Combines todo wave selection with Exclusion wave. *PA_makeDAQ_File_Index In preparation for partitioning, set flag ahead of time indication file duration. *PA_dump2Memory Debugging function for when series and index do not match. *PA_divyUpFast Separates a too long partition. *PA_FindnumMSPToF Does some prep work so that the hdf writes are smoother. *PA_StickMin Does checks so that all MS runs in partition are the same length. *PA_setNewHDFKey Helper function that tells when to start a new file. *gen_MakeWWaves General function - given a list of waves make a wave of waves. Obsolete functions: PA_FindNumExclusionPts PA_FindTimeWithinPartition PA_NewHDFFileKey PartitionFastWithXruns PA_MaxNumRunsInPartition Modified functions: *PA_CreateGlobals Creates more waves for sanity checks before partitioning. *PA_PartitionAvgPanel The panel now kills itself quickly when closed. Added a max time variable for fast mode partitioning. *PA_populate_PartitionTable Added NumDAQSecsInPartition for fast mode partitioning. *PA_butt_ResetTimeValues Added a max time variable for fast mode partitioning. *PA_setVar_NumNewRunsInHDF Mostly replaces PA_NewHDFFileKey *PA_butt_MakePartitonAvg Added checks for file paths. Incorporated all the new functions. *PA_CreateAvgHdf Seriously overhauled with many more checks. *PA_MakeRunInfo Added code for the creation and use of start and stop run points. *PA_AvgPartitonNonSpec Added code for the creation and use of start and stop run points. *PA_InsertAvgsIntoWaves Added code for the creation and use of start and stop run points. *PA_AvgRawSpecNon_p Added code for the creation and use of start and stop run points. PA_FastModeFillInStartStopRun Added code for the creation and use of start and stop run points. PA_FindCycleNum Added code for the creation and use of start and stop run points. PA_DeleteEmptyCycles Added code for the creation and use of start and stop run points. PA_verifyRuns Added another check in case the user modified things. ----PK_peakShape---- Modified functions: *GF_fetch_GetGausCoefs Progress bars changed. *PW_PeakWidthShapePanel The panel now kills itself quickly when closed. *PS_fetch_PeakShapeAllMassTodo Progress bars changed. ----PK_UnitMassSpec---- Modified functions: *pk_FindFamilyFroHRIon Changed the code such that CHBr for example is now in the CH family instead of the other family *HR_CheckIsotopeParents Fixed a typo for the poping of a table. *PK_SetUpParamPanel Verifies the use of the todo *PK_ExtractParamSum Progress bars changed. ToF-AMS HR Analysis Toolkit v1.23 November 4, 2019 release Update since ToF-AMS Analysis Toolkit v1.22 The HR panel was consolidated to have 3 tabs to help users understand settings when doing HR fitting. The new tabs are for: fitting preparation, fitting and fitting results. Partition average code was significantly tightened up; redundant code eliminated and partitions are a bit faster. For HR PToF data, added the ability to plot average mass spec. ----PK_ChemSibCheck---- Modified functions: * HR_butt_AddfamilyViaLists Redone via an easier color popup menu. * HR_popMenu_FamilyOnlyList Redone via an easier color popup menu. * HR_butt_newFamily Redone via an easier color popup menu. * pk_ExpandFamilyBase Removes annoying alert and 'hard codes an isotopic value of 0.001. Fixed a bug having to do with unknown HR fragments. ----PK_conc---- New functions: All the bits below have to do with the new (beta) calculation of Corbin mass cal errors. Names have been retained from Corbin code. Structure HRE_IO HRE_init_MC HRE_setMSwaves HRE_setIsotopes HRE_do_MC_fits HRE_do_true_MC_fits HRE_SubtractIsotopePeaks HRE_fit_current_MS HRE_addPseudoGaussians HRE_addPseudoGaussian Structure OnlineSDw initOnlineSDw updateOnlineSDw weightUpdateOnlineSDw HRE_panelGlobals HRE_CreateCorbinErrPanel Deleted functions: * PK_interpRawErrorFetch No longer used. * HR_butt_SigIonCountErr No longer used. * HR_SignalErrors_CheckFor No longer used. Modified functions: * PK_MS_concentration Added code for existence bug for elemental spectra. * HR_ManyGaussWPS Bug fix for out of range error. * HR_CalculateSticksSQ Addition of code for optional calculation of Corbin mass cal error estimation. This all relies on a 'secret' panel and the use of a global variable MC_num_fits. * HR_CalcSticksOneRun Addition of code for optional calculation of Corbin mass cal error estimation. This all relies on a 'secret' panel and the use of a global variable MC_num_fits. * HR_SticksOneRun_prep Added a check for the fitting of the smallest m/z possible. * HR_SticksOneRun_prep Added a sanity check for min and max m/z for HRPToF. Added sanity check for when no raw MS open data exists. * PK_TotalCountingErrors Added code for optional calculation of Corbin mass cal error estimation. Multithreaded things to spee up calculations. * PK_duplicate_FitTodoWaves Modified the use of the optional parameter PToFSubtractFlag to be more generic. * PK_IndexHRResultsWavesFitTodo Modified the use of the optional parameter PToFSubtractFlag to be more generic. * PK_FindHRResultsWavesFitTodo Added a sanity check when fits not done yet. * PK_TotalCountErr_CheckFor Commented out the last section of the code to prevent duplicate calculations. ----PK_elemAnal---- New functions: * ea_ColorizeTrace Redone as a part of the overall diurnal recoding. * ea_getSpeciesColor Redone as a part of the overall diurnal recoding. Deleted functions: * HR_calcPlot_EARatios To avoid confusions due to the plotting options in the main pika panel and the button to generate this is in the HROrgCheck panel, this was redone. * HR_calcPlot_EARatioDiurnal Redone as a part of the overall diurnal recoding. Modified functions: * HR_HRIonMassCalculator Family wave section redone do to bugs. * HR_EACalibrateRatios Sanity checks added. ----PK_frag---- Modified functions: * HR_CheckListForHRSpecies Added sanity check if nothing is selected. * HR_SQvsPK_calcWaves Guides users to inconsistencies in CDCE waves. ----PK_grTable---- Deleted functions: * HR_MSCalcPlot_Diurnal Merged with generic diurnal code in squirrel. * HR_MSCalc_Diurnals Merged with generic diurnal code in squirrel. * HR_ck_PToFManyGroupFit No longer needed with panel remodel. * PK_PToFUpdateTitleBox() No longer needed with panel remodel. New functions: * HR_fitSanity Makes sure raw spectra ready before we fit. * HR_MSCalcPlot_Diurnal Now used as a more general diurnal functionality. * HR_butt_familySpecies Button to point users in the direction of the newly moved families and species section. Modified functions: * HR_globals Updated some instructional strings for the newly revamped panel. * HR_Analysis_Panel_Create Considerably reworked to allow for only 3 tabs. * HR_Analysis_Panel_Create0 Essentially consolidated the first two old tabs into this one. * HR_Analysis_Panel_Create2 Essentially consolidated the two middle tabs into this one. * HR_butt_CalcSticksForThisRun Added a sanity check that the list of HR ions is ok. * HR_butt_CalcExactMassSticksTodo Considerably reworked; eliminated old, obsolete options and added the ability to fit multiple types of data sets (HRPToF, ePToF, MS) in one button push. * PK_sumToUMR Consolidated code bits for when we some to UMR. * HR_calc_MSAvg Now uses PK_sumToUMR * HR_plot_MSAvg General code cleanup. * HR_calc_TSeriesMSMatricies Added code to ensure results are dumped to root folder. * HR_plotPeakHeightsOneRun Removed some confusing OpenMClosed waves from the plot. * HR_calcGausFitWaves Added sanity check for peak width. * HR_tabProc Reworked due to panel reorganizaiton. * HR_butt_MS_Calc Added code to clean up species list before anything else. Added more sanity checks for plotting options. Added checks for elemental analysis plots. * HR_change2FitHRIon Added code to ensure that if ion doesn't exist, it will be calculated properly. * HR_pop_getStickDataSet Fixed some bothersome behavior for matching data sets with error sets. * HR_PToF_ChooseDataSet Added some code for HR PToF matricies. * HR_pop_getStickErrSet Added some code for the Corbin mass cal error estimations. * HR_ck_OneSpectraMSorPToF Necessary due to panel remodel. * pk_ModifyParam4Norm Bug fix for scaling PToF HR traces. ----PK_HROrgCheck---- Modified functions: * HROrgCheck_Panel_make Fixed typo. * PK_populate_air44UMRFragTable Fixed code that would mess up the display of tables within the panel. * HROrgCheck_HRCO2SetVarProc Fixed bug that would sometimes throw if a wave was nan and the code wanted to curve fit. * HROrgCheck_calcfCO2fCHO Added sanity check to make sure time series waves were generated using 'as saved' time. * HROrgCheck_CalcEA_ImprovedAmb Added sanity check that necessary waves were calculated. * HROrgCheck_CalcEADiurnal_ImpAmb Added sanity check that necessary waves were calculated. ----PK_HRPToF---- New functions: * HR_calcplot_PTOFMS Averages across todo. * HR_calc_PTOFMS Does the work of HR_calcplot_PTOFMS (no plotting generated). Modified functions: * HR_calc_PTOFImage Added flags for the number of HR ions fit. * HP_butt_CreateDataSet Uses the rawPToF todo wave for when not all raw PToF spectra are present. * HP_SaveDataSet Added a status update in the squirrel progress bar. * HR_calcplot_PTOFMS Added ----PK_partitionAvg---- Modified functions: * PA_CreateGlobals NumSecsInPartition added; this contains actual time spent in mode, not stop - start time. * PA_PartitionAvgPanel Slightly reorganized for maximum time within a fast mode cycle. * PA_populate_PartitionTable NumSecsInPartition added. * PA_butt_PartByTime Fixed a minor bug with out of index range. * PA_butt_ResetTimeValues Considerably reworked to eliminate redundancy and for the use of NumSecsInPartition. * PA_CreateAttWaves Added a sanity check for nonmonotonic series_index. * PA_GetnonMSInfo Added use of DAQfile_index for nonmonotonic files. * PA_CheckParitionOption Added the use of 'User settings'. * PA_LoadConCatRunInfo Added use of DAQfile_index for nonmonotonic files. * PA_DeleteEmptyCycles Now also removes rows from NumSecsInPartition. * PA_NewHDFFileKey Now also uses NumSecsInPartition. * PA_verifyRuns Added a helper function to ensure that start and stop runs exist in todo. * gen_joinTwoIntegerWaves A faster way to join to todo waves (skips some verifying of run steps). ----PK_peakShape---- Modified functions: * PW_updateMaskPWGraph Bug fix for out of index range. * PW_butt_RecalcPWAvgs Modified code to be less sensitive to outliers. Hat tip to Joel Corbin. * PS_forceMonotonicity Now forces monotonicity at 1.5 peak width units away from center, instead of 3. ----PK_UnitMassSpec---- No change. ----------------------------------------------------------------------------------------------- ToF-AMS HR Analysis Toolkit v1.22 November 15, 2018 release New functionality: * The HRPToF functionality was overhauled, and is now more intuitive. Any users which anticipate analyzing HR PToF data are strongly encouraged to upgrade. * A new ipf was added, PK_HRPToF that contains most of this code. All Exactmass waves (containing the mass of ions such as C2H3O) are now double precision. ------- PK_ChemSibCheck---- * HR_butt_AddfamilyViaLists Fixed bug regarding automatically updating HROrg. * PK_AddTheseHRIonsToAll Fixed bug regarding adding or removing isotiopic children with smaller mass then parents. * HR_butt_newFamily Added sanity checks, reorganized. * pk_ExpandFamilyBase Significantly changed to make it go faster. ------- PK_Conc---- New functions: * HR_Getdtdlogdp_tmp Gets the dtdlogdp values that are applicable to the newly formed HR PToF data set matricies. * PK_MS_concentration Significant changes! Added code to allow for HR PToF matricies. now uses the universal sq_ApplyFragWaves. * PK_diffCalc Fixed a bug having to do with ImageTransform * HR_CalculateSticksSQ Reinstated some code that I thought was only for display. * HR_SticksOneRun_prep Changed code to allow for HR PToF matricies. * PK_TotalCountingErrors Prevented Error drop down menu from being cluttered with old error data sets. * PK_CreateElementWaves Added a date modified check to see if we need to overwrite periodic table. * PK_recalc_IonMasses Fixed a bug for very long atomic names, i.e. jxxxYY * PK_duplicate_FitTodoWaves Added an optional parameters for subtracting HR PToF matricis from dc data sets. * PK_IndexHRResultsWavesFitTodo Added an optional parameters for subtracting HR PToF matricis from dc data sets. * PK_FindHRResultsWavesFitTodo Added a sanity check for when the Get List data set is selected. * PK_WavesForHRResults Added an abort when something obvious goes wrong. * PK_TotalCountErr_CheckFor Removed redundant timewave parameters. * HR_SignalErrors_CheckFor Added timewave parameters. ------- PK_elemAnal---- * HR_HRIonMassCalculator Cosmetic changes. * HR_populate_PeriodicTable Overwrites the old periodic table that had small, minor errors. * HR_getIsoAbundXmany Can now handle cases of ions with 7 different atoms, i.e. CONSClK (not a real ion). ------- PK_frag---- * HR_createTempSpeciesMask Added code to exit gracefully when users add new families but they haven't declared their chosen HR ions. * HR_fragList_convert Eliminated UserDefinedIons code. * HR_ck_ChangeHR4BC Added code to change back the UMR frag wave when switching between AMS and SPAMS data. * sq_make_rBC_UMR_fragNbatchWaves Now checks a global variable instead of relying on the panel. * sq_make_rBC_UMR_fragNbatchWaves Added code to make sure no out of bounds errors appeared. Fixed bug regarding fullerenes and midc species. Added code to change back the UMR frag wave when switching between AMS and SPAMS data. Killed: * HR_butt_ChangeHR4BC Combined code into HR_ck_ChangeHR4BC ------- PK_grTable---- New functions * pk_VerifyMzRange Extracted this from several functions as it is used in several places. * PToF_GetBinRanges When plotting a single PToF bin, this gets the range for converting to ug/m3 * HR_MakeHRPToFMxXaxis Replaces HR_PToFDataSetDvaWaves, with more functionality. * HR_calcplot_PToFSizeDist The HR version of the UMR code. * gen_removeEmptiesFromList General usage. * HR_calcplot_PTOFExport For exporting 3D matricies. We don't actually plot - yet? * HR_calc_PTOFExport Modified functions * HR_Analysis_Panel_Create Added HR PToF tab, controls for dealing with this type of data. * HR_butt_CalcSticksForThisRun Added code for HR PToF. * HR_butt_CalcExactMassSticksTodo Added code for HR PToF. * HR_calcPlot_MSVsTime Added code for single PToF bin * HR_plot_MSVsTime Added code for single PToF bin * HR_plot_MSAvg When plotting UMR-summed HR sticks we always stack on top. * HR_calc_TSeriesMSMatricies Added the ability to automatically kill the matricies after they have been created. * HR_plotPeakHeightsOneRun Modified the location of some controls. * HR_butt_AddThisHRIon Reworked to consolidate code. * HR_checkDuplicatesAllMasses Reworked to make it go faster. * HR_butt_MS_Calc Added code for HR PToF. * HR_butt_massCheckAllIons Added code for double precision, fixed small bug. * HR_butt_AddThisMass Added code to check that if the added mass has a chemical formula, the correct mass value is used. * HR_FindMissingIsotopes Fixed a bug for when the HR ion name is not reflective of an acutal chemical fragment. * HR_oneHRIonElementalComp Fixed a bug for when the HR ion name is not reflective of an acutal chemical fragment. * HR_findIsotopAbund Changed the logic for non-periodic table HR ion names. * HR_findIsotopParent Changed the logic for non-periodic table HR ion names. * HR_IsotopeSubset Added code for when returned waves have zero points. * HR_butt_CalcMassOneHRIon Changed the logic for non-periodic table HR ion names. * HR_getAllIsotopicChildren Added cases for big ions with > 5 different types of atoms. * PToF_DataSet_globals Added code for creating waves to draw graph to help users. * PToF_DataSetPanel Completely overhauled! * HR_PToF_ChooseDataSet Modified to use the new pk_returnHRPToFInfo * HR_pop_getPToFStickDataSet Now checks for HR PToF matricies. * HR_buttPToFOMinusClosed Modified significantly to only allow matricies for the open. * PK_CheckAtomOrderButtonProc Significantly changed for even more stricter controls of ion names.. i.e. CHO instead of OHC. * PK_SortAllHRionsTextByCHNSO Significantly changed for even more stricter controls of ion names.. i.e. CHO instead of OHC. * PK_SortHRionTextByCHNSO Significantly changed for even more stricter controls of ion names.. i.e. CHO instead of OHC. * PK_AtomOrder Significantly changed for even more stricter controls of ion names.. i.e. CHO instead of OHC. * HR_pop_getStickErrSet gives use warning if something unusal is happening. * PK_returnHRPToFInfo Changed the use of HRPToFInfo[%MatrixFlag].. this now indicates the number of PToF bins. So single bins are 1, not 0 * HR_calc_PTOFSizeDist Major overhaul with HR PToF matricies. * HR_calcplot_PTOFImage Major overhaul with HR PToF matricies. Moved to the new HRPToF ipf PToF_butt_CreateDataSet PToF_SaveDataSet sq_RebinPToF gen_GetRedimAvg3D Deleted functions. sq_ck_PToFSingleOrMany ------- PK_HROrgCheck---- No change. ------- PK_PartitionAvg---- No change. ------- PK_UnitMassSpec---- Modified: * pk_FindFamilyFroHRIon HR ions such as XCl (when X is not H) are not longer within the Cl family, but the other family. This included CCl, etc. * HR_CheckIsotopeParents Fixed some bugs having to do with isotopic children with mass < parent. ------- PK_peakShape---- Modified: * PW_fitPWToSmoothlyVaryingPW Fixed a bug for varying peak width. * PW_SetHRionPWtoAvgButtonProc Added sanity check for when user changes HR ions. ToF-AMS HR Analysis Toolkit v1.21 June 8, 2018 release Update since ToF-AMS HR Analysis Toolkit v1.20 New functionality: * Users can now easily define and opt to fit/not fit families via a list of HR ions (and their isotopes and chemical siblings via a new tab in the HR ion calculator panel. Examples for PAHs are included. ------- PK_ChemSibCheck----- New: Added several string constants having to do with some default PAH families:UnSubPAH, OPAH, MPAH, NPAH,APAH * HR_butt_AddPAHLists Button in HR ion calculator for default PAH lists * HR_butt_AddfamilyViaLists Button in HR ion calculator for any HR ion list * PK_AddTheseHRIonsToAll Helper function for adding new families * pk_GetFamList Returns list of families defined by familyWave_* * HR_popMenu_FamilyOnlyList Popup menu function for populating families * HR_butt_ViewFamilyWaveTable Button function for displaying all families defined by familyWave_* * HR_butt_newFamily Button in HR calculator, familyWave_* tab for generating family * pk_AddChemRelations Helper function for HR_butt_newFamily to add M-H, M-2H and isotopes * pk_ChemFormStr Helper function for pk_AddChemRelations * pk_EnsureDisjointFam Sanity checks in case users go crazy with families defined by familyWave_* * pk_putMassValuesToWave Given a wave of HR ions, return each mass * pk_butt_verifyFamilDisjoint Button in HR calculator, familyWave_* tab in case users go crazy with families defined by familyWave_* * pk_butt_fitFamily One button press for fitting or not fitting all HR ions in an familyWave_* family ------- PK_Conc------ Modified: * PK_MS_concentration Significantly modified code for HR PToF * HR_MakeRawSpectra Folded in the Gaussian fits for peak width and shape more cleanly * PK_diffCalc Added option for PToF data * HR_CalculateSticksSQ_prep Cleaned up code for ePToFSum case * HR_CalculateSticksSQ Significant changes to PToF data Sped things up by commenting out code for data only used for display in pika graph * HR_SticksOneRun_prep Handled case where ePToFSum and it's matching closed spectra had different number of points in the raw spectra * PK_CreateElementWaves Fixed a typo for an isotope, j84Sr * PK_TotalCountErr_CheckFor Had to add checks for max m/z * HR_SignalErrors_CheckFor Had to add checks for max m/z Removed: * PK_GetErrors No longer used ------- PK_ElemAnal------ Modified: * HR_DataFolderPopMenuProc Fixed small end of wave bug * pk_HRIonWaveDescriptions Fixed small case sensitivity bug * HR_HRIonMassCalculator Added new tab for defining families according to a list of HR ions * HR_butt_UnfitIsoChange2Fit Fixed a small bug when determining all the isotopic children of an HR ion that were previously fit * HR_getIsoAbundXmany Fixed a small bug when user has 5 different atoms, i.e. CHNOS ------- PK_Frag------ New: * HR_Species_subpanel_check Tim O supplied function for switching between SP AMS and IE AMS * HR_ck_ChangeHR4BC Tim O supplied function for switching between SP AMS and IE AMS Modified: * HR_populate_SQvsPkTSCorrGraph Fixed bug for multiple iterations of calculations ------- PK_grTable----- New: New string constants for HR species * PToF_DataSet_globals To help guide users through this process * pk_dbase Generates PToF diameter base when using HRPToF matricies * HR_PToFDataSetDvaWaves Helper function for pk_dbase * HR_calcplot_PTOFSizeDist Extends UMR size distribution plots for HR * HR_calc_PTOFSizeDist Extends UMR size distribution plots for HR * HR_plot_PTOFSizeDist Extends UMR size distribution plots for HR * HR_calcplot_PTOFImage Extends UMR size image plots for HR * HR_RetrievePToFMxVals Extracts info about HRPToF matricies * pk_butt_mainPikaPanel To help users get back to main panel * gen_GetWaveListInDF Very general purpose * gen_CombineTextWaves2List Very general purpose * gen_FindStrInTextWavesList When str could be in one of several text waves * gen_removeListFromList Very general purpose * gen_sortRemoveDups For use in familyWave_* families * gen_findDuplicatesT For use when Igor 7 not available Modified: * HR_globals Removed usage of root:PToF:SPToFDataSetNames et al Added root:HR_frag:BCdata at Tim O suggestion * HR_Analysis_Panel_Create At Tim O suggestion added a button for default BC frag * HR_butt_CreateMSDiffp Added code for CToF users Tried to prevent finding gauss fits for peak width and shape from being calced twice * HR_butt_CalcSticksForThisRun Added code such that if user selected a fast mode closed run a more sensible error appears * HR_butt_CalcExactMassSticksTodo Significant change to HRPToF data * HR_calc_TSeriesMSMatricies By user request added dimension labels to 2D HR ion matrix generated * SticksGr_check_IsoTagsTiny In Pika graph, made isotope tags tiny to declutter x axis * HR_butt_UpdateNewExactMass Added code to guide users through this process more easily * HR_butt_MS_Calc Significant rewrite for HRPToF * PK_FindMassFromFormula Added optional parameter HRIonText to allow usage separate from HR calculator interface * HR_butt_setResultsList Adds nicer interface for BC data when things go wrong * HR_massCalcGlobals Added globals for familyWave_* interface * HR_addWavesToAll Added optional parameter DontUpdateChosen for familyWave_* usage * HR_butt_CalcMassOneHRIon Made sure calcs were still correct if HR ion is a doubly charged ion AND and isotope * HR_FindRelatedHRIonSuffix Fixed a bug when finding CH related ions (rarely used) * HR_MassCalcQueryHRionTab Added tag for familyWave_* * HR_RemoveHRIonsOfNumElem Expanded usage to up to 20 atoms * HR_checkProc_massCalc Made sure the HR calculator panel didn't get wonky when calcing masses outside of the first tab * HR_butt_Add2ListOrChange2Fit Fixed a small bug relating to adding isotopes * HR_FindHRfragDependencies If a user creates a new species but forgets to create a new frag wave, will automatically create one full of blanks * PToF_DataSetPanel Redone to hopefully make more intuitive * PToF_dataSetListBox Reworked with new globals * PToF_butt_CreateDataSet Significantly reworked with new globals * PToF_SaveDataSet Significantly reworked with new globals * HR_buttPToFOMinusClosed Now works with HRPToF matricies * PK_AddOrRemoveIsoChild Fixed ";" bug * HR_GetListOfSelPToFGroups Reworked with new globals * PK_PToFUpdateTitleBox Reworked with new globals * PK_returnHRPToFInfo Reworked with new globals Removed: PK_Kill_HR_ms_mats No longer used ------- PK_HRorgCheck------ New: * String constants for default values for HR frag for CO2 Modified: * HROrgCheck_TabProc Reversion to defaults functionality debugged * HROrgCheck_HRCO2_declareStep2 Cleaner way to manage strings containing CO2 frag entries * PK_ShowDetails_HRrgCO2check Fixed display bug * HROrgCheck_CO2TimeDep Cleaner way to manage strings containing CO2 frag entries * HROrgCheck_CO2Revert Cleaner way to manage strings containing CO2 frag entries ------- PK_PartitionAvg------- New: * PA_NewHDFFileKey To help determine before new hdfs get written where new file breaks will be * PA_MaxNumRunsInPartition For use with PA_MaxNumRunsPerNew Modified: * PA_CreateGlobals Added a new global PA_MaxNumRunsPerNew for max number orf runs in fast mode partition (Pedro flux) * PA_butt_ResetTimeValues Uses PA_MaxNumRunsPerNew to prevent fast open cycles from getting too big * PA_GetnonMSInfo Added check for if file creation throws an error * PA_FastModeFillInStartStopRun Handles case of fast mode cycle of length 1 * PA_DeleteEmptyCycles Users may have indexed _p files and not the _m files * PA_NewHDFFileKey Fixed a bug having to do when series_index not monotonic ------- PK_PeakShape------- New: * GF_findGaus Separated this out from the button function Modified: * GF_makeMassWaves If user adds more ions, code will sort them according to mass * GF_butt_GFsTodo Work now done in GF_findGaus * PW_PeakWidthShapePanel By user request added a button to print out HR ions used for peak shape ------- PK_UnitMassSpec------- New: * HR_unConstrainChildLTParent Handles these isotopic children better * pk_RemainderFormula Called from pk_FindFamilyFroHRIon for weird HxOy ions Modified: * pk_FindFamilyFroHRIon Slighlty changed family designation for ion when H and O > 0 but the usual ions CNS are 0 * HR_CheckIsotopeParents Added a optional parameter ChildMzLessThanParentFlag for isotopes such as metals that will handle these isotopes nicely * HR_SortIsotopicValues Significantly rewritten - figues out if we have isotopes that are less than and greater (m/z) than parent High ResolutionToF-AMS Analysis Toolkit v1.20 June 19, 2017 release Update since ToF-AMS Analysis Toolkit v1.19 ------- PK_UnitMassSpec------- * UM_ExtractSQMassSpectra Addec code to check for max mz size of diff mass spec * HR_CheckIsotopeParents Now also checks for empty string parents -------PK_peakShape----- * GF_GausFitPrelims Added code to ensure GFName is legal * GF_dumpCoeffs Added code to ensure GFName is legal * PW_makePeakWidthWaves Reset K2<5 1.16K for constraints on peak width power * PW_PeakWidthShapePanel Cosmetic change * PW_populate_PeakWidthGraph Added code to ensure GFName is legal * PW_butt_FitPWAvgs Added sanity check for HR_displayFinalPWIntercept * PW_HideChosenPSMass Added code to ensure GFName is legal * PW_updateMaskPWGraph Added code to ensure GFName is legal * PW_individualMassFitGraphs Added code to ensure GFName is legal * PW_populate_OneRunGraph Added code to ensure GFName is legal * PW_butt_RecalcPWAvgs Added code to ensure GFName is legal * PW_calcMassLegend Added code to ensure GFName is legal * pw_fitPWToSmoothlyVaryingPW Added code to ensure GFName is legal * pw_smoothSelectedPWs Added code to ensure GFName is legal * pw_displaySmoothSelectedPWs ------- PK_PartitionAvg------- * PA_CreateGlobals Default for root:Partition_Avg:PA_NumParitionsPerHdf changed to 1024 * PA_PartitionAvgPanel Cosmetic changes * PA_populate_PartitionTable Added waves PToFCount,MSCount * PA_butt_PartByRunNum Added killwaves/z mymask * PA_butt_ResetTimeValues Made temp wave timeDaq free * PA_setVar_NumNewRunsInHDF Added wave root:Partition_Avg:NewHDFKey to indicate when new HDF should be created * PA_butt_MakePartitonAvg Added wave root:Partition_Avg:NewHDFKey to indicate when new HDF should be created * PA_CreateAvgHdf Removed the MScounting wave because we now use NewHDFKey * PA_MakeRunInfo We now use root:Partition_Avg:NewHDFKey * PA_FastModeFillInStartStopRun Added check for fast mode and the existence of First1Open, etc * PA_FindTimeWithinPartition Made wave timeDaq free ------- PK_HROrgCheck------- * HROrgCheck_globals Changed default smoothing value from 1 to 0 * HROrgCheck_Panel_make Changed how UMR and HR frag tables were presented * HROrgCheck_ImpAmbControls Cosmetic changes * HROrgCheck_TabProc Changed how UMR and HR frag tables were presented * PK_populate_j15NNAllMassesTable Solved problem with how frag tables were presented * PK_populate_j15NNUMRFragTable Solved problem with how frag tables were presented * PK_populate_HROrgCO2Table Solved problem with how frag tables were presented * PK_populate_air44UMRFragTable Solved problem with how frag tables were presented * HROrgCheck_HRCO2_declareStep2 Cosmetic changes * HROrgCheck_smoothingScalar Checks to see if smoothing scalar >0 * HROrgCheck_calcfCO2fCHO Doesn't choke for ePTOFSumDiff * PK_ShowDetails_j15NNcheck Solved problem with how frag tables were presented * PK_ShowDetails_HRrgCO2check Solved problem with how frag tables were presented * HROrgCheck_CO2Revert Took care of situations where default was changed ------- PK_grTable------- New functions: * PK_returnHRPToFInfo returns the row nuber of the data set if it is within the root:PToF:PToFDataSetName * PK_Returndtdlogdp Consolidated code for this Modified functions: * HR_globals Added global HR_checkPToFDVa * HR_Analysis_Panel_Create Duplicated time base selection from main SQ panel * HR_butt_CalcSticksForThisRun Added check for lastHRmzPos Added check for time spent in mode before performing calcs * HR_butt_CalcExactMassSticksTodo Added a check for minimum mz HR ion * HR_calcPlot_MSVsTime Added code for ePTOFSumDiff * HR_plot_MSVsTime Added optional parameter to function call HRPToFEdges * HR_calc_TSeriesMSMatricies Added code for better Time wave management * HR_plotPeakHeightsOneRun Cosmetic change * HR_reCenterAmu Adds max mz sanity check * HR_calcGausFitWaves Adds max mz sanity check * HR_CreatePeakHtsListBox Adds sanity check when binarysearchReturns negative * HR_butt_MS_Calc Added root:HR_panel:HR_checkPToFDVa and call to pk_Returndtdlogdp * HR_butt_FindIsoDiscrepancy Added flag to check if HR ion exists in tabl,e NonPeriodicTableFlag * HR_butt_AddThisMass Added check for mass value * HR_FindMissingIsotopes Hopefully gives a clearer indication to the user when there is a problem * HR_oneHRIonElementalComp Returns if HRIon name is empty * HR_findIsotopAbund Now includes flag NonPeriodicTableFlag * HR_findIsotopParent Now includes flag NonPeriodicTableFlag * HR_butt_CalcMassOneHRIon Now includes flag NonPeriodicTableFlag * HR_butt_Add2ListOrChange2Fit Now includes flag NonPeriodicTableFlag * PToF_butt_CreateDataSet Changed default names to not include automatic "_" * HR_updateHRStickList Changed default names to not include automatic "_" *HR_pop_getPToFStickDataSet Changed text that displays root:HR_panel:HRPToF_StickList * HR_buttPToFOMinusClosed Changed way we identify PToF 'open minus closed' * pk_CheckAtomOrderButtonProc Cosmetic change -------PK_frag------- * sq_batch_GuideUserToMismatch Added ReplaceString("/", SQ_list, ";") * HR_populate_SQvsPkMSGraph Now autoscales from zero * sq_make_rBC_UMR_fragNbatchWaves Added maxPfragOrg = dimsize(frag_organic,0)-1 to prevent out of index errors ------- PK_elemAnal------- * HR_EACalibrateRatios Made clear the name of the wave containing the improved ambient and oxidation state * HR_plot_EARatioTimeSeries Made clear the name of the wave containing the improved ambient and oxidation state ------- PK_Conc ------- * PK_MS_concentration Cleaned up coded for time waves and now use sq_GetModifiedTimes() * HR_CalculateSticksSQ_prep Added check for ePTOFSumDiff * HR_SticksOneRun_prep Fixed code for HR PToF units * PK_TotalCountingErrors Cleaned up coded for time waves and now use sq_GetModifiedTimes() * PK_WavesForHRResults Changed typo bug * PK_TotalCountErr_CheckFor Cleaned up coded for time waves and now use sq_GetModifiedTimes() * HR_SignalErrors_CheckFor Cleaned up coded for time waves and now use sq_GetModifiedTimes() ------- PK_ChemSibCheck ------- * HR_create_ChemSibPanel Cosmetic changes Update since ToF-AMS HR Analysis Toolkit v1.16 Notes by Donna Sueper 26 Jan 2017 * This is a major upgrade in that two new ipfs for ePToF deconvolution have been added. These ipfs have a prefix of tw_ instead of sq_ to indicate Tofwerk contribution. One of these Tofwerk ipfs is partially encripted by their request. One of these ipfs is an Igor independent module, which means that you won't be able to see it in the list of procedure windows without invoking SetIgorOption IndependentModuleDev=1 * Prepared several functions for the possibility of there not ever being any MS open and hence diff data, only ePToF data summed to MS mode. * Added the ability to use text waves containing chemical formula fragments to create a new family. * Added ability for AB reference period for AB correction wave to be a todo wave instead of a simple run range. * Cosmetic changes were made to make things look nice in Igor 7 and several instances of sq_GetIndexNotDoneYet() to prevent errors before data indexed. Added pop buttons on Main HR peak graph ------ PK_gr_table------- Modified Functions: HR_globals * Changed HR_MaxNumGausFits from 20 to 100. * Added globals for ePToF stuff. HR_Analysis_Panel_Create Made Igor 7 friendly looking. HR_butt_CreateMSDiffp * Added code for ePToF and fast mode. HR_butt_CalcSticksForThisRun * Added code for ePToF. HR_plot_MSVsTime Added global variable HR_plot_MSVsTime to prevent automatic recoloring of traces. HR_plotPeakHeightsOneRun * Added code for ePToF. * Added popup buttons HR_reCenterAmu: Added optional spectra type string for use in popping window. HR_tabProc * Added code for ePToF. HR_butt_MS_Calc * Added check for HROrgCheck (to prevent users from doing elemental analysis if this check not preformed). HR_GenerateFamilyExceptionLists * Added the ability touser text waves for family definitions. HR_butt_ViewHRIntegerSpectra * Added code for ePToF. HR_updateHRStickList * Added code for ePToF. Deleted or commented out functions: HR_butt_HRFitFailTodo Users were indicating moments where pika fits were returning nan. Updated the code to check for this. HR_returnGrouping No longer used New functions: all below are for popping main pika window graphs: HR_PeakHeights_gr_pop HR_PeakHeights_gr_Spec Pk_gr_AdjustTags Pk_gr_AllOnePlot Pk_gr_OMinusC Pk_gr_OneSpecType Pk_gr_ResidualTraces Pk_gr_HorizontalGrids HR_ck_OneSpectraMSorPToF ------- PK_Backbone ------- Modified Functions: PK_MS_concentration * Dealt with the possibility that we do not have regular MSDiff data but ePToF summed data. ------- PK_ElemAnal ------- Modified Functions: HR_calc_EARatios * Fixed small syntax bug found by Igor 7. ------- PK_ChemSibCheck ------- No change. ------- PK_Frag ------- Modified Functions: HR_SQvsPK_calcWaves * Added sanity check for AB wave existence. HR_SQvsPK_calcWaves() Checked the possibility for there not being any MSSDiff data, but MS generated by the sum of the ePToF data. ------- PK_HROrgCheck ------- Modified Functions: HROrgCheck_calcj15NNCheck * Now requires the AB correction factor wave to exist. * Added the ability to use the HR_checkConvertNansTo0 in instances where the data turns into nans. * Added sanity checks for the existence of global strings and waves. HROrgCheck_calcHROrgCO2Check * Added the ability to use the HR_checkConvertNansTo0 in instances where the data turns into nans. HROrgCheck_calcfCO2fCHO * Added the ability to use the HR_checkConvertNansTo0 in instances where the data turns into nans. Deleted Functions: *pk_BrowseCanagartna Buttons to links to all URLs have been consolidated. ------- PK_UnitMassSpec ------- Modified Functions: pk_FindFamilyFroHRIon * Added ability to make a Tungsten family from the existence of a W in the chemical formula. ------- PK_PeakShape ------- Modified Functions: PWUseLineOrPow * Changed default to use power, not line function. PW_makePeakWidthWaves * Changed defaults for constraints for some power fitsto be less constrictive. PW_PeakWidthShapePanel * Made a fixed size, various cosmetic changes for Igor 7 PW_updateMaskPWGraph * Added a sanity check for min and max peak width PW_findFitsOneRun * Added initial guesses to help guide fits. PS_PeakShapeOneMass * Added a sanity check suggested by Tim O PS_CleanUpPeakShapeWaves * Added a sanity check PS_butt_declareFinalPeakShape * Added bug fix found using Igor 7 in numpnts of runMask_temp pw_fitPWToSmoothlyVaryingPW * For data sets with few points due to small number of runs, code now interpolates between points so that peak shape has no nans. ------- PK_PartitionAvg------- New Functions: PA_FindNumExclusionPts * For help with exclusion wave PA_FindTimeWithinPartition * For help with exclusion wave Modified Functions: PA_CreateGlobals * Changed defaults to global variables for larger files, made the panel a fixed size. PA_PartitionAvgPanel *Added the ability for partitions to be made with an exclusion wave so that partitions usinga PAM or thermodenuder wouldnt be grouped together. PA_butt_ResetTimeValues *Added the code to deal with fast mode cycles and times and exclusion waves from PAM. PA_setVar_NumNewRunsInHDF * Automatically closes Igor Browser for faster analysis; deals with exclusion wave. PA_MakeRunInfo * Added sanity check when there are zero runs to average over. PA_FindAvgOneWave * Added optional parameter for the use of summing not averaging, as in time during fast cycles. PA_InsertAvgsIntoWaves * Now helps with summing not averaging, as in time during fast cycles. PA_CreateAttWaves * Cleared up some code confusion between ComParValText and CommonParValText waves ----------------------------------------------------------------------------------------------- Update since ToF-AMS HR Analysis Toolkit v1.15 Notes by Donna Sueper 25 Jun 2015 * This is a major upgrade in that two new ipfs and panels have been added, HROrgCheck, which helps users with verifying their HROrg species and HRChemSib, which begins to investigate major HR ions within the same family, such as NH2 and NH3. * The interface for calculating elemental ratios using the Canagaratna et al ACP 2015 formulation has been changed dramatically to help users evaluate the effect of fCHO and fCO2 ------- PK_UnitMassSpec ------- No change. ------- PK_PeakShape ------- No change. ------- PK_Backbone ------- * HR_SticksOneRun_prep If using separate Open and Closed m/z parameters, the call to retrieve raw spectra assures they will be used. ------- PK_elemAnal ------- Added a constant declaration for the theoretical j15NN isotopic relative abundance, j15NN_THEORY = 0.0073066 Deleted Functions: * HR_calcPlot_EARatios The interfacte for this function has been changed dramatically. Modified Functions: * HR_calc_EARatios Added the name of the plot as a parameter * HR_EACalibrateRatios Now returns a string containing the name of the created waves, now assumes that if Canagaratna et al formula is used the fCO2 and fCHO have already been generated & modified. * HR_plot_EARatioTimeSeries Added a string parameter of the names of the wave to plot. * HR_MSplot_DiurnalBoxPlot Small bug fix - the name of the diurnal graph is modifiable. ------- PK_Frag------- Deleted Functions: * HR_FD_Check_batchCOCHO This is done in conjuction with the HROrgCheck panel now. Modified Functions: * HR_butt_HRfragTable General code cleanup. ------- PK_PartitionAvg------- Significant changes to allow for PAM-type chamber determined partitions. Modified Functions: * PA_PartitionAvgPanel * PA_butt_ResetTimeValues Added a sanity check in case instrument crashed or was stopped. * PA_AvgPartitonNonSpec The HDF attribute waves are now called InfoValText etc. * PA_CreateAttWaves The HDF attribute waves are now called InfoValText etc. * PA_GetnonMSInfo The HDF attribute waves are now called InfoValText etc. * PA_LoadConCatRunInfo The folder where the original hdfs live can now also have intermediate files with the code getting confused. * PA_FastModeFillInStartStopRun Now incorporates the user-settable wave to determine partition start & stop. ----------------------------------------------------------------------------------------------- Update since ToF-AMS HR Analysis Toolkit v1.14 Notes by Donna Sueper 4 Nov 2014 * The change that most people will notice is that some intermediate files will be smaller. This has to do with changing the way the HR sticks are written to be a default number of columns (a multiple of 200). Users should not notice any difference in performance otherwise. * There is not a HR CDCE panel and associated functionality. It behaves just like the UMR version, but should be more accurate because HR NH4 is more accurate. * Users will notice that the HR_Results tab is less crowded - a subtab was created to organize things more clearly. ------- PK_Backbone ------- Modified Functions: * PK_MS_concentration Changed code to account for when old data sets have nan values for TimeMSOpen and TimeMSClosed. * PK_diffCalc Changed code to write HR sticks as a fixed number of columns (a multiple of 200). * HR_PeakWidthSanity Now gives users more feedback to help find runs where there may be a problem. * HR_PeakShapeSanity Now gives users more feedback to help find runs where there may be a problem. * HR_CalculateSticksSQ Uses the wave root:diagnostics:nSecMSsamplingInterval for non 1GHz sampling and flags when it is missing. Also, changed code to write HR sticks as a fixed number of columns (a multiple of 200). * PK_HeightToAreaMatrix Changed code to write HR sticks as a fixed number of columns (a multiple of 200). * HR_CalcSticksOneRun Added a check for when the mz calibration gives negative mass values (intercept > 0). * HR_SticksOneRun_prep Added more sanity checks to make sure the raw spectra (open and closed) have the same number of points. * PK_TotalCountingErrors Changed code to write HR sticks as a fixed number of columns (a multiple of 200). Fixed a small bug having to do with when the FastKey wave does not exist. * PK_CreateElementWaves Added many Metals to the periodic table. * PK_recalc_IonMasses Changed text search for "in" because we can now have the HR ion In. * PK_duplicate_FitTodoWaves Changed how PToF HR sticks operate... no longer do we automatically calculate the difference, we can and should do it later, not in the midst of fitting. * PK_IndexHRResultsWavesFitTodo ECB suggested a fix having to do with PToF HR sticks, but now there are done differently. * PK_WavesForHRResults Fixed a bug having to do with HR PToF * PK_TotalCountErr_CheckFor Added a call to sq_checkSamplingTimeVals, a squirrel function that tries to head off any sampling time values of negatives or zeros. * sq_UMRBaselineSticks Adds a check in case the mz calibration gives negative values for mz (intercept >0). * HR_GetMzDist Adds a check in case the mz calibration gives negative values for mz (intercept >0). * pk_interpRawErrorFetch Adds a check in case the mz calibration gives negative values for mz (intercept >0). * HR_SignalErrors_CheckFor Added a call to sq_checkSamplingTimeVals, a squirrel function that tries to head off any sampling time values of negatives or zeros. ------- PK_elemAnal ------- Modified Functions: * HR_calc_EARatios The elemental analysis can now be done on a variety of HR stick data sets, not just HROMinusC. * HR_EACalibrateRatios Added Manjula's ACP 2014 'improved' calculation using fCO and fCHO. * HR_plot_EARatioTimeSeries Added text to assure users when ACP2014 improved calculation has been applied. * gen_GetListOfDataFolders Added a statement to set the current data folder to root. ------- PK_Frag ------- New Functions: * HR_FD_Check_batchCOCHO Created as a helper to the new Elemental Analysis correction. It checks to see if HROrgCO and HROrgCHO exist * HR_FD_modifyBatch Created as a helper to the new Elemental Analysis correction. It adds lines to the batch table and uses the input parameters. Modified Functions: * HR_SQvsPK_calcWaves Changed code to load the precise number of HR sticks (truncate the last mod(*,200) columns. ------- PK_elemAnal ------- New Functions: * SticksGr_check_ShowLinesBetween Added a function to optionally show or not show lines between raw data points in the main Pika fits graph. * sq_ck_PToFStickOrRaw Within the panel for creating PToF groups, one can now opt to use sticks instead of raw. * HR_calcplot_TSMSMatriciesFGrp Now users can export a single family for HR PMF. * HR_calc_TSMSMatriciesFGrp Worker function for HR_calcplot_TSMSMatriciesFGrp * pk_SumSpectraToFamilies Worker function for HR_calc_TSMSMatriciesFGrp * pk_FillInFamilyDesignation Given any list of HR ions, fills in a wave indicating which family it belongs to. * pk_FindHRionExceptions Worker function for pk_FillInFamilyDesignation * HR_plot_TSMSMatriciesFGrp Worker function for HR_calcplot_TSMSMatriciesFGrp * pk_Kill_HR_ms_mats The HR analog to the UMR kill mats function. Currently not called from another function, is left around for posterity. * pk_CreatePhaseDepCE Creates the HR version of the phase dependent CE panel * pk_butt_CalcTS_CDCE An HR version of the CDCE panel. * pk_butt_CENH4AcidityGr An HR version of the CDCE panel. * pk_butt_Calc_CDCE An HR version of the CDCE panel. * pk_CalcHRCE_fPhase An HR version of the CDCE panel. * pk_calcCDCE_extras An HR version of the CDCE panel. * pk_butt_CEAdvPanel An HR version of the CDCE panel. * pk_create_CEis1_TSgraph An HR version of the CDCE panel. * pk_CEpaperURL_buttonProc An HR version of the CDCE panel. * pk_CETabProc An HR version of the CDCE panel. * pk_plotCEGrs An HR version of the CDCE panel. * pk_populate_CETSGraph An HR version of the CDCE panel. * pk_populate_CECorrGraph An HR version of the CDCE panel. * pk_populate_CEHistGraph An HR version of the CDCE panel. * pk_CE_ButtonProc An HR version of the CDCE panel. * pk_CEHelpButtonProc An HR version of the CDCE panel. * pk_butt_reviewNH4RIE An HR version of the CDCE panel. * pk_populate_CEfphaseTable An HR version of the CDCE panel. * pk_populate_AcidityHistGraph An HR version of the CDCE panel. * pk_populate_ANMFHistGraph An HR version of the CDCE panel. * pk_populate_OrgMFHistGraph An HR version of the CDCE panel. * pk_populate_ANMFOrgMFHistGraph An HR version of the CDCE panel. * pk_populate_RelHumHistGraph An HR version of the CDCE panel. * pk_populate_NH4DetLimHistGraph An HR version of the CDCE panel. * pk_butt_CETypeFlagLegend An HR version of the CDCE panel. * pk_butt_HRionTableThis An HR version of the CDCE panel. * HRResults_TabProc A new tab for the HR Results. Visually cleans things up a bit. Modified Functions: * HR_globals Added a few new variables and killed some obsolete ones. * HR_Analysis_Panel_Create HR results tab cleaner. * HR_initializePopupsPanel Changed the name of the diurnal whiskers control. * HR_butt_CalcSticksForThisRun Checks for the existence of root:diagnostics:nSecMSsamplingIntervalfor non 1GHz sampling. * HR_butt_CalcExactMassSticksTodo Now the user is able to calculate HR sticks on all PToF raw data sets (instead of doing them one by one). * pk_EstimateItofMinMax Adds a check in case the mz calibration gives negative values for mz (intercept >0). * HR_pop_getVariable Added a perhaps unnessary assignment statement (Pedro problems). * HR_plotPeakHeightsOneRun Reordered som traces on the main Pika plot. * HR_tabProc Added code to initialize HR Results sub tab correctly. * HR_butt_MS_Calc Added check for ACP 2014 improved elemental analysis calculation. Added code to retrieve the correct number of HR columns. Added the ability to generate time series mass spec 2d matricies for families. * HR_MSCalc_Diurnals Changed the name of the whisker control and variable to be root:HR_panel:HRResultsT_whisker * HR_MSplot_DiurnalBoxPlot Changed the name of the whisker control and variable to be root:HR_panel:HRResultsT_whisker * HR_butt_TableHRIonsTodoFit Minor code rearranging to prevent an empty table. * HR_oneHRIonElementalComp Changed text search for "in" because we can now have the HR ion In. * HR_getAllIsotopicChildren Fixed a small bug when there is only one element and mutiple atoms, i.e.e C3. * HR_ck_OneSpectraMSorPToF Changed the functionality to check for single or multiple PToF data sets. * PToF_DataSetPanel Changed functionality to allow PToF stick data sets. * PToF_dataSetListBox Changed functionality to allow PToF stick data sets. * PToF_butt_CreateDataSet Changed functionality to allow PToF stick data sets. * PToF_SaveDataSet Changed functionality to allow PToF stick data sets. * HR_pop_getStickDataSet Changed functionality to allow PToF stick data sets. * HR_make3DColorWave Removed extra code. * HR_buttPToFOMinusClosed Did not change code that ECB wanted. * HR_plot_VanKrevelen Modified for use of ACP 2014 correction. * HR_pop_getStickErrSet Fixed Pedro issue where the error popup menu wouldn't set correctly. ------- PK_PartitionAvg ------- No change. ------- PK_peakShape------- Modified Functions: * PW_PeakWidthShapePanel Change code so that the currently selected todo wave is the default todo menu option. ------- PK_UnitMassSpec------- Modified Functions: * UM_GenerateAxByMaskWaves Now calls pk_FindHRionExceptions for possible future use of waves for exceptions. ----------------------------------------------------------------------------------------------- Update since ToF-AMS HR Analysis Toolkit v1.13 Notes by Donna Sueper 26 June 2014 * Most important change is for ADQ card users. Previous versions of the code had incorrectly accounted for nonGHz sampling rates. * A typo in the HR frag entry was changed from 0.04*HR_frag_nitrate[{NO}],0.04*frag_nitrate[{NO2}] to 0.04*HR_frag_nitrate[{NO}],0.04*HR_frag_nitrate[{NO2}] ------- PK_Backbone ------- Modified Functions: * HR_CalculateSticksSQ Changed code to account for non 1GHz sampling * HR_CalcSticksOneRun Changed code to account for non 1GHz sampling * HR_SticksOneRun_prep Added a sanity check for Fast mode * PK_TotalCountingErrors Added code to use fast mode open time for calculating fast mode closed errors * PK_duplicate_FitTodoWaves Added code to use for when users don't do MS HR pika, only PToF HR pika * sq_UMRBaselineSticks Changed code to account for non 1GHz sampling ------- PK_peakShape ------- * PW_PeakWidthShapePanel() Added code to check for the last useage of the line or power fit for peak widths ------- PK_gr_table ------- * HR_butt_CalcSticksForThisRun Changed code to account for non 1GHz sampling * HR_calc_MSAvg Fixed a normalized spectra bug * HR_plot_MSAvg Fixed a normalized spectra bug * HR_calc_TSeriesMSMatricies Added capability to use non AMS saved time intervals * HR_butt_updateMaskWave Added code to make sure we add or remove isotopic children when a nan HR ion is added or removed * HR_butt_MS_Calc Fixed a minor bug that happened when you requestedfamilies and species ------- PK_frag ------- No change ------- PK_elemAnal ------- No change ------- PK_UnitMassSpec ------- No change ------- PK_PartitionAvg ------- No change Update since ToF-AMS HR Analysis Toolkit v1.12 Notes by Donna Sueper 11 May 2014 ------- PK_Backbone.ipf------- New Functions: * HR_butt_SigIonCountErr Added button in panel for calculating TotSigErr * HR_SignalErrors_CheckFor Added button in panel to see if the TotSigErr have already been calculated. Modified Functions: * PK_MS_concentration Changed the code to use root:diagnostics:TimeAcquiringMSOpenInRun etc instead of root:diagnostics:TimeMSOpen * HR_CalculateSticksSQ_prep Made waves calculating when HR ions are within +/- 4 peak width units away from each other. * HR_CalculateSticksSQ Added code so that one could skip the HR fitting of one spectra before fitting a todo wave. Also added code for the calculation of TotSigErr. * HR_CalcSticksOneRun Added code so that one could skip the HR fitting of one spectra before fitting a todo wave. * PK_TotalCountingErrors Added ExactMassWave to code to allow for TotSigErr calculations as well. * HR_ExpandUMR2HR Fixed bug whereby duty cycle correction used incorrect m/z! * PK_CreateElementWaves Added sanity check that element waves have the same number of points. * PK_TotalCountErr_CheckFor Added ExactMassWave to code to allow for TotSigErr calculations as well. * sq_UMRBaselineSticks Added code for number of ns between raw spectra points... turns out it was not needed. * pk_interpRawErrorFetch No longer needed but kept for possible future comparison. ------- PK_elemAnal.ipf------- * HR_plot_EARatioTimeSeries Added axis legend to the left axis. * HR_CompareAllMassedWaves Added code to check that HR ions are in nice order... CHONS. Fixed a bug when comparing two sets of HR ions. * gen_CompareTextWaves Added code to check that HR ions are in nice order... CHONS. * HR_DataFolderPopMenuProc Checked 'tag' wave as well. * HR_Compare_ShowTableButtonProc Removed the code that changes the popped table. * HR_populate_UnfitIsoTable Added the abundance wave to this table. ------- PK_frag.ipf------- * HR_butt_ChangeHR4BC Change code so that if dealing with SP AMS family Cx is no longer in HROrg. * sq_make_rBC_UMR_fragNbatchWaves Set an arbitrarily large m/z value to be 3000. ------- PK_gr_table.ipf------- * HR_ConvertTextToTag Creates or overwrites tag wave. Previous versions did this on the *all wave automatically. This is more flexibe. * pk_CheckAtomOrderButtonProc An orphaned function; possible later use for future HR ions. This checks that an HR ion is is proper name order; C4H6O3N instead of C4H6NO3. * pk_SortAllHRionsTextByCHONS An orphaned function; possible later use for future HR ions. This checks that an HR ion is is proper name order; C4H6O3N instead of C4H6NO3. * pk_SortHRionTextByCHONS Code added to check comparison of two HR ion lists. This check that for example CNO and CON are not flagged as different. * pk_AtomOrder Creates ElementIonNameAtomOrder that indicates which atoms are in best CHONS order, is needed for pk_SortAllHRionsTextByCHONS * pk_PeriodicTableMassOrder Changes ElementIonName etc to increasing mass order * HR_plot_VanKrevelen New plot when user requests HR elemental ratios. * HR_findConstrainedFlag Fills in wave ConstrainedKey when an HR isotope is constrained. * HR_pop_getStickErrSet Updates popup menu in HR panel * HR_updateHRErrList Finds all HR errors so far calculated. Modified functions: * HR_globals Changed some wording on panels, initialized root:HR_panel:PToFMinusStr * HR_Analysis_Panel_Create Added button for calcualting HR*TotSigErr * HR_butt_CalcSticksForThisRun For users of DAQ5, the timeMSOpen is no longer appropriate to use when finding the time spent in this mode. TimeAcquiringMSOpenInRun is now used instead. * HR_butt_CalcExactMassSticksTodo Added the automatic calculation of TotSigErr * HR_calc_TSeriesMSMatricies Fixed a bug where as the paramStr was not at times initialized correctly. * HR_ConvertExactMassName Most of this code was moved to HR_ConvertTextToTag * HR_butt_UpdateNewExactMass Added a sanity check for when the HR ion calculator not initialized yet. * HR_butt_setResultsList Added code to check for black carbon data. * HR_oneHRIonElementalComp Added CHONS element order functionality. * HR_IsotopeSubset Fixed a small bug that resulted in wrong number of entities in myAandBtext grouping. * HR_getAllIsotopicChildren Major upgrade in how this was caclulated. Nicer code :) * HR_RemoveHRIonsOfNumElem Added some code for debugging * PW_PeakWidthShapePanel Changed the default PW function to be power instead of line ------- PK_PartitionAvg.ipf------- No change. ------- PK_peakShape.ipf------- No change. ------- PK_peakShape.ipf------- * HR_ExtractIsotopicValues Added code to find constrained isotopes. High ResolutionToF-AMS Analysis Toolkit v1.12 2013 Fall Users Meeting Release Update since ToF-AMS HR Analysis Toolkit v1.10 Notes by Donna Sueper 13 Aug 2013 Upgraded to Squirrel 1.53 because the UMR errors had a bug. Update since ToF-AMS HR Analysis Toolkit v1.10 Notes by Donna Sueper 10 Oct 2012 * Added the ability to perform pika on PToF spectra * Added the to use smoothly varying peak widths (time dependent) ------- PK_Backbone.ipf------- New Function: * HR_GetMzDist Gets the histogram of points for an integer m/z for several run. Not currently used, but may be in the future. * HR_GetPointDeltaHistogram With HR_GetMzDist, examines peak widening with drifting m/z Not currently used, but may be in the future. Modified Functions: * PK_MS_concentration Added CE_corr to functionality and User Defined Hz functionality Automatically kills some temporary frag waves * HR_CalculateSticksSQ_prep generates some global variables not existing in Igor 6.22 * HR_CalculateSticksSQ Added varying peak width functionality * HR_SticksOneRun_prep Added functionality for MS or PToF * PK_TotalCountingErrors Added varying peak width functionality * PK_CreateElementWaves Added some more isotopes to the master periodic table * PK_duplicate_FitTodoWaves Added functionality for MS or PToF * PK_IndexHRResultsWavesFitTodo Added functionality for MS or PToF * PK_FindHRResultsWavesFitTodo Added functionality for MS or PToF * PK_WavesForHRResults Added functionality for MS or PToF * PK_CopyHRIonWavesFitTodo Added functionality for MS or PToF * PK_TotalCountErr_CheckFor Added varying peak width functionality ------- PK_elemAnal.ipf------- Modified Functions: * HR_calc_EAMassSpec Modified code to allow for non HROrg species * HR_plot_EAAvgMassSpec Modified code to allow for non HROrg species * HR_calc_EARatios Fixed small display bug, stack on next * HR_EAatomicMassSeparation Modified code to allow for non HROrg species ------- PK_frag.ipf------- New Functions: * pk_MakeListOfHRionsInRange Handled family exceptions better * HR_SpecShortLongName Creates text waves matching short and long names, i.e. organic and Org Modified Functions: * HR_generateFinalFrags Requires list of frags to parse instead of parsing all of them * HR_generateFinalFrags() Requires list of frags to parse instead of parsing all of them * HR_convertFragInstances Requires list of frags to parse instead of parsing all of them * HR_createTempSpeciesMask Requires list of frags to parse instead of parsing all of them * HR_fragList_convert Added User Defined Hz functionality * HR_getParamStr Added CE_corr waves * HR_butt_HRfragTable General cleanup * HR_butt_HRbatchTable General cleanup * HR_CheckListForHRSpecies Added Sanity check * HR_SQvsPK_calcWaves Checks CECorr waves * PK_ConvertPartialFrags Requires list of frags to parse instead of parsing all of them New Function: * HR_GetMzDist Gets the histogram of points for an integer m/z for several run. Not currently used, but may be in the future. * HR_GetPointDeltaHistogram With HR_GetMzDist, examines peak widening with drifting m/z ------- PK_gr_table.ipf------- New Functions: * File contains 209 functions (18 unique) * HR_PeakHeightsGr_labelYaxis Changes the y labels on the main Pika graph for MS or PToF data * pk_SetIsIsotopeWeighting Creates 2 waves in the HR_frag folder indicating when an HR ion is an isotope and how many children it has * HR_HandleDollarSignHRFrag Just like in the squirrel batch table, converts the use of $ for the total species. * HR_smartConvertFrags Instead of converting all HR species, only converts those requested, and any dependent species. * HR_generateConvergeFragList Instead of converting all HR species, only converts those requested, and any dependent species. Returns a string of other HR_frags that are depedent via the HR frag table. * HR_FindHRfragDependencies Returns a string of other HR_frags that are depedent via the HR frag table. * HR_collapseHRfragSyntaxToList Helper function for HR_FindHRfragDependencies * HR_ck_OneSpectraMSorPToF Checkbox control on main Pika panel for choosing whether you look at MS or PToF data. * PToF_DataSetPanel Generates PToF Data set panel * PToF_dataSetListBox Control function on PToF data set panel * PToF_butt_CreateDataSet Button on PToF data set panel for creating ptof data sets. * PToF_SaveDataSet A fetch function that saves a PToF data set * HR_pop_getStickDataSet Updates popup menu on HR Results tab * HR_updateHRStickList Helper function for HR_pop_getStickDataSet to set a global string with all the HR fitted data sets PK_Butt_CopySticksOneSpectra Button function on main Pika panel for copying the results of an single pika fit (for averaged spectra) * pk_ck_PToFSingleOrMany Function on PToF data ste panel that indicates whether to generate single or multiple PToF data sets. * HR_PToF_ChooseDataSet For main Pika panel, updates list of data sets to choose from Modified Functions: * HR_globals Added new globals for PToF * HR_Analysis_Panel_Create Added controls for PToF * HR_butt_CalcSticksForThisRun Changed to accomodate PToF data * HR_butt_CalcExactMassSticksTodo Changed to accomodate PToF data * HR_calc_TSeriesMSMatricies Can now optionally remove isotopes (for PMF use) * HR_plotPeakHeightsOneRun Changed to accomodate PToF data * HR_butt_AddThisHRIon Fixed a bug that didn't automatically add HR ion's isotopic children * sq_RainbowizeTraces Moved Rainbow color wave to squirrel panel data folder * sq_MakeRainbowColorTable Moved Rainbow color wave to squirrel panel data folder * UM_GenerateAxByMaskWaves(root:HR_sticks:ExactMassText, "") Added CSi family and the ability to specify a family through a text wave * HR_tabProc Changed to accomodate PToF data * UMR_plot5GraphSummary Small bug fix for when family waves don't exist * PK_butt_5FamilyMSGraph Added code so that the family waves are recalculated every time * UM_GenerateAxByMaskWaves 1.10C addition so that family definitions are recalculated * HR_butt_ConvertedFrags Now only converts species requested not all of them * HR_butt_MS_Calc Added code for PToF data * PK_exportForDataBase Added code to optionally remove isotopes * HR_butt_TableHRIonsTodoFit Added code to be aware of current data set (could be PToF) * HR_butt_HRSpeciesFitTodoTable Instead of converting frags of all HR species, only does it for HROrg * HR_butt_setResultsList Added code to remove possible duplicates from list * HR_massCalcGlobals Changed default isotope minimum to 1e-10 * HR_findIsotopAbund Fixed small bug when string is empty * HR_butt_SetHRChoices2Todo Changed to now also recalculate family designations ------- PK_PartitionAvg.ipf------- No change ------- PK_peakShape.ipf------- New functions * pw_fitPWToSmoothlyVaryingPW Added code to smooth peak widths * pw_smoothSelectedPWs Does the work of pw_fitPWToSmoothlyVaryingPW * pw_smoothOnePW Does the work of pw_smoothSelectedPWs * pw_displaySmoothSelectedPWs Appends smooth wave to pw graph * pw_TimeVayingPW_butt Button from peak width tab, Advanced Users section * pw_smoothPWButtonProc Button from Peak width graph to do smoothing * pw_SetHRionPWtoAvgButtonProc Control on peak width graph * pw_DoFitsForTimeVaryingPW_butt Control on peak width graph * pw_AddControlsToPWGraph Add controls to peak width graph for smoothing and averaging * sq_ShowOnlyForThisTodoPopMenu A generic function for updating popup menus to fill in waves that exist in top plot Modified functions * PW_butt_RemoveTheseRuns Fixed small printing bug * PS_createGlobals Changed defaults to select HR ions for left and right shape * PW_butt_PWParamGraph Added controls for viewing individual HR ions * PW_butt_DeclarePWParams Added option for time-dependent peak width * PS_butt_confirmTodo Added option for viewing average peak width ------- PK_peakShape.ipf------- Modified Functions * UM_GenerateAxByMaskWaves Added code to generate a CSi family Update since ToF-AMS HR Analysis Toolkit v1.09G Notes by Donna Sueper 24 Feb 2011 * Fixed a bug that had to do with ion counting errors. Previously calculated errors were incorrect. If used in a PMF analysis, the higher masses were given an incorretly low error value. * Ion Counting errors now include baseline errors. The name of the data set is now HRTotalOMinusCIonCountErr (the bad, old errors were named HROMinusCIonCountErr). * There is a new button in step 4 for the calculation of these new errors. Users do not have to recalculate their HR sticks, but they must have already recalculated their unit resolution sticks with the baseline option checked. * Added functionality to the batch table to allow Org43, and OrgCO2 entries. Users are encouraged to follow these examples to create new batch entries is needed. * Removed old, obsolete options and cleaned up some tabs. * Added functionality in the HR ion query tab of the mass calculator to find and optionally select/deselect to fit related HR ions. * Added an option to create an itx of all pertinent waves for a PMF analysis. ------- PK_elemAnal.ipf------- Modified Functions: * HR_calc_EAMassSpec Now returns a string of the waves that were created. * HR_plot_EAAvgMassSpec Moved the normalization code elsewhere for modularity. ------- PK_Backbone.ipf------- New Functions: * PK_TotalCountingErrors Now includes unit resolution baseline sticksin the calculation of errors. * PK_getHRPeakWidths A helper function that puts the peak width parameter values used in the HR fits of a todo wave. * HR_ExpandUMR2HR A helper function that takes 2d matricies where the columns represent unit res and 'expands' them so that the columns match the list of HR ions that were fit for a todo wave. * gen_TextWavesTheSame A general purpose function that checks to see that 2 text waves have the same values. * HR_butt_totalIonCountErr A new button in the HR fit many runs tab that allows the correct calculation of the HR ion counting errors. * PK_TotalCountErr_CheckFor Checks to see if the squirrel baseline sticks have been calculated - if not calculate them and calculate the total ion counting error. * sq_UMRBaselineSticks A method for calculating the squirrel baseline stick values if they haven't already been found. Modified Functions: * HR_MakeRawSpectra Removed the option for uses to do HR on raw spectra without the baseline removed. * HR_CalculateSticksSQ_prep Added HR sticks for the pika (found sticks) to sit atop of the baseline. * HR_CalculateSticksSQ Changed the code so that we never calculate or use 'pete's' baselines, and we calculate the peak heights for squirrel baseline sticks. * HR_CalcSticksOneRun Removed the option for uses to do HR on raw spectra without the baseline removed. * HR_SticksOneRun_prep Removed the option for uses to do HR on raw spectra without the baseline removed. * PK_CreateElementWaves Expanded to include elemental isotopic parents for calculation. * PK_checkMassWithChemFormula Minor bug fix for the wave inVorWnameTemp * PK_duplicate_FitTodoWaves Now also saves which isotopes were constrained. * PK_FindHRResultsWavesFitTodo Now also retrieves which isotopes were constrained. * PK_CopyHRIonWavesFitTodo Now also saves which isotopes were constrained. ------- PK_frag.ipf------- New Functions: * pk_ConvertPartialFrags Added code for the conversion of 'partial frags' like HROrg44, etc. Modified Functions: * HR_generateFinalFrags Modified code so that a message about ion not fit is not printed so often. * HR_fragList_pass Now calls pk_ConvertPartialFrags. * HR_getParamStr Now handles partial frags like HROrg44 etc. * HR_fragTable Now handles partial frags like HROrg44 etc. * HR_SQvsPK_calcWaves Adds a sanity check so that it never normalizes spectra. * HR_populate_SQvsPkMSCorrGraph Fixed bug where old code a one to one line many times. * HR_populate_SQvsPkTSCorrGraph Fixed bug where old code a one to one line many times. * gen_removeTracesFromGraph Got rid of old kludge for removing multiple traces. ------- PK_gr_table.ipf------- New Functions: * HR_DisplayHRFailWins New function for making a table of runs and m/zs that didn't converge to a fit. * PK_FindMassFromFormula Given a string such as "C3H6O2" determines the mass * HR_butt_FindIsoDiscrepancy Checks the isotopic ratio in the table with a calculated value. * PK_ProbIsoTable Displays a table of HR ions whose isotopic ratio in the table is different from that calculated. * PK_ProbMassTable Displays a table of all the HR ions for which the mass in the table is different from that calculated. * HR_butt_TableHRIonsTodoFit Button for displayin the ions that were fit in a todo wave. * HR_butt_HRSpeciesFitTodoTable Button for displayin the ions that were fit and those identified in a species wave in a todo wave. * HR_GenerateFamilyExceptionLists Returns two strings exceptionFamilyList, exceptionMassList from the HR batch table. * HR_returnGrouping For a given fragment, return the family the algorithm wants to put it in * HR_CalcPlot_MSAvgSpeciesGrouped Calls HR_Calc_MSAvgSpeciesGrouped and HR_plot_MSAvgSpeciesGrouped * HR_Calc_MSAvgSpeciesGrouped For a given species, calculates the average mass spectra, then groups the HR ions into family-like categories. * HR_plot_MSAvgSpeciesGrouped Plots the results of HR_Calc_MSAvgSpeciesGrouped * UM_SumHRSpeciestoGroupsUMR When the user wants a family grouped species, allows for summing to UMR * HR_CalcPlot_5PanelHRSpecies Calls HR_Calc_5PanelHRSpecies and HR_plot_5PanelHRSpecies * HR_Calc_5PanelHRSpecies Calcs the 5 axis plot but only with fitted HR ions, not HR species * HR_plot_5PanelHRSpecies Plots the results of HR_Calc_5PanelHRSpecies. * sq_NormalizeSpectra Users can now normalize spectra. * HR_massCalcGlobals Separate function for the big & improved HR ion calculator. * HR_findIsotopesToFit Finds isotopic children from parents that have a minimum isotopic abundance. * HR_oneHRIonElementalComp Breaks down an HR ion name ("C4H3O2") and sets several waves for later use * HR_findIsotopes_Tolerance Using waves set in HR_oneHRIonElementalComp, finds isotopic children. * HR_extractHRIonNamePart Returns part of HRIonName with element X removed. * sq_inTextWave1InTextWave2 Given two text waves returns a wave of indicies where one is in the other. * HR_populate_IsotopChildrenTable Puts waves in iso. children table. * HR_findIsotopAbund For a given HRIonStr, returns an abundance based on the ratio of it's parent * HR_findIsotopParent For a given HRIonStr, returns it's isotopic parent. * HR_addWavesToAll Adds HR ions in certain waves to the *_all waves. *HR_change2FitHRIon For a given wave of HR ions, changes the mask wave to fit. * HR_butt_AddListToAll Button for HR_addWavesToAll. * HR_butt_FindIsoChildrenForAll Button on mass calculator for finding all isotopic children. * HR_IsotopeSubset Code used to reduce the list of displayed isotopic children based on inclusion into ions that were chosen, etc. * sq_KillWavesInList Generic function for killing all waves in a given list. * HR_getAllIsotopicChildren Does the work of HR_butt_FindIsoChildrenForAll * gen_partialstringfromList Used for the management of many family waves, such as when we perform a family-colored avg mass spec. HR_butt_ShowPkHtsGr * New button for bringing to the front the Peak Heights graph. * HR_SqVsPk_OneRun_Panel A modified version of the SQ vs PK panel for todos. Shows spectra and correlations. * HR_plotSqVsPk1RunGrs Handles the 4 plots for the SQ vs Pk one run panel. * SqVsPkOneRunTabProc Tab function for the SQ_VS_PK for one run. * HR_populate_SQvsPk1MSGraph For the SQ vs Pk one run panel. * HR_populate_SQvsPk1MSCorrGraph For the SQ vs Pk one run panel. * HR_SqvsPk_CheckProc_leftAxisLog For the SQ vs Pk one run panel. * HR_SqvsPk_CheckProc_allAxisLog For the SQ vs Pk one run panel. * gen_RemoveNaNs Generic procedure for getting rid of nans in a 1D wave. * HR_FindRelatedHRIonSuffix Finds all HR ions that are related by a C, CH, or CH2 fragment for a given HR ion. * HR_MassCalcQueryHRionTab Tab function for the new and improved mass calculator. * HR_populate_QueryTable Makes table for mass calculator. * HR_ChemFormFind Finds HR ions that have x many Cs, y many Os, etc. * HR_RemoveHRIonsOfNumElem generic function for finding elements such as C but not Cu, Ca, etc. * HR_QueryCheckType Checkbox procedure for indicating what kind of HR ion search to perform. * HR_checkProc_massCalc Checkbox control for indicating what subset of HR ions to search for. * gen_TextWave2List Returns a list of elements in a text wave. * gen_List2textWave Overwrites a wave with the items in a list. * gen_SameInBothLists Returns a string with common list entries. * gen_InListANotListB Obvious. * HR_butt_SetHRChoices2Todo New button that allows a user to 'reset' the list of ions to choose from a list of HR ions that were fit from todo wave. * HR_butt_QueryHRionChemForm Button on mass calculator. * HR_butt_Add2ListOrChange2Fit Button on mass calculator. Modified Functions: *HR_getHRwin Changed to also display squirrel panel so no error is generated when the pika panel sets todo wave. * HR_globals Various new global strings, variables. * HR_Analysis_Panel_Create Tried to declutter. Big change to Ion Groups tab. * HR_panel_credits Changed affiliations for Pete, Allison. * HR_butt_CreditsURLPetePaper Changed url to pdf. * HR_butt_CreditsURLAllison1Paper Changed url to pdf. * HR_butt_CreditsURLAllison2Paper Changed url to pdf. * HR_butt_CreateMSDiffp Removed the option of using raw spectra without the baseline removed. * HR_butt_CalcSticksForThisRun Now calculated Pika baseline peak heights for use in display. * HR_butt_CalcExactMassSticksTodo Removed the option of using raw spectra without the baseline removed. * HR_calc_TSeriesMSMatricies Added code for the creation of a PMF itx for export. * HR_calc_5PanelSummary Added the ability to normalize spectra. * HR_plot_5PanelSummary Added awareness of normalized spectra. * HR_plotPeakHeightsOneRun Added pika baselin peak heights. Got rid of older bits. * HR_addThisMass Now returns a string of the newly added mass. Fixed a bug whereby HR name got capitalized. * HR_butt_AddThisMass Button for HR_addThisMass on PeakHeights_gr * HR_butt_AddThisHRIon Button in mass calculator panel for adding an HR ion to the all wave. * HR_reCenterAmu Got rid of mass spectra insets checkbox. * HR_calcGausFitWaves Pika peak heights not sit on top of the pika baseline peak heights. * HR_butt_setResultsList Small bug fix for correctly clearing HR ions list. * HR_populate_IsotopesTable Fixed bug whereby users weren't allow to not constrain an isotope. * HR_tabProc Got rid of APES pic because it was too squished. Boo hoo. * HR_butt_ViewHRIntegerSpectra Button for HR_SqVsPk_OneRun_Panel() * HR_populate_ChemFormTable For the mass calculator panel. * UMR_plot5GraphSummary Changed axis label from Inorganic to hopefully avoid folks from thinking the frag table has been applied. * HR_butt_MakeExactMassWaves A function that it calls, UM_generateAxByMaskWaves, now requires a wave. * HR_ck_ChemFormFind Updated options for finding subset of ion that were chosen, etc. * HR_plotAllHRGrpPlots All HR ion table now takes upmost of the space on the Ion Groups tab. * HR_populate_ChosenMassesTableX A function that it calls, UM_generateAxByMaskWaves, now requires a wave. * HR_butt_MS_Calc Added an option for normalizing spectra. * PK_exportForDataBase Adds minimum ion error to other waves that were saved. * HR_butt_HRFitFailTodo Fixed bugs whereby it only checked the Open data set, not closed also. * HR_butt_CalcMassOneHRIon Really overhauled the functionality of the mass calculator. * HR_butt_massCheckAllIons Really overhauled the functionality of the mass calculator. * HR_butt_IonMassCalculator Really overhauled the functionality of the mass calculator. ------- PK_PartitionAvg------- No change. ------- PK_peakShape------- Modified Functions: * GF_butt_GFsTodo No longer allows using raw spectra without the baseline removed. * PW_NewGlobals No longer allows using raw spectra without the baseline removed. * PW_PeakWidthShapePanel Fixed a typo. * PW_butt_showPWOneRun No longer allows using raw spectra without the baseline removed. * PS_butt_PeakShapeAllMassTodo Added a sanity check for bad m/z parameters. * PS_PeakShapeAllMassTodo No longer allows using raw spectra without the baseline removed. ------- PK_UnitMassSpec ------- Modified Functions: * UM_DoAllCalcsForIntMassSpectrum A function that it calls, UM_generateAxByMaskWaves, now requires a wave. * UM_GenerateAxByMaskWaves Now requires that the wave of HR ion names be given as a parameter. Update since ToF-AMS HR Analysis Toolkit v1.09G Notes by Donna Sueper 14 Jan 2011 * smallish bug fixes for peak heights panel. Updated All mass list values and added new entries in the HRfrag table for CO2. Added new functionality for mass calculator and HR frag waves. Update since ToF-AMS HR Analysis Toolkit v1.09F Notes by Donna Sueper 22 Nov 2010 * Updated squirrel panel ipf to 1.50F. Updated the element ion waves, the mass calculator, the HR Results tab, HRfrag waves to include j13CO. Notes by Donna Sueper 15 Sept 2010 ----------Begin In a Nutshell---------- * Rearranged, grouped, renamed controls in HR Results tab * Modified code such that if raw spectra does not exist and is detected during an HR pika fit of a todo wave, an error is printed to the history instead of aborting mid-execution. * Upgraded SQ_AMSPanel ipf to 1.50A due to a bug which prevented the calcs of average raw spectra that crept in in 1.50 * Very slight modification of HR_frag_pCO2 entries: 0.01112*HR_frag_pco2[{CO2}] is now 0.01081570*HR_frag_pco2[{CO2}] 0.004*HR_frag_pco2[{CO2}] is now 0.00410998*HR_frag_pco2[{CO2}] Update since ToF-AMS HR Analysis Toolkit v1.09 Notes by Donna Sueper 8 Sept 2010 * Fixed a few small bugs discovered at the users mtg. * Added a family-colored UMR single HR species button (useful for the HRorg species) High ResolutionToF-AMS Analysis Toolkit v1.09 (2010 Users Meeting Release) Update since ToF-AMS HR Analysis Toolkit v1.08C Notes by Donna Sueper 16 Aug 2010 ----------Begin In a Nutshell---------- * Added the ability to retain a copy of all the HR ions that were fit for a todo wave. This means that one can 'play', can edit the list of ions to fit for a single spectra (step 4) and not have to worry about having to redo the time-consuming step of fitting all HR ions again for a todo. * Added the ability to find and check the exact mass values of any or all HR ions from their formula. * Added the ability to export the root:HR:ExactMassWave_all etc waves from an experiment for easy import into another experiment (to assure that one is fitting the same set of HR ions). * The list of ions to fit be default has changed such that only N2 is fit at 28, only O2 is fit at 32. Added HR ions CH5O,CHO2, j13CC2H7O2 to the list of all ions. ------- PK_Backbone_1_09.ipf------- New Functions: * PK_CreateElementWaves Uses waves compiled by Qi Chen to create elemental mass waves. These waves are used to caluclate exact mass values from their (pika-formatted) formulas. * PK_recalc_IonMasses Does the work of HR_butt_massCheckAllIons. Recalculates the masses of all the ions in the "ExactMassText_all" waves. Warnings in the history appear when the mass calculated from its formula is different from the given mass. * PK_checkMassWithChemFormula Does the work of HR_butt_massCheckAllIons * PK_duplicate_FitTodoWaves Makes copies of important waves after the HR fitting of a todo wave has been completed. Duplicated waves are in the HR_Sticks folder and have a _FitTodo suffix. * PK_FindHRResultsWavesFitTodo Given a todo wave, find the copies of the ExactMassText, etc waves that were copied from a previous HR fit of a todo wave. * PK_IndexHRResultsWavesFitTodo() Create and saves root:index:HRstick_series, root:index:HRstick_seriesKey waves which keep track of which runs were fit with which todo waves. * PK_WavesForHRResults When the user requests any kind of HR product, we need to copy the ExactMassWave, etc waves last used for the fit for this todo wave to their proper place in the HR_sticks folder. * PK_CopyHRIonWavesFitTodo Does the work of making copies of the HR ions that were fit and to put the copies in folder were they can be retrieved later, as in a call from PK_WavesForHRResults. Modified Functions: * PK_MS_concentration Replaced waves with their _fitTodo counterparts where needed. * HR_CalculateSticksSQ_prep Redid the sequence of the creation of some waves to hopefully be more streamlined. Added a parameter to count the number of times a peak fit failed. * HR_CalculateSticksSQ Added a parameter to count the number of times a peak fit failed. Saves FailedFit matrix to hdf. * HR_SticksOneRun_prep Moved the creation of UM_make3DColorWave and OneRunDisplayVertGrid to this function because it makes more sense. * PK_GetErrors Replaced waves with their _fitTodo counterparts where needed. * PK_CountingErrors New scheme finds and saves counting errors for Open, Closed, and OMinusC data sets. ------- PK_elemAnal_1_09.ipf------- No changes. ------- PK_frag_1_09.ipf------- Modified Functions: * HR_generateFinalFrags Replaced waves with their _fitTodo counterparts where needed. * HR_createTempSpeciesMask Replaced waves with their _fitTodo counterparts where needed. Made root:Int_sticks:mask_family_FitTodoWaves. * HR_getListNewHRAlgebraMass Replaced waves with their _fitTodo counterparts where needed. * HR_getParamStr Tidied up a bit. Fixed a non-existed fragStr value with a default of 1. * HR_CheckListForHRSpecies Replaced waves with their _fitTodo counterparts where needed. ------- PK_gr_table_1_09.ipf------- Deleted Functions: * HR_butt_ChosenMassesTable This code was moved to the Chose Ions tab in 1.07/1.08. New Functions: * HR_addThisMass Function called by both HR_butt_AddThisMass (called from the HR_PeakHeights_gr) and the HR_butt_AddThisHRIon (called from the main panel). * HR_butt_AddThisHRIon New button in HR Ion Groups tab that adds a new HR ion (its chemical formula and it's mass) that was previously calculated in the panel to the ExactMassWave_all etc waves. Similar to the functionality in the HR_PeakHeights_gr but only from the main panel. * SticksGr_check_showResidErrors New checkbox in HR_PeakHeights_gr to optionally show the old ReisdualFit errors. * HR_ck_FitFailOption Radio buttons in the HRFits for Many Runs for selecting Open, Closed Diff pika fit error image plot. * HR_butt_ChosenMassFitTodo New function for displaying the waves of HR ions fit the last time a todo wave was HR fitted. * HR_populate_ChosenMassesTableX New function that does the work of HR_butt_ChosenMassFitTodo and the other button for the currently chosen list of ions (for one spectra) * pk_butt_ExportExactMassAll New button on panel that allows one to easily export the waves root:HR:ExactMassWave_all AND the integration mask waves into an itx (for possible later importing into another experiment). * HR_butt_HRFitFailTodo New button on panel allows user to create a table of the last todo wave and an image plot of all the places where the HR fit failed (in m/z and run number dimensions). * HR_ButtonCalcMassOneHRIon New button from the main HR panel that allows a user to calculate the mass from a pika formatted chemical formula. * HR_butt_massCheckAllIons New button from the main HR panel that allows a user to calculate the mass from all the HR ions in the "ExactMassText_all" wave. * HR_butt_IonMassCalculator Displays the HR ion mass calculator tool. * HR_butt_TableHRIonsTodoFit For any todo wave, finds the copy of the "root:HR_sticks:HRIonWaveCopies: folder containing the exactmassText_fitTodo, etc waves. HR_butt_HRSpeciesFitTodoTable Displays the list of ions that go in to the species calculations (which may include some ions that were not fit, such as CO). Modified Functions: * HR_globals Added a few new global strings and variables. Added creation of ElementalIon waves. * HR_MakeIntegrationMaskWave Removed some code that sorted waves unneccessarily and moved code that dealt with OneRunDisplayVertGrid waves to a more sensible function. * HR_Analysis_Panel_Create Added section detailing info about last time a todo wave was fit. * HR_SetVar_RunModeStr Added code to automatically choose the one run options (instead of an average of a todo wave) when a user enters a run number. * HR_butt_CalcSticksForThisRun Reorganized to streamline things. Added code to keep track of fit fails. Added code to find, save pika counting errors for open, closed diff. * HR_butt_CalcExactMassSticksTodo Added code to keep track of fit fails. Added code to duplicate current ExactMassWave etc and append a _fitTodo suffix, and basic info about finished todo wave fit. * HR_plot_MSAvg Replaced waves with their _fitTodo counterparts where needed. * HR_calc_TSeriesMSMatricies Fixed error about product types in 1.08C * HR_calc_5PanelSummary Fixed bug where the waves incorrectly retained a _temp suffix. * HR_plot_5PanelSummary Replaced waves with their _fitTodo counterparts where needed. * HR_plotPeakHeightsOneRun Added a checkbox fo optionally displayiing the peak fit residual errors. * HR_butt_AddThisMass Significantly overhauled to streamline the addition of HR ions either through the main panel or the HR_PeakHeights_gr. * HR_butt_ResidvsTime Added a modifyGraph gaps command *UMR_plot5GraphSummary Changed bottom m/z axis to automatically go from 100 to 120 m/z. * pk_butt_5FamilyMSGraph In the plotting of Doug's 5 axis HR mass spec for one run, I removed the residual noise error bars - they are not that helpful. * HR_butt_MakeExactMassWaves Modified this very important function to reduce duplication and streamline things. * HR_populate_ChosenMassesTable Now calls HR_populate_ChosenMassesTableX("") which can be use for _fitTodo chosen mass waves. *HR_MSCalc_Diurnals Changed the destination waves of the HR_calc_MSVsTime function to have a temporary "_temp" suffix so early plots, waves would not be inadvertantly overwritten. * HR_MSplot_DiurnalBoxPlot Bottom axis is now correctly labeled diurnal hour. * PK_exportSaveFileDB() Modified so that signal descriptor is appended to wave names (i.e. MSSD_*_hexane. * PK_exportForDataBase() Modified so that signal descriptor is appended to wave names (i.e. MSSD_*_hexane. ------- PK_partitionAvg_1_09.ipf------- No changes. ------- PK_peakShape_1_09.ipf------- * GF_makeMassWaves Changed in 1.08D so that if a user edits the GF table, the waves are not overwritten (Puneet's issue). * PW_PeakWidthShapePanel Changed the wording in a button from "Update plot" to "Recreate plot" *PS_createGlobals Changed defaults for PS_enforceMonotonicity and PS_enforceNotGTGauss to USE * PS_butt_updatePSGraph Tweaked so that this is updated nicely with hiding/showing items in panel. ------- PK_UnitMassSpec_1_09.ipf------- Deleted Functions: * UM_makeChosenMassFamText code is now folded into UM_GenerateAxByMaskWaves() Modified Functions: * UM_DoAllCalcsForIntMassSpectrum Added UM_DoAllCalcsForIntMSOMinusC() at the end * UM_GenerateAxByMaskWaves Added code from UM_makeChosenMassFamText * UM_MakeIntResolutionSticks Added code to prevent errors if upgrading from 1.06 Removed unneccessary call to HR_MakeHRFamilyBatch * HR_SortIsotopicValues The function call to HR_MakeIsotopePairings was changed slightly. * HR_MakeIsotopePairings Changed function to work on entire wave instead of one chemical formula at a time for efficiency. * UM_SumHRtoUMR Replaced waves with their _fitTodo counterparts where needed. High ResolutionToF-AMS Analysis Toolkit v1.08C (2010 Clinic Release) Update since ToF-AMS HR Analysis Toolkit v1.08A Notes by Donna Sueper 24 Mar 2010 Small bugs were fixed. * The isotopic abundances of j13CO2 and Cj18OO for HR_frag_pCO2 were incorrect by a very small amount. Old values were: HR_frag_pCO2[j13CO2] = 0.01112 // correct value is 0.01081570 HR_frag_pCO2[Cj18OO] = 0.004 // correct value is 0.00410998 * The formula for the Ion Counting Statistics error had an error - the duty cycle correction was inadvertantly applied twice. It is now fixed. * There was an obvious bug in the code that generated a 2D Time Series Mass Spectra wave. The bad code only filled the HR sticks for one column; this has been fixed. * The squirrel unit resolution frag wave for organics and orgLessPAH were reversed. This has been fixed. Update since ToF-AMS HR Analysis Toolkit v1.08A Notes by Donna Sueper 25 Feb 2010 * A small bug was found that prevented default user defined families from being retained after a Pika fit was found. Update since ToF-AMS HR Analysis Toolkit v1.08 Notes by Donna Sueper 21 Feb 2010 ----------Begin In a Nutshell---------- * New master list of all ions! Now has air 'camels'' and 'dromedaries' that are listed as i.e. N2inV. List also changed the notation for the deuterium ion from D to the more standard j2H. The list of default ions to fit goes out to 115 m/z. Many more isotopes are fit by default (users should still typically constrain them) * Added code to simplify the creation of average spectra for export as .itx files into the HR AMS data base. * Changed the code for averaging in the time dimension. The old code simply used as a time weight the difference in time between consecutive runs. The new code looks to DAQ values of time spent in different modes (open, closed, fast) for a more accurate time weight. * Corrected a small bug having to do with changing duty cycle and peak width vaules for parent and child isotopes. ------- PK_Backbone_1_08.ipf------- * PK_MS_concentration Added waves TimeMSOpen, TimeMSClosed, TimePToFSec, FastModeAvgTimeSec in the declaration for later possible use in the time-weighting functionality. Added timeweight_op flag for new time-weighting functionality. ------- PK_elemAnal_1_08.ipf------- * HR_plot_EAAvgMassSpec Fixed a small bug thathad to do with plotting EA average mass spectra against the correct x-axis (m/z wave) * HR_EAextractIsotopicElements Added the ability to decipher masses with j2H ------- PK_frag_1_08.ipf------- * HR_CheckListForHRSpecies Added the ability to figure out that the 'all' 'species' really means that we want all HR sticks. ------- PK_gr_table_1_08.ipf------- New Functions: *HR_checkDuplicatesAllMasses Checks both the name of new ions and the mass values to ensure there are no duplicates. *pk_exportSaveFileDB Creates the file that users will submit to the database. *pk_exportForDataBase Does any pika averaging in preparation for saving to the database itx file. Modified Functions: * HR_globals Bug fix! Added the creation of root:HR_ms_mats here to avoid future confusion. * HR_Analysis_Panel_Create Added a button for the export into the HR AMS data base. * HR_butt_CalcSticksForThisRun Silly typo - When one did a fit on an average mass spectra, the open m/z parameters were being used to fit the closed! This had no bearing on final pika stick calcs. * HR_calc_MSAvg Added the ability to average all pika sticks (if the HR list is blank, just as in squirrel). * HR_butt_MakeExactMassWaves Added a call to HR_checkDuplicatesAllMasses() * HR_populate_ChosenMassesTable Fixed small bug found by Mike Q - the full path to the wave is needed. *HR_butt_MS_Calc Added the updated time weighting functionality. ------- PK_gr_table_1_08.ipf------- No change. ------- PK_peakShape_1_08.ipf------- No change. ------- PK_UnitMassSpec_1_08.ipf------- UM_GenerateAxByMaskWaves Small bug found by Paul W. Some Si masses were being grouped into the SO family. This has now been fixed. Update since ToF-AMS HR Analysis Toolkit v1.07A Notes by Donna Sueper 6 Nov 2009 * A small bug was found that prevented default Gaussian peak fitting and PW analysis. The HR ion 'OH' has been renamed to 'HO' in the master list of all HR ions. It has been fixed in 1.07B. Update since ToF-AMS HR Analysis Toolkit v1.06 Notes by Donna Sueper 4 Nov 2009 ----------Begin In a Nutshell---------- * Pika is now considered to be fully functional with the addition of Squirrel-like batch and frag tables for HR ions. * In addition, there is now a more clear distinction between HR sticks obtained by fitting the raw difference spectra, and the HR sticks obtained by subtraction the Open HR sticks from the Closed HR sticks. The first data set is called Diff (D), the second is called OMinusC (M). * New HR ion list, compiles by Puneet et al, has been imported. * A new data folder, HR_frag, and default values has been created. * A brand new "all" list of HR ions and a new list of HR ions to be fit by default, thanks to Puneet Chhabra, Delphine Farmer, Qi Chen, and Niall Robinson. There are two new ipfs: **PK_elemAnal_1_07, which took code and functionality from APES version 1.03. ** PK_frag_1_07, which contains code for all the HR batch and frag table items. ------- PK_Backbone_1_07.ipf------- * HR_MakeRawSpectra Now kills MSClosedDup which is no longer needed. * HR_CalculateSticksSQ Added a spectraType flag in the fetch parameter string. Cleaner way of accessing the 4 different stick data sets, Diff, Open, Closed, OMinusC and writing to intermediate files. *pk_CountingErrors Now uses a dest flag in the fetch parameter string. This data set used to be called HRCountErrorDiff, but are now called HROMinusCIonCountErr. * PK_MS_concentration Significant changes to accommodate HR species. ------- PK_gr_table_1_07.ipf ------- New functions: * HR_butt_CreditsURLPetePaper A simple button on the credits tab going to Pete's paper. * HR_butt_CreditsURLAllison1Paper A simple button on the credits tab going to Allison's paper. * HR_butt_CreditsURLAllison2Paper A simple button on the credits tab going to Allison's other paper. * HR_calcPlot_MSVsTime Mirrors the calcPlot function in squirrel for time series calculations. Simply calls HR_calc_MSVsTime and HR_plot_MSVsTime. * HR_calc_MSVsTime Mirrors the calc function in squirrel for time series calculations. * HR_plot_MSVsTime Mirrors the plot function in squirrel for time series calculations. * HR_calcPlot_MSAvg Mirrors the calcPlot function in squirrel for time series calculations, however, we need to be mindful of two other things summing to UMR and possibly different x-axis waves for HR species. Simply calls HR_calc_MSAvg and HR_plot_MSAvg. * HR_calc_MSAvg Mirrors the calc function in squirrel for the average mass calculations, with the possible UMR and HR species complications. * HR_plot_MSAvg Mirrors the plot function in squirrel for the average mass calculations, with the possible UMR and HR species complications. * HR_calc_TSeriesMSMatricies Was called HR_butt_ExportMatrix but now mirrors the squirrel usage. * HR_calcPlot_5PanelSummary Wanted to keep the pattern of small and separate calc and plot functions for major products. * HR_calc_5PanelSummary You can probably guess what this does. * HR_plot_5PanelSummary You can probably guess what this does. * HR_butt_setResultsList A more generic button function for appending familes, HR ions in families, species, etc to the results list. * HR_butt_ConvertedFrags A hidden feature for those wishing to see the squirrel-like converted frag waves. * HR_butt_displayQueryHRIonPanel A small stand-alone panel for identifying HR ions of certain chemical formulas. * HR_ck_ChemFormFind The button in the QueryHRIonPanel that makes things go. * HR_plotAllHRGrpPlots This generates the tables in the HR ion groups tab. * HR_populate_ChosenMassesTable This table is now on the main Pika panel, HR ion groups tab. * HR_butt_MS_Calc A one stop shop for all your HR calc needs. Is similar to the monster sq_butt_MS_calc function. * HR_MSCalcPlot_Diurnal Was easy enough to port from squirrel to pika so I did it. * HR_MSCalc_Diurnals You can probably guess what this does. * HR_MSplot_DiurnalBoxPlot You can probably guess what this does. * HR_butt_viewEAtable Similar to the APES Elemental Fraction table, but is now on the HR Results tab of the main Pika panel. * PkAPESlogo Small apes picture for the Pika panel, HR results tab. New constants: DOUG5GRAPH_SPECLIST that has all the families in the 5 panel graph. DOUG5GRAPH_AXISLIST that lists the paired axes for the families in the 5 panel graph. Old functions that have been reorganized, made modular for HR species, and thus no longer exist: * HR_butt_CreditsURL See HR_butt_CreditsURLxxx * HR_ChooseMassesPanel Instead of a panel, there is a HR ion grouping tab which contains this functionality. * HR_butt_MSVsTime Now see HR_calc_MSVsTime andHR_plot_MSVsTime * HR_butt_MSVsMz Now see HR_calc_MSAvg and HR_plot_MSAvg * HR_ck_TimeSeriesOption Now a drop down menu in the HR Results tab for all the kinds of HR stick data sets. * HR_enterMassList Now merged with other controls that add things to the results list in teh HR results tab. * HR_IsotopesTable Now merged in the HR ion groups tab. * HR_butt_ChooseMassPanelEnd There is no more ChooseMass Panel. * HR_butt_ChooseMassesPanel There is no more ChooseMass Panel. * HR_butt_defaultHRMS We now have separate buttons for all the families, all the HR species. * HR_butt_ExportMatrix Now see HR_calc_TSeriesMSMatricies * HR_butt_5PanelSummary Now see HR_calc_5PanelSummary and HR_plot_5PanelSummary * HR_5PanelErr Functionality is now folded in with every other error data set usage. Modified functions: * HR_globals Added new variable for the checkbox indicating to do the gauss fits in preparation for the peak width/shape calculations. * HR_Analysis_Panel_Create The HR ion groups tab is new and the HR Results tab has been significantly overhauled. * HR_panel_credits Added Allison's work to credits because APES has been mergedinto Pika. * HR_butt_CreateMSDiffp Will now also perform gaussian peak fits in anticipation of Peak Width, shape analysis. * HR_populate_AllMassesTable This table is now on the main pika page. * HR_butt_ChosenMassesTable This table is now on the main pika page. * HR_SetVar_RunModeStr Now adds ionization type to the simple v/w info about a particular run. * HR_butt_CalcExactMassSticksTodo Now is careful with the distinction between Diff and OMinus C data sets. * HR_SpeciesList_prep Now looks out for HR species names. * HR_butt_AddThisMass Puneet requested that we have the ability to add ions > 300. It now squawks if you try to add an HR ion >= 1000 m/z. * HR_calcGausFitWaves Changed default behavior to add squirrel baseline spectra in HR_PeakHEights_gr plot by default. * HR_butt_familyTable Name of the popup menu for the families has changed because it moved to the main Pika panel. * HR_populate_IsotopesTable This is now in the HR ion groups tab in the main pika panel. * HR_tabProc Added an HR ion groups tab. * HR_butt_url_FAQs Now points to the wiki instead of the old empty web pages. * HR_popMenu_FamilyList There are now two places for popup menus with families. One in the HR ion groups tab, one in the results tab. * HR_populate_ChemFormTable Minor cosmetic change. * HR_butt_ChemFormFind Now allows for searching the entire HR ion list or the chosen HR ion list. * Pk_graphTweaks Now plots species colors, along with family colors. * UMR_plot5GraphSummary We now have a Cx family. * HR_butt_MakeExactMassWaves Now prints a message to the history window whenever someone chooses masses to fit. * HR_butt_CheckIsotopeMask A clearer message to the history window is printed when this has been successful. ----------PK_UnitMassSpec_1_07.ipf---------- New Functions: * UM_makeChosenMassFamText This function creates a text wave that indicates the family to which an HR ion has been assigned. Modified Functions: * UM_GenerateAxByMaskWaves We now assign S and HS and all their isotopes to the SO family; they were in the other family. * HR_MakeHRFamilyBatch New Cx family. * UM_SumHRtoUMR This function has a new parameter sent to it, to indicate whether or not one needs to deal with HR species. ------- PK_peakShape_1_07.ipf------ New Functions: * PW_ck_OneRunOpenClosed Allows users to look at either open or closed raw spectra gaussian fits. * GR_butt_setAllMaskTo0 Sets the spectra type (open, closed, don't use) to 0. * GF_butt_addMass A way to add a new HR ion to the list of ions in the Gauss Fit HR ion table. * GF_ck_showGFdetails A checkbox meant to shield details from most users. New constants: DEFAULTPWLIST = string list of default PW ions to use; will likely change with more user input. GFMASSLIST = = string list of default HR ions to do gaussian fits on; will likely change with more user input. Modified Functions: * GF_createGlobals Added a new global variable for showing GF details. Changed some explanatory text to make things more clear. * GF_makeMasswaves cleaned up this code via use of list of ions intead of identifying all from scratch. * GF_butt_GFsTodo Now prevents any hiccup due to nans in the mask wave. Hopefully redimensions things so folks don't get a "can't fit cuz the waves are of different sizes" error. * GF_GausFitPrelims Cleaned up old code. * GF_fetch_GetGausCoefs Now allows for gaussian fitting of open (and diff) spectra instead of only the closed. * GF_GausFitOneRun Now passes a spectra type as a parameter. * GF_dumpCoeffs Now passes a spectra type as a parameter. * GF_plotAllGFplots Added code for optional seeing of details. * GF_butt_SetGFDefaults Added a call to PW_SetDefaults to initialize things better. * GF_populate_MassTable Added v or w mode indicators, made pretty. * PW_NewGlobals Created a few new globals. * PW_makePeakWidthWaves Changed the PW power constraint wave so that that power parameter is betwenn .3 and .7 * PW_PeakWidthShapePanel Cleaned things up, now optionally displays Gauss Fit details. * PW_populate_MassTable Calls GF_populate_MassTable to ensure that they are the same between the two tabs. * PW_populate_PeakWidthGraph Again refers back to the list of HR ions in the GF table. * PWPSTabProc Checkbox for showing and hiding GF details. * PW_butt_FitPWAvgs Added some flags to ensure that a curve fit call has converged to a solution. * PW_HideChosenPSMass This had to get lots more complicated because we can use Open, Closed or Diff spectra. * PW_butt_RemoveTheseRuns Changed the code to try to handle cases where the user has inserted a new ion to the GF ion table. *PW_findFitsOneRun Added a /G flag to the curve fit operations so that it would have good starting guesses. * PW_butt_showPWOneRun Redimensioned waves in case the user added a new HR ion. * PW_individualMassFitGraphs Now scales from 0. * PW_butt_RecalcPWAvgs Now considers different specta type (open closed, diff) * PW_SetDefaults Uses string constant DEFAULTPWLIST now. * PW_makeColorMx Made this matrix bigger. * PS_butt_PeakShapeAllMassTodo Cleaned up. * PS_PeakShapeAllMassTodo Uses the GFMask to indicate which spectra type to use. *PS_fetch_PeakShapeAllMassTodo Got lots more complicated with the option of using any spectra type. ------- PK_PartitionAvg_1_07.ipf------- No changes. Update since ToF-AMS Analysis Toolkit v1.06A Notes by Donna Sueper 23th July 2009 There was a small bug that had to do with the generation of peak shape candidates using selected masses for the left-and right-side. Pika 1.06 returned the peak shape candidate using only the last mass in the list, not the entire list. Update since ToF-AMS Analysis Toolkit v1.05 Notes by Donna Sueper 19th June 2009 ----------Begin In a Nutshell---------- A bug in the calculation of some "Graph5 summary" plots was found and corrected. Several minor bugs were fixed. Most had to do with graph displays. Several sanity checks were added. This will be the last relase until the User's meeting in October, when a version with an HR frag table will be debuted. ----------End In a Nutshell---------- -------PK_gr_table_1_05.ipf------- New functions: * HR_InitializeHRtodowave A small function called on the recreation of the pika panel to set the todo wave to the same wave as the squirrel panel. * Sticksgr_disableBaselineChks Function that diables, enables the plotting of squirrel-subtracted raw spectra if pika baselines are used. * SticksGr_check_ShowPikplusSqBa A new checkbox in the HR_PeakHts_gr that allows plotting the the fitted peaks 'on top' of the squirrel baseline and the plotting of the raw spectra with without the squirrel baseline . Modified Functions: * HR_globals Added a few new global strings and variables fo clarity. * HR_Analysis_Panel_Create Added a function to initialize todo wave properly * HR_butt_CreateMSDiffp Added sanity checks * HR_butt_CalcSticksForThisRun Minor change to display run number nicely * HR_butt_MSVsTime Added sanity checks * HR_butt_MSVsMz Added sanity checks * HR_plotPeakHeightsOneRun Added a variable to display raw spectra without the baseline subtracted. * HR_reCenterAmu Changed the y-axis for HR_PeakHeights graph to display the min residual or the -10% of the max stick * HR_calcGausFitWaves Added code to allow the optional plotting the the peak fits on top of the squirrel baseline for the HR_PeakHeights graph * SticksGr_SetResidAxis When displaying the residuals as a percent in the HR_PeakHeights graph, the min and max are now fixed at 10%, and changed the formatting to see the numerical values easier. * SticksGr_check_DisplaySQBase Now executes instead of does nothing (now un-italicized) * HR_butt_updateMaskWave Removed the annoying alert message that wanted you to verify that you wanted to change the set of masses to fit from the HR_PeakHeights graph * HR_butt_5PanelSummary Sanity checks added *UMR_plot5GraphSummary Changed code to search for the existence of windows instead of creating them new each time. * pk_butt_5FamilyMSGraph Changed code to search for the existence of windows instead of creating them new each time. -------PK_peakShape_1_05.ipf------- Modified Functions: *HR_PeakWidthSanity Added code to display a bad run number formatted nicely. * HR_CalculateSticksSQ_prep Added a line so that the first integer mass gets displayed nicely in the HR_PeakHts_gr. * HR_SticksOneRun_prep Added new waves to be fetched in anticipation of display on the HR_PeakHts_gr - OneRunRawSpectraOpenp, etc. so that users can plot the raw spectra without the baseline removed (Jose's request). Changed the way the squirrel baseline wave is retrieved in anticipation of dispaly on HR_PeakHts_gr. * PK_MS_concentration Killed a temporary wave at the end of the function to clean up nicely. -------PK_peakShape_1_05.ipf------- Modified Functions: * GF_createGlobals Eliminated the redundant global root:GaussFits:GF_UseSqBaseline * GF_butt_GFsTodo Now uses the variable set in the HR panel, root:HR_panel:HR_UseSQBaseline * GF_fetch_GetGausCoefs Added code to display a bad run number formatted nicely * PW_PeakWidthShapePanel Modified todo wave popup window so that it initializes to the same todo wave currently selected in the Squirrel panel. * PW_butt_FitPWAvgs Fixed, the curve fit to find the peak width as a function of mass. We now use the weighting as the receiprical of the std dev (not the std dev). * PW_butt_PWSet1 Added code to nan out averages when resetting to a new todo wave * PS_CalcPSCandidateFromList A fix for Igor 6.10, found by U Hawaii folks, dealing with the concatenate command. * PS_populate_PeakShapeGraph Changed code to ensure that the appropriate window was identified before waves were appended. * PS_populate_FinalPSGraph Changed code to ensure that the appropriate window was identified before waves were appended. -------PK_UnitMassSpec_1_05.ipf------- Modified Functions: * UM_SumHRtoUMR Fixed a bug that had to do with counting from 0. -------PK_PartitionAvg_1_05.ipf------- No change Update since ToF-AMS Analysis Toolkit v1.04 Notes by Donna Sueper 3rd June 2009 ----------Begin In a Nutshell---------- Peak Width and Shape functionality completely overhauled. Over 100 changes to the entire list of HR mass fragments, and >50 masses eliminated from default fitting settings. Some error estimates are calculated. The use of squirrel baselines instead of pika-generated baselines is encouraged. The ability to average HR spectra has been added. See the HR clinic notes on the ToFAMS web site (linked via Jose Jimenez web site) for more details. ----------End In a Nutshell---------- Update since ToF-AMS Analysis Toolkit v1.03 Notes by Donna Sueper 3rd Sept 2008 ----------Begin In a Nutshell---------- Several new helpful features and a few important bug fixes. Fixed a small bug whereby the very last HR mass would not fi fit properly because the last integer m/z value to fit was 1 less than it needed to be. ----------End In a Nutshell---------- -------HR folder ------- The master list of all available species to select for fitting has approximately 200 yes 200 changes. All Deuterium fragments were removed. Many fragments > 100 were added. The default list of species has been changed to only fit masses < 100. In particular, the pthalate 149 and 279 are no longer fit by default. Users are still encouraged to fit masses > 100 when appropriate, however, and to continue to contribute mass fragments to the 'master' list. When upgrading experiments, users can elect to retain their mass choices through the 'import' button in step 3. -------PK_Backbone_1_04.ipf------- Modified Functions: * HR_CalculateSticksSQ_prep Fixed a small bug whereby the very last integer HR mass would not fi fit properly. * HR_MakeUnitMassWave Fixed a small bug whereby the very last integer HR mass would not fi fit properly. * HR_CalculateSticksSQ Added the ability to calculate the squirrel baseline (background) raw spectra for possible display in HR_PeakHeight_graph. * HR_CalcSticksOneRun Added ability to retry to fit when first try of Igor fit gives negative values. -------PK_gr_table_1_04.ipf------- New Functions: * HR_butt_CreditsURL Added button to take users to url. * HR_butt_AddThisMass Added button in HR_PeakHeight_Gr to allow users to add a mass to the master list of all known fragments. * SticksGr_AppendChosenMassTags Isolated this feature for modularity - code is the same, it is just it's own function now. * PK_calcSQBaselineFit New feature to calculate the squirrel baseline for display in HR_PeakHeights_gr. * SticksGr_check_DisplaySQBase Function for new checkbox in HR_PeakHeights_gr to display raw squirrel baseline spectra. * HR_CreatePeakHtsListBox New functionality in HR_PeakHeights_gr for selecting which masses to fit at any integer m/z. * HR_butt_updateMaskWave New functionality in HR_PeakHeights_gr for changing the entries in the mask_stick_integration wave to reflect changes in list box. * HR_butt_reDoFit Handy function for redoing HR fit for one spectra in HR_PeakHeights_gr. * sq_check_NansInWaveList General purpose function for checking if values are nans in the waves at runs in the todo wave. (for use when m/z fitting not good or not found). Modified Functions: * HR_globals Many changes due to panel reorganization and new features. * HR_Analysis_Panel_Create Many changes due to panel reorganization and new features. * HR_panel_credits Updated. * HR_butt_CalcSticksForThisRun Added some sanity checks regarding peak shape variable. Added checks for non-nan values in m/z fitting parameters for selected todo wave. Changed the calculations so that Pika will automatically retrieve the squirrel sticks for possible later display (in step 4 diagnostics). * HR_butt_CalcExactMassSticksTodo Added checks for non-nan values in m/z fitting parameters for selected todo wave. * HR_setSpecies Code changed to allow for user-defined families. * HR_plotMassesVsTime_prep Code changed to allow for user-defined families. * HR_plotMassesVsTime Slight code change for Igor 6.03 update. Code cleanup. * HR_plotPeakHeightsOneRun Small bug fix dealing with whether insets were plotted or not. * HR_reCenterAmu Fixed small bug whereby the y axis sometimes did not scale correctly. * SticksGr_check_ShowAllTags Changed to use global variable to set this, instead of simply inspecting the checkbox. * SticksGr_check_ShowHorGrid Changed to use global variable to set this, instead of simply inspecting the checkbox. * SticksGr_check_DisplayInsets Disabled old-school legend for families. * SticksGr_SetResidAxis Fixed small bug whereby the y axis sometimes did not scale correctly. * HR_butt_familyTable Fixed small bug having to do with the user defined families. * HR_tabProc 3 tabs instead of 2! * HR_butt_MakeExactMassWaves Removed unneccessary print statement to history window. * HR_OneRunHRSticksTable_Create Made prettier. * HR_ViewFamilyTable Fixed small bug having to do with the user defined families. -------PK_gr_table_1_04.ipf------- New Functions: * UM_ExtractSQMassSpectra Extracts the Squirrel stick for comparison with Pika * HR_makeHRFamilyLegend Gives each family a color, and allows for users to add their own families. * PK_SetUpParamPanel New globals, etc for panel for many parameters panel * PK_ConvertParam Changes units to percent or not. * PK_ExtractParamSum Squirrel fetch function to simply extract data for display in many parameter panel. * PK_CreateHRParamPanel Creates many parameter panel. * PK_AddLabelsToAxis Adds axis labels to many parameter panel. * PK_butt_delta10 Button control on many parameter panel for increasing the m/z values by 10. * PK_setVar_changeMz Set variable control on many parameter panel for increasing the m/z values by 1. * PK_setVar_changeCsrPt Set variable control on many parameter panel for increasing the cursors by 1. * PK_ck_ParamSpectraType Checkbox control on many parameter panel for changing the spectra type (diff, open, closed) * PK_ck_ParamDataType Checkbox control on many parameter panel for changing the data type ( Pika, Squirrel baselines, etc) * PK_ck_ParamDataMath Checkbox control on many parameter panel for changing original or percentaget data. * PK_Param_PrintCursorVals Button control on many parameter panel for changing the data type * UM_butt_ManyParam Button on Pika panel for pulling up the many parameter panel Modified Functions: * UM_PlotIntMassSpectra Slightly rearranged. * HR_MakeHRFamilyBatch Added a simple check for the existence of the table. -------PK_peakShape__1_04.ipf------- * HR_PeakShapeAllMassAllRuns Importnat indexing bug fix. -------PK_partitionAvg__1_04.ipf------- * Essentially no change. This ipf is somewhat obsolete and may likely be removed in future versions. High ResolutionToF-AMS Analysis Toolkit v1.03 (Major Bug Fix - don't use versions previous to 1.03) Update since ToF-AMS Analysis Toolkit v1.02 Notes by Donna Sueper 30th Mar 2008 ----------Begin In a Nutshell---------- Important bug fix. A mathematical mistake has been found in the Pika code. When finding the high-resolution peak fits for a todo wave (step 5), the results are in units of peak height (the entity solved for in the fits) instead of peak area. The peak area is the value to be used to compare results between different species. For more information, please refer to the email sent out with the notice of this release, or email Donna at donna.sueper@colorado.edu. One new useful feature is the ability for users to define their own groups of ions any way they please (a group is called a 'family'). ----------End In a Nutshell---------- -------HR folder ------- The master list of all available species to select for fitting has approximately 20 changes. Some duplicates were removed, three species that were incorrectly labled with a zero instead of a "O" for oxygen were corrected, and species that were not in monotonically increasing order were moved to their rightful position, at least 4 new species between m/z 70 and 100 were added. Users do not have to change or modify the master list of species when they upgrade Pika versions. -------PK_Backbone_1_03.ipf------- New Functions: * PK_ConvertOldExactStickToArea A function to convert old (pre-1.03) HRDiffSticks that were saved as peak heights instead of peak areas. * PK_HeightToAreaMatrix Does the work of PK_ConvertOldExactStickToArea * PK_convertUnitSigmaToEachSpecie A general function for creating waves that have the peak width for each species. Modified Functions: * HR_CalculateSticksSQ_prep Added sanity check, the creation of more global variables if needed, and a call to PK_convertUnitSigmaToEachSpecie. * HR_CalculateSticksSQ Fixed the HRDiffSticks so that they reflect areas, not peak heights. * HR_CalcSticksOneRun Added the creation of global waves specifically named HRPeakHeightsDiff, etc, to aid in the separation and calculation of HRSticksDiff Added a sanity check for values of peakShapeScalers. -------PK_gr_table_1_03.ipf------- Renamed Functions: * HR_plotPeakHeightsOneRun was HR_plotSticksOneRun to distinguish between the results displayed in step 4. HR_butt_UpdateNewExactMass was HR_UpdateWavesFromGoogle, reflecting a time in the past when things were updated via a private google spreadsheet account. New Functions: * HR_checkOrderOfAllMasses Added a sanity check for when users enter masses and they are not monotonically increasing. * HR_butt_ViewFamilyTable New button on main panel - it is intended for folks who want to define their own groups of ions ('families"). * HR_ViewFamilyTable Added the ability to view user-customized families as well as the traditional families of CH, CHO, etc. * HR_popMenu_FamilyList Added a Get List menu item that refreshes the list of families in case the user has defined a new family. Modified Functions: * HR_globals Added a verbose mode global variable for debugging. * HR_Analysis_Panel_Create Minor tweaking so that panel items don't appear squished. Added a button for family table * HR_ChooseMassesPanel Minor tweaking so that panel items don't appear squished. * HR_butt_CalcSticksForThisRun Added clarity for the sticks, peak heights calculations. * HR_butt_PlotMassesVsTime Added sanity check in case no masses were chosen. * HR_plotMassesVsTime Removed call to Sq_AddCntrl_RunsFromCsrs() that added annoying buttons and control bar to graph. * HR_reCenterAmu Minor change dealing with the peak height to peak area issue. * HR_ExactMassTagsAll Commented out unneccessary code. * HR_AppendExactMassTags Commented out unneccessary code. * HR_calcGausFitWaves Minor change dealing with the peak height to peak area issue. * HR_butt_UpdateNewExactMass Minor word change. * HR_butt_MakeExactMassWaves Added sanity check via function call to HR_CheckOrderOfAllMasses() * HR_OneRunHRSticksTable_Create Added PeakHeightWaves along with the usual Stick waves. -------PK_gr_table_1_03.ipf------- No change from version 1.02 -------PK_peakShape_1_03.ipf------- * HR_makePsMassWaves Added a tungsten family, mostly as an example for others to define their own families. * HR_CreatePeakWidthShape_Panel Minor tweaking so that panel items don't appear squished. -------PK_peakShape_1_03.ipf------- * UM_GenerateAxByMaskWaves Added functionality that checks if a species belongs to any user defined families before it gets sent to the default families (CH, CHO, CHON, Air, etc) * UM_MakeIntResolutionSticks Changed code to reflect the new reality of separate PeakHeight and Sticks (peak area) waves. * HR_MakeHRFamilyBatch Added the Tungsten family. Update since ToF-AMS Analysis Toolkit v1.1 // should be v. 1.01 Notes by Donna Sueper 22th Feb 2008 ----------Begin In a Nutshell---------- New ability to find high resolution sticks for the average spectra of a todo wave. Fixed a few small bugs having to do with the finding the index of runs. ----------End In a Nutshell---------- -------PK_Backbone_1_0.ipf------- * Renamed all constants to be all capital letters for easier identification. * Changed string constant FRAG_PANEL_LIST to reflect better ordering of frag waves Funtions removed: * HR_TenGauss() Obsolete. * HR_TenGaussWPS() Obsolete. Funtions added: Functions modified: * HR_MakeDiff() Simple change to use a matrixop for faster calculations. * HR_MakeHoldString() Doesn't force hold string to be of a fixed length. * HR_ManyGaussWPS() Doesn't force hold string to be of a fixed length. * HR_ManyGauss() Doesn't force hold string to be of a fixed length. * HR_CalculateSticksSQ_prep() Reorganized where global waves are created. Added extra globals for when fitting lots of peaks at one integer m/z. * HR_CalculateSticksSQ() Small bug fix for v and w mode switching. Added a "verobse" mode to spit out info in the history window when peaks don't fit. HR_CalcSticksOneRun() Small bug fix for v/w mode switching. Also, the code now allows variable number of peaks to fit. Also allows for a 'verbose' mode. HR_SticksOneRun_prep() Significantly changed to allow the use of a todo-wave averaged raw spectra. -------PK_peakShape_1_02.ipf------- * HR_PeakShapeOneMassAllRun() Inserted a small bug fix and some sanity checks. * PS_CleanUpPeakShapeThisRun() Fixed a bug that can creep up in non-standard cases. * PS_MakePSAvg() Fixed a bug that can make the 'wings' of the peak shape be constant. -------PK_UnitMassSpec_1_02.ipf------- * UM_GenerateAxByMaskWaves Slightly changed the algorythm to better group CHO and sulfur families. * UM_PlotIntMassSpectra() Can now accomodate comparing a unit resolution todo-averaged spectra with a grouped HR spectra found by averaging the raw spectra from a todo wave. -------PK_PartitionAvg_1_0.ipf------- * PA_CreateGlobals() Fixed small bug that presumes the existence of some waves. -------PK_gr_table_1_02.ipf------- New functions: * HR_ck_oneRunOrAvg() Checkbox control for signaling if one is finding HR sticks for one run or the average of a todo wave. * HR_butt_FindRunInTodo() Button that works both for the find next and find previous run in todo wave * HR_butt_url_latestVersion() Button on main panel that takes one to the web site to download the latest version. * HR_butt_url_FAQs() Button on main panel that takes one to the general Pika web site. * HR_butt_UpgradePika() Added functionality for upgrading Pika - Useful for Igor verions 6.10+ Modified functions: *HR_globals() Several new or modified globals on the main HR panel. * HR_Analysis_Panel_Create() Now includes the ability to do the HR fit on a todo-averaged raw spectra. * HR_panel_credits() Changed Peter DeCarlo's email address. * HR_SetVar_RunModeStr() Changed to show v or w mode designation. * HR_butt_CalcSticksForThisRun() Changed to allow the user to fit an todo-wave averaged raw spectra. * HR_setSpecies() Fixed a bug the arose when run index not in increasing order. * HR_plotMassesVsTime() Fixed a minor kbcolorizetrace call (Igor version 6.03) * HR_ExtractResidSum() Fixed a bug the arose when run index not in increasing order.