Home

Vespa – Simulation User Manual and Reference - VeSPA

image

Contents

1. pulse sequence but can contain one or more metabolites and one or more sets of timings for the pulse sequence Each Simulation object contains results for a single metabolite for one set of sequence timings Each call to the PyGamma library produces results for a single Simulation object Vespa Simulation loops through spectral simulations for all timings and metabolites to completely fill an Experiment There are a number of predefined pulse sequences in the Vespa Simulation environment and users can also develop their own PyGamma pulse sequence scripts The database also maintains the prior information for the NMR parameters of available compounds J coupling and chemical shift values necessary to run the simulations NMR parameters are available in this database for approximately 30 compounds commonly observed for in vivo H MRS The following chapters run through the operation of the Vespa Simulation program both in general and widget by widget In this manual command line instructions will appear in a fixed width font on individual lines for example Vespa Simulation 1s Specific file and directory names will appear in a fixed width font within the main text Examples of spectral simulation for pulse optimization and spectral fitting Young K Govindaraju V Soher BJ and Maudsley AA Automated Spectral Analysis Formation of a Priori Information by Spectral Simulation Magnetic Resonance in Medicine 40 812 815 1998 Yo
2. 4 3 New Experiments with additional user defined parameters A full explanation of how to create additional pulse sequences with or without additional parameters that Simulation can use is given in Appendix XX The Vespa Simulation Manage Pulse Sequences dialog provides an interface for a user to define the additional parameters needed for a given pulse sequence These are then saved to the Vespa Simulation database This section describes the interface used in a new Experiment Simulation Tab to run an Experiment using a sequence with additional parameters When a sequence with additional parameters is selected from the Pulse Sequences drop list the Simulate tab will be modified to set up widget fields where the user can define values for these additional parameters Additional parameters are displayed in a list below the loop fields Each line contains one parameter description and I Simulation Experiment Management Modes Help Experiment Experiment2 x Name jexample Ideal Press version 2 UUID 9 869540 818d 4d77 b372 FfSab16bc61F Investigator Brian Soher Created 23 June 2010 Comments some inane comment a M Metabolites Isotope jiH e In Experiment Available Visualization Simulation Hz 1300 8 5 x Parameters Main Field MHz 64 0 Peak Search Range PPM Blend Tolerance Low 0 0 ppm 0 0015 High 10 0 Deg 50 0 Pulse Sequenc
3. Edit The highlighted sequence is opened in a form similar to the New Sequence dialog Only the metabolite Name and Comment are editable The name is editable because Experiments save Pulse Sequence references by UUID which are not editable Use the Clone option to create a copy of a Pulse Sequence that is editable View Similar to Edit but no fields are editable Clone Select a sequence in the list hit clone and a copy of that sequence is made that is now fully editable The new sequence has the name of the original sequence followed by the date and the word clone Delete Only sequences that have not been used by an experiment may be deleted This is because to reconstruct any given Experiment that object must refer to the original sequence used to create it The Use Count column indicates if a sequence is in use by an Experiment If not in use by an Experiment the highlighted sequence in the list is deleted from the database 20 Import Allows the user to select an XML file that contains a Pulse Sequence If the UUID in the file is unique it is added to the Simulation database Export The user selects a Pulse Sequence from the list A second dialog allows the user to browse for the output filename select if output should be compressed and allows an additional export comment to be typed in Note that the action of exporting an object causes it to be marked as frozen in the database This means that it can not be changed
4. Udel evolve sigmal Udel sigma0 sigma0 evolve sigmal Udel sigma0 sigma0 evolve sigmal Udel sigma0 sigma0 evolve sigmal Udel sigma0 sigma0 ay H H H ay H H H ay H H H ay H H H ay ay H H H ay H H H ay H H H ay H H H 29 1H 1H 1H 1H 1H 1H 1H 1H 1H 1H 1H 1H 1H 1H 1H 1H 1H 1H 1H 1H 1H 1H 1H 1H offhz offhz offhz offhz offhz offhz offhz offhz offhz offhz offhz offhz offhz offhz offhz offhz offhz offhz offhz offhz offhz offhz offhz offhz pdg90 pd180 pdg90 pdg90 pd180 pdg90 pdg90 pd180 pd90 pd90 pd180 pd90 pd90 pd180 pd90 pd90 pd180 pdg90 pdg90 pd180 pago pd90 pd180 pd90 ang90 ang180 ang90 ang90 ang180 ang90 ang90 ang180 ang90 ang90 ang180 ang90 ang90 ang180 ang90 ang90 ang180 ang90 ang90 ang180 ang90 ang90 ang180 ang90 Udelay sigma0 pg prop H tauR 2 0 pg evolve sigmal Udelay sigmal sigma0 if k amp 4 3 Udelay pg prop H tauR 2 0 sigma0 pg evolve sigmal Udelay sigmal pg Sxpuls sys sigma0 H 1H offhz pd90 ang90 sigma0 pg
5. loop1_index would be fixed and loop2_index would increment 10 times The metabolite Name s would repeat 10 times as well as loop2_value is incremented In this way a 2D Experiment is flattened into a 1D output file Experiment 9al46ac7 c47d 4ae2 b7b2 961e942d7d18 Name Example OnePulse Data Public True Created 2010 03 24T16 20 18 Comment abbr Simulation for baseline GAVA database PI bsoher Parameters b0 64 000000 Peak Search PPM low high 0 000000 10 000000 Blend tol PPM phase 0 001500 50 000000 Pulse seq bf0b302c celf 46c9 b852 OeTc6b77 95c One Pulse 3 Metabolites aspartate choline truncated creatine Simulations not shown Simulation Results aspartate 0 0 0 0 0 0 0 2 3706 0 03836 0 0 aspartate 0 0 0 0 0 0 1 2 49372 0 02196 0 0 aspartate 0 0 0 0 0 0 2 2 64232 0 409 0 0 aspartate 0 0 0 0 0 0 3 2 70787 0 42219 0 0 aspartate 0 0 0 0 0 0 4 2 76544 0 52731 0 0 aspartate 0 0 0 0 0 0 5 2 78347 0 5175 0 0 aspartate 0 0 0 0 0 0 6 2 97959 0 04772 0 0 aspartate 0 0 0 0 0 0 7 3 05519 0 01597 0 0 aspartate 0 0 0 0 0 0 8 3 58274 0 00563 0 0 aspartate 0 0 0 0 0 0 9 3 79689 0 29328 0 0 aspartate 0 0 0 0 0 0 10 3 87249 0 25374 0 0 21 aspartate 0 0 0 0 0 0 11 3 92001 0 23456 0 0 aspartate 0 0 0 0 0 0 12 3 99561 0 21054 0 0 aspartate 0 0 0 0 0 0 13 4 20976 0 00225 0 0 choline truncated 0 0 0 0 0 0 0 3 185 23520 0 0 creatine 0 0 0 0 0 0 0 3 027 3 0 0 0 creatine 0 0 0 0 0 0 1 3913 42 0 0
6. 0 creatine 0 0 0 0 0 0 2 6 649 1 0 0 0 6 2 Plot results to image file formats Results in the 1D StackPlot Integral Plot and Contour Plot windows can all be saved to file in PNG portable network graphic PDF portable document file or EPS encapsulated postscript formats to save the results as an image On the Vespa Simulation window menu bar each Experiment Tab has its own menu item added to the menu bar These are named the same as the Experiment Tabs ie Experiment1 Experiment2 etc Select the Experiment2 Output option and further select either the 1D StackPlot IntegralPlot or ContourPlot menu item Finally select either Plot to PNG Plot to PDF or Plot to EPS item The user will be prompted to pick an output filename to which will be appended the appropriate suffix 6 3 Plot results to vector graphics formats Results in the 1D StackPlot Integral Plot and Contour Plot windows can all be save to file in SVG scalable vector graphics or EPS encapsulated postscript formats to save the results as a vector graphics file that can be decomposed into various parts This is particularly desirable when creating graphics in PowerPoint or other drawing programs At the time of writing this only the EPS files were inherently readable into PowerPoint On the Vespa Simulation window menu bar each Experiment Tab has its own menu item added to the menu bar These are named the same as the Experiment Tabs ie Experiment Experiment2 etc
7. Definitions Add Remove Selected E DI Name Default Value ox com Description Tab Name This is how the Experiment Tab Simulate lists the pulse sequence in the drop list Creator The name of the person creating the pulse sequnce Loop Labels and Multipliers When the pulse sequence is called it can make use of up to three looping variables to create a variety of conditions for investigating metabolite behavior In the Loop1 Loop2 and Loop3 rows the user gives information that allows Simulation to parse these loop variables The Label field is a string used in creating the Experiment Tab Simulate window that describe these loops An example would be TE ms for a spin echo experiment In this case the user could also set the Mult field equal to 1000 to indicate that the Vespa Simulation program should divide the values given for the Loop Start and Step values before passing them to the pulse sequence function unless the user specifically writes their function to process these variables as millisecond values then the Mult would remain 1 0 Additional Parameter Definitions The user may add remove additional parameters expected by the external pulse sequence using the respective buttons Additional widgets will appear as requested Each parameter is described by three fields a data type drop list Name string and Default Value string The name field will be used by the Experiment Tab Simulate window as a lab
8. Experiment Experiment Experiment SI pm mmm ___ Experiment2 x p Main Plot Controis mnr TJ Main Plot Controls gt f j AE Display Mode Stack Plot Index2 e Display Mode 1D Plot X IH Arn Wn He y a E Xaxis PPM Max 5 229 K Ji zeit 5 2293 S wl 0 510 gt A zl V min 0 510 i Cursors PPM Max 20 325 i Cursors PPM Max 20 325 m wl oam geg vr A H wl 10 810 E Eh f andext 1 het ms fo 0 M zi gedd be zb F oul i Index2 1 TE2 ms foo d RO al Select One or More Metabolites to Plot N AY e E One or More Metabolites to Plot creatine ia S ate a f flactate Ww E myo inositol e IT Plot All Metabolites T Sum Plot i T Plot All Metabolites I Sum Plots Integral Plot Controls Integral Plot Controls KR show OT show Contour Plat Controls Contour Plot Controls i M show M Grayscale i Contour Levels jr 4 Contour Dimensions Contour index 14 i Basis Function Parameters il Linewidth Hz 3 000000000 Sweep Width Hz 2000 000000 EII show I Grayscale Contour Levels 1 Contour Dimensions Contour Index 1 2 f Basis Function Parameters Linewidth Hz 3 000000000 SS sweep width Hz 2000 000000 Spectral Points 2048 S
9. Sypuls sys sigmal H 1H offhz pd180 ang180 sigmal pg Sxpuls sys sigma0 H 1H offhz pd90 ang90 Udelay pg prop H tauR sigma0 pg evolve sigmal Udelay sigmal pg Sxpuls sys sigma H 1H offhz pd90 ang90 sigma0 pg Sypuls sys sigmal H 1H offhz pd180 ang180 sigmal pg Sxpuls sys sigma0 H 1H offhz pd90 ang90 Udelay pg prop H tauR sigma0 pg evolve sigmal Udelay sigmal pg Sxpuls sys sigma0 H 1H offhz pd90 ang90 sigma0 pg Sypuls sys sigmal H 1H offhz pd180 angl180 sigmal pg Sxpuls sys sigma H 1H offhz pd90 ang90 Udelay pg prop H tauR sigma0 pg evolve sigmal Udelay sigmal pg Sxpuls sys sigma0 H 1H offhz pd90 ang90 sigma0 pg Sypuls sys sigmal H 1H offhz pd180 ang180 sigmal pg Sxpuls sys sigma0 H 1H offhz pd90 ang90 Udelay pg prop H tauR 2 0 sigma0 pg evolve sigmal Udelay sigmal sigma0 Udelay pg prop H te2 0 5 sigma pg evolve sigmal Udelay sigmal pg Iypuls sys sigma0 1H 180 0 Udelay pg prop H te2 0 5 sigma0 pg evolve sigmal Udelay mx ACQ table sigma0 The pulse sequence accesses the sys spin_system variable The first seven lines of code are good examples of how to access the control_dict dictionary for all three loop parameters and some user defined static parameters Note that the dictionary key for each user defined parameter is just the label
10. This is for the sake of consistency as results are shared However a frozen Pulse Sequence can still be deleted from the database if needed This file can be imported into another Vespa Simulation installation using the Import function 6 Results Output 6 1 Results output into standard text editor On the Vespa Simulation window menu bar each Experiment Tab has its own menu item added to the menu bar These are named the same as the Experiment Tabs ie Experiment Experiment2 etc Select the Experiment2 Output Text Results option and a tab delineated text description of the Experiment is created and loaded into the local computer s standard text editor On Windows this is typically Notepad From here the user can save it wherever they please NB This command can also be launched from the Experiment Tab Visualize sub tab using the ASCII Results button The first section of the text file describes the settings of the Experiment Metabolite simulations are saved as a collection of lines with amplitude PPM and phase that can be used to recreate a time domain spectrum Each line contains metabolite Name loop1_value loop2_value loop3_value line_number PPM area and phase deg The index_loop variables may be set to other than O if the Experiment contains multiple steps in pulse sequence timings E g an Experiment could run NAA Cr and Cho for 10 TE values with TE1 being held fixed and TE2 having 10 values In the output file
11. area ppm i for i in ppm phase i for i in phase else area ppm phase This code expects that there exists already in the namespace a variable named mx that is a PyGamma transition table The actual binning code is written in C and accessed through a Swig mapping This code creates three equal length lists called area ppm and phase that are subsequently returned from the execution function to the main Simulation application for storage in the database If the user wants to write their own binning code then they must follow these requirements If the user is careful about what is provided executed in the sequence_code and subsequently used in the binning_code there may be no need for the mx variable But the user must always return the three equal length lists named area ppm and phase 26 A 2 2 The Ideal PRESS pulse sequence typical use of standard parameters Here is the PyGamma code that is in the sequence_code string for the PRESS_lIdeal sequence H pg Hcs sys pg HJ sys D pg Fm sys 1H ac pg acquirelD pg gen_op D H 0 000001 ACQ ac sigma0 pg sigma_eq sys Sigmal pg Iypuls sys sigmaO 1H 90 0 Udelay pg prop H tel 0 5 Ssigma0 pg evolve sigmal Udelay Sigmal pg Iypuls sys sigma0 1H 180 0 Udelay pg prop H tel te2 0 5 Ssigma0 pg evolve sigmal Udelay Sigmal pg Iypuls sys sig
12. at least two Loop dimensions but will create a pseudo 2D contour plot from an Experiment with only one Loop dimension by repeating the first dimension Contours are integrated over all steps in the two loop dimensions selected in the Contour Dimensions drop box for the Left and Right Cursor settings shown in the Plot control widget and for the real imaginary or magnitude data shown Plotted contours change as the cursor settings change but are only refreshed when the right mouse button is released On the Visualize Widget Display Mode drop list Selects 1D or Stack Plots along index 1 2 or 3 to be displayed in the 1D window X Axis Max Min click fields Controls the PPM limits of the spectrum displayed in the 1D and 2D plots Alternatively the left mouse button can be used interactively in the 1D Display window to set these axes Click down the left mouse button and drag to set the min max settings using an interactive rubber band display method X axis cursors are displayed in gray red Cursors Max Min click fields Controls the PPM limits of the cursors displayed in the 1D and Stack Plots These also act as the PPM integral regions calculated in the Integral and Contour plots The cursors are displayed in purple and may not be displayed on the screen if set to values outside the X Axis min max values Alternatively the right mouse button can be used in an interactive rubber band display method in the 1D Display window
13. lactate li 0 1 E eis 12 04 eee Se e 11 0 9 M glycine M aspartate oe 218 a d 09 M creatine L1 0 2 Sp 2 1 8 L2 0 4 M aspartate M aspartate ERR 2 28 ee L2 0 4 u 09 tu 09 LI 09 M creatine 12 0 4 IER 2 0 8 M aspartate M aspartate M aspartate Simulations themselves know nothing about one another and are agnostic to the order in which they re run Thus while the existing code is geared towards generating a very regular results space that we iterate over in a very straightforward order more complex result spaces and iteration orders are possible The sky s the limit really provided you can dream up a GUI that allows users to describe the results space A few other rules of note e Once an experiment has been saved the following attributes become read only pulse sequence investigator user parameters DU isotope peak_search_ppm_low peak_search_ppm_high blend_tolerance_ppm blend_tolerance_phase e One can associate additional metabolites with an experiment but once it is associated and the experiment is saved the metabolite remains with the experiment forever In other words a metabolite can t be removed from a saved experiment e Anexperiment s bO value is always stored in megahertz The take home lesson from this section is that the Vespa Simulation application provides 4 dynamic looping variables and 12 standard static variables to each spectral simulation that is run In th
14. to set these axes Click down the left mouse button and drag to set the left right values Cursors are displayed in gray yellow Index 1 2 3 click fields These fields allow the user to step thru the Loop1 and Loop2 dimensions for the various plot modes As each Index widget is incremented the sequence timing s actual value is shown in the adjoining field Metabolites list A list of metabolites in the experiment that can be included in the display Plot ALL Metabolites Highlight all metabolites in the list Plot ALL Metabolites Sums all metabolite plots in a list For 1D display this sums different metabolite spectra together For Stack Plots the different sequence timings for one metabolite are summed Integral Plot Show check Toggles Integral Plot display Contour Plot Show check Toggles Contour Plot display Grayscale check Toggles whether a grayscale image overlay is applied as a background to the contour plot 14 Contour Levels Contour Dimensions Linewidth Sweep Width Spectral Points ASCII Display click field Select the number of levels to display in the Contour Plot Note that setting too many levels may limit the ability of level values from being displayed drop list Selects index pairs among index 1 2 and 3 for display in plot click field Set the full width half max linewidth in Hz of the peaks displayed in the plots click field Set the sweep width in Hz used to reconstruct the spectra T
15. Select the Experiment2 Output option and further select either the 1D StackPlot IntegralPlot or ContourPlot menu item Finally select either Plot to SVG or Plot to EPS item The user will be prompted to pick an output filename to which will be appended the appropriate suffix 22 Appendix A Pulse Sequence Design A 1 What s under the hood Vespa Simulation Basic Concepts This is a combination of logical concepts and limitations that determine how Simulation works These rules are enforced through the application and to some extent the database The main objects in the system are experiments simulations spectra pulse sequences and metabolites Experiments are the primary objects everything else is secondary Here s how they re related e Each experiment has zero to many simulations Simulations are the whole point of an experiment and there s not much to an experiment besides the metatdata that defines the simulations Since entering the experiment metadata is pretty trivial we don t let users save experiments that define zero simulations Experiments with zero simulations can exist but only in memory They are never saved to the database or an export file e Each experiment makes use of and refers to exactly one pulse sequence but the experiment may define one or more timing sets for the pulse sequence e Each simulation creates one spectrum e Each spectrum has zero or more lines Zero is an unusual case but possi
16. Vespa Simulation User Manual and Reference Version 0 1 0 Release date October 1 2010 Developed by Brian J Soher Ph D Philip Semanchuk Duke University Medical Center Department of Radiology Durham NC Karl Young Ph D David Todd Ph D University of California San Francisco Department of Radiology San Francisco CA Developed with support from NIH grant EB008387 01A1 Table of Contents Overview of the Vespa Package snnssnnneesseerreneerenrrrrresrrrrreeee 4 Introduction to Vespa Simulation ccceecccesssseceeeseseeeessaeeeees 5 Using Simulation A User Manual 7 1 Overview How to launch Vespa Gumulaton rrenen 7 2 The Simulation Main EECH cise ei Saves EEN ckaexce sicacusd debaued dedecdadsGaecaten 7 3 The Experiment NOtebook ccc d 0 c2s gen cecndensciaatadsecenban Qiondateteeaeaneendaadionbeceeass 8 As The Experiment E EEN 9 4 1 Loading an existing Experiment c ccccccccceccceeeeeeeeneseseneeeeeeeeeeeseeeeseneetenneeenees 10 4 2 Running a new Experiment EE 10 4 3 New Experiments with additional user defined parameters 12 4 4 Visualizing Experiment Results 13 5 Management Bee EE 16 5 1 Manage Experiments dialog 10 csccccccoisveeiaceesiecemuen deen cernuondseed aanietl otieveonawonedt 16 5 2 Manage Metabolites dialog 0 ccccccccecccceseecccneeeeeeeseetaeceneeeeneesseeeeceteeeeeseeeeeeereete 16 5 3 Manage Pulse Sequences dialog cc
17. ble e Each spectrum line has a one PPM area and phase value in it We expect users to share data via Simulation s export and import functions For this reason several of Simulation s objects experiments pulse sequences and metabolites have universally unique ids UUIDs rather than just ordinary integer ids Experiments Experiments are the main focus of the Simulation application An experiment s raison d etre is to run a set of simulations This set of simulations is the experiment s results space Currently that space is defined by one to four nested loops The first loop covers the list of metabolites the user has involved in the experiment The other one two or three loops are user defined lists of numbers The figure below is a visual representation of a 3D results space one set of metabs and two lists of user defined numbers For clarity we do not show the 4 dimension a k a the last user defined loop as stacks of cubes are hard to visualize 23 Example of simulations for 10 iterations of loop1 along the Z axis starting at 0 0 with a step size of 0 1 8 iterations of loop2 along the X axis starting at 0 4 with a step size of 0 2 and 4 metabolites aspartate creatine glycine and lactate along the Y axis There are 320 10 x 8 x 4 individual simulations 11 0 7 i 12 1 0 M lactate a LL 08 ae EE M lactate L1 0 0 L2 0 4 M aspartate L1 0 9 d 2 18 _ L1 0 9 M
18. bolite is no longer being used it can be set to a deactivated state where it no longer shows up in the Experiment Tab Simulate metabolite list for use in new Experiments This state is indicated in the Metabolite dialog by the word not active appended to the metabolite name in the list Import Allows the user to select an XML file that contains a Metabolite If the UUID in the file is unique it is added to the Simulation database Export The user selects an Metabolite from the list A second dialog allows the user to browse for the output filename select if output should be compressed and allows an additional export comment to be typed in Note that the action of exporting an object caused it to be marked as frozen in the database This means that no changes can be made This is for the sake of consistency as results are shared However a frozen Metabolite can still be deleted from the database if needed This file can be imported into another Vespa Simulation installation using the Import function 5 3 Manage Pulse Sequences dialog Access this dialog by clicking on the Management Manage Pulse Sequences menu item Actions that can be taken on the Pulse Sequences dialog include New Edit View Clone Delete Import and Export An example of the widget used to display and edit pulse sequence information is shown The Public column indicates if a sequence has ever been exported or imported from someone else This means that i
19. cccccssseeeeneceeeeeeeeenseenseneeeeeeeeeseeeenee 18 6x deed Eed EEN 21 6 1 Results output into standard text editor sssessrerrrrrrtrrrttrttrrrtrrrtenrttnrtnrneenn 21 6 2 Plot results to image file formats cccceccceccceccceccceeeeeeeeeeeeeeeeeeeeeeeeneeeeeeeeaeenes 22 6 3 Plot results to vector graphics format 22 Appendix A Pulse Sequence Design 23 PAV Whats UNGEL un EE ee KEE 23 Vespa Simulation Basic Concents eere eeee reene nee renne nne nnne nnen n nnne n nenene nenne 23 SAIAS E E E EE E E EE EE 23 A 2 Creating a Pulse Sequence without Extra Parameters AAA 25 A 2 1 How to create a One Pulse pulseseouence eee 25 A 2 2 The Ideal PRESS pulse sequence typical use of standard parameters 27 A 3 Creating a Pulse Sequence with Extra Parameters eeeeeeeeeeeeeeees 27 A 3 1 The PRESS CP with Variable R groups Pulse Sequence ssssesseseeseeeeeeeeeen 27 Appendix B Pulse Sequence Diagrams n00nnnnnnnnnnonnnnneannenna 31 B 1 one pulse ase ee 31 Bal i DEN e E El EE 31 B 1 2 Loop Variable 1 2 3 Descriptions 0 0 cccccceccceeceeeaeseeeeeeeeeeseceeaesseeeeeeessesaeaaeens 31 B 1 3 User Defined Static Parameters ccccccccccccccccceeeceeeeeeeeeeeeeeeeeeeceeeeeeeseeeeeeeeteeess 31 B 1 4 General Descrpton nenene ereen ree reeet eeer rnent nenn nent nen nnennnenn nnana nnna nnnn nnen 31 ee Ee WEE 32 B21 Seq ence DIG Qe EE 32 B 2 2 Loop Variabl
20. e Name IR a EE m Loops 1 2 and 3 Rgroups int TE2 ms Step Count foe Ir sec Step Size Start Value PulseType 0 Ideal 1 Sand alpha 2_angle deg alpha 2_time sec k mg baam double bann double bameg double o o0300000 double TE1_period sec TauR sec Value 0 a field to set a value A default value is typically provided Field names and data types are pre defined as String Long or Float data types for data entry The user is restricted to entering this type of data in any given field All other widget functions in the first two columns of the widget function as described above 12 4 4 Visualizing Experiment Results Experiments displayed in the Visualize widget can be considered to contain 2 3 4 or 5 dimensions that correspond to the Spectral dimension the number of metabolites in the experiment and the number of steps in Loops 1 2 and 3 respectively Pulse sequences such as One Pulse or Spin Echo only allow 0 or 1 Loop dimensions and are thus restricted in the types of displays they can make use of However most other pulse sequences can typically use most the plot modes The three plot modes for displaying results 1D StackPlot Integral Plot and Contour Plot are shown below sl Experiment Management Modes Help Experiment Experimenti X Main Plot Controls Display Mode Stack Plot Index2 z E x Axis PPM Max 5 393 S m
21. e 1 2 3 Descriptions 00 0 cceeeceecccceceeeaeseeseeeeeeeseseeeeeuceceeeesseseeaeeess 32 B 2 3 User Defined Static Parametere 32 B 2 4 General Descrtpton eene eee teenete treer teee rnent nenn nent nen nnen naen n aanname ennnen 32 Bo PRESS Ideal rne a a EE a a E 33 B33 Seq ence DIAM ali seian aren ea aka aaiae aAa A E Ea aie aa 33 B 3 2 Loop Variable 1 2 3 Descriptions 0 0 cecccceccceecceeeeseeceeeeeeeceseueesuceeeeeeseeeasaneess 33 B 3 3 User Defined Static Parameters cccccccceccccccceseesessseceeeeseseeeeeeeseeeeessesaeaeeseees 33 B 3 4 General Description 33 B4 STEAM e E E 34 B 4 1 Sequence Re LE EE 34 B 4 2 Loop Variable 1 2 3 Descriptions 00 0 ceeecceecccceceeeeeseeeeeceeeeseseeeeeuceceeeessesaaaeeess 34 B 4 3 User Defined Static Parameters cccccccceccccccceceeseeseceeeeseseseeeeceseeeessesaeaeeseees 34 B 4 4 General Descrpton eneee tenetere erneer tennt netere nt nsn tennt ennn nnn ennn n ennnen 34 B 5 JPRESS deal REG 35 B 5 1 Sequence DiaQrar uerge ue sk esse lccadevesgveeieved eaten ENEE ENEE 35 B 5 2 Loop Variable 1 2 3 Descriptions 0 0 ccceecccecccceceeeeeseeseeeeeeeseseeeesuceseeeesseseaaeaens 35 B 5 3 User Defined Static Parametere 35 B 5 4 General Description 35 Overview of the Vespa Package The Vespa package extends the maintenance and development of three previously developed magnetic resonance spectroscopy MRS software tools by migrating them into an integrated open source open develo
22. e example below we will specify what these are and how they can typically be used In 24 the second example below we will specify how user defined static variables can also be passed into spectral simulations A 2 Creating a Pulse Sequence without Extra Parameters A 2 1 How to create a One Pulse pulse sequence The most important thing to remember in pulse sequence design is that no matter the size of your looping variables each distinct set of pulse sequence parameters are sent to their spectral simulation independent of all others To achieve this a list of control dictionaries is created to store each distinct set of parameters Then each dictionary is sent to a function that executes the PyGamma spectral simulation that it describes On completion of each dictionary execution lists of areas ppms phases and start finish time stamps are returned and stored in the database The standard variables that are stored as key value pairs in the control dictionary include field float main BO field strength in MHz sequence_code string PyGamma code string executed using exec to perform the simulation binning_code string PyGamma code string executed using exec immediately after the sequence_code to extract the areas ppms and phases from the transition table peak_search_ppm_low float range in ppm to be searched in binning code see below peak_search_ppm_high float
23. el to describe this field in its far right hand column when the pulse sequence is selected for an Experiment The corresponding default value is the value that is displayed in that field As described in Appendix XX the label also serves as a key in the control dictionary sent to run the actual PyGamma simulation which can be referenced to return the user set value 19 NB By selecting a data type in the drop down menu the user will be forced to enter that field as that variable type and will be passed to the PyGamma simulation as that type Please select your default types and values accordingly Sequence Code Tab This is a text window in which PyGamma code can be pasted As defined in more detail in Appendix XX this code is executed using the Python exec command and so should be constructed as if it were going to be run in place with appropriate space tab layout New Pulse Sequence x Description 5e de Binning Code Binning Code Tab This is a text window like the Sequence Code tab in which PyGamma code can be pasted The default binning code as defined in Appendix XX is already in place when the New Sequence dialog is created but can be deleted edited as the user wishes As defined again in more detail in Appendix XX this code is executed using the Python exec command immediately following the Sequence Code and so should be constructed as if it were going to be run in place with appropriate space tab layout
24. elay sigmal pg Iypuls sys sigma0 180 Udelay pg prop H tauR 2 0 sigma0 pg evolve sigmal Udelay sigmal sigma0 k in range rgroups using 90 180 90 square Sandwich if k 4 0 Udelay pg prop H tauR 2 0 sigma0 pg evolve sigmal Udelay sigmal pg Sxpuls sys sigma0 H sigma0 pg Sypuls sys sigmal H sigmal pg Sxpuls sys sigma0 H Udelay pg prop H tauR sigma0 pg evolve sigmal Udelay sigmal pg Sxpuls sys sigma0 H sigma0 pg Sypuls sys sigmal H sigmal pg Sxpuls sys sigma0 H Udelay pg prop H tauR sigma0Q pg evolve sigmal Udelay sigmal pg Sxpuls sys sigma0 H sigma0 pg Sypuls sys sigmal H sigmal pg Sxpuls sys sigma0 H Udelay pg prop H tauR sigma0 pg evolve sigmal Udelay sigmal pg Sxpuls sys sigma0 H sigma0 pg Sypuls sys sigmal H sigmal pg Sxpuls sys sigma0 H 28 pulses with MLEV16 phase cycling 1H 1H 1H 1H 1H 1H 1H 1H 1H 1H 1H 1H offhz offhz offhz offhz offhz offhz offhz offhz offhz offhz offhz offhz pd90 pd180 pa90 pd90 pd180 pd90 pdg0 pd180 pd90 pad90 pd180 pd90 ang90 ang180 ang90 ang90 angl180 ang90 ang90 ang180 ang90 ang90 ang180 ang90 Udelay sigma0d sigmal Udelay sigma0 sigmal sigma0 sigmal pg Sxpuls sys Udelay sig
25. elete Import or Export Experiments These functions are summarized below View Not currently implemented use Output Text Results from the ExperimentN menu item instead Import Export Close Clone Cloning allows the user to more easily re run an Experiment with modifications to its parameters Once Experiments are run they can not have their parameters modified other than to add additional metabolites to the run list The clone button allows a user to create a copy of an Experiment that contains all the parameter settings of the Experiment but none of the results The clone appears in the list as a copy of the Experiment name with the date and the word clone appended to its name The user can now quit out of the dialog and load this cloned Experiment into a New Experiment Tab modify parameters and run it Delete Removes the Experiment from the database Import Allows the user to select an XML file that contains an Experiment If the UUID in the file is unique it is added to the Simulation database Export The user selects an Experiment from the list Simulation asks if both parameter and results should be included in export or just parameters A second dialog allows the user to browse for the output filename select if output should be compressed and allows an additional export comment to be typed in Note that the action of exporting an object caused it to be marked as frozen in the database This mean
26. ent from the database to look at the results or to add more metabolites to the Jl Experiment Management Modes Help Experiment3 Experiment4 Ex pe ri m e nt 7 u Experiment3 Experiment Main Plot Controls Each Experiment Tab has two sub tabs called Visualization and iwreg 8 00 Simulation The Simulation tab is Min 0777 3 where a new experiment is set up and a then run It is also where the parameters and settings for an existing Experiment can be reviewed when the Experiment is reloaded The Visualization tab is where the results of an Experiment can be visualized as 1D plots stack plots and peak integral T Plot All Metabolites I Sum Plots contour maps Hae care Contour Plot Controls When a new Experiment is set UP F show I gare there are no results to be displayed so f cortortevet N Contour Di Contour Index 1 2 the program defaults to the Simulation a tab for New Experiments When an tinewiathtre c00000000 Si t H H Sweep Width Hz 2000 000000 existing Experiment is loaded there 1 oe are results to be seen so the program SE defaults to the Visualization tab Visualization Simulation A New Experiment is typically created PPM 0 442797851563 e 28 3390625 alue 0 set up and run On completion the results are automatically saved to the database and the Visualization tab updated to display these results O
27. from the Experiment Tab Simulate sub tab panel for each additional parameter e g the pd90 sim dict alpha 2 Pulse Time sec line Similarly to the examples above a transition table variable called mx is set up in the last line of code Also of note in this example is the fact that typical Python control structures can be used in these sequence_code strings for loops if statements etc However extreme care should be taken to have consistent spacing and lack of tabs in the code that is pasted into the new pulse sequence dialog tab 30 Appendix B Pulse Sequence Diagrams This section provides some basic information about the standard simulated pulse sequences that are provided as part of the Vespa distribution The full PyGamma code for each pulse sequence can be accessed through the Pulse Sequence Management Dialog widget using the View or Edit functions B 1 one pulse B 1 1 Sequence Diagram logy Acquisition B 1 2 Loop Variable 1 2 3 Descriptions Loop not used Loop2 not used Loop3 not used B 1 3 User Defined Static Parameters none B 1 4 General Description This is a simulation of a pulse and observe or one pulse pulse sequence The typical 90y degree hard pulse is modeled by an ideal GAMMA pulse Despite the slight spacing in the sequence diagram there is no evolution period after the excitation pulse prior to transition table acquisition 31 B 2 spin echo B 2 1 Sequence Dia
28. gram TE Acquisition Rn TE TE er WER Lo ligoy B 2 2 Loop Variable 1 2 3 Descriptions Loop1 Describes the number of TE values to loop over in ms Loop not used Loop3 not used B 2 3 User Defined Static Parameters none B 2 4 General Description This is a simulation of a spin echo sequence using ideal GAMMA pulses for the 90y and 180y localization pulses 32 B 3 PRESS Ideal B 3 1 Sequence Diagram TE1 TE2 Acquisition 180y B 3 2 Loop Variable 1 2 3 Descriptions Loop1 Describes the number of TE1 values to loop over in ms Loop2 Describes the number of TE2 values to loop over in ms Loop3 not used Notes Pulse sequence TE TE1 TE2 B 3 3 User Defined Static Parameters none B 3 4 General Description This is a simulation of a Point Resolved Spectroscopy PRESS The typical 90 180 180 localization pulses of the PRESS sequence are modeled by ideal GAMMA pulses The TE1 period is controlled by the settings of loop variable 1 the TE2 period is controlled by the settings of loop variable 2 thus either a symmetric or asymmetric PRESS experiment can be simulated 33 BA STEAM_ldeal B 4 1 Sequence Diagram SCH SCH Acquisition B 4 2 Loop Variable 1 2 3 Descriptions Loop1 Describes the number of TE values to loop over in ms Loop2 Describes the number of TM values to loop over in ms Loop3 not used B 4 3 User Defined Static Paramete
29. he moment there is only the Experiment Mode which shows the Experiment Notebook At some point in the future there will also be a Pulse Sequence Design Mode and possibly others Launches the wxPython widget inspection tool This is a debugging aid to help developers track the events attached to each widget Giving credit where credit is due 3 The Experiment Notebook The Experiment Notebook is an advanced user interface notebook widget AUINotebook Multiple tabs can be opened up inside the window They can be moved around arranged and docked as the user desires by left click and dragging the desired tab to a new location inside the notebook boundaries In this manner the tabs can be positioned side by side top to bottom or stacked as show in Sections 1 and 4 They can also be arranged in any mixture of these positions The Experiment Notebook can be populated with one or more Experiment Tabs each of which contains the results of one Experiment Tabs can be closed using the X box on the tab or with a middle click on the tab itself When a Tab is closed the Experiment is removed from memory but can be reloaded from the database at a future time 4 The Experiment Tab An Experiment Tab is a widget pane that is added to the Experiment Notebook Each tab contains one entire Experiment An Experiment Tab can be used to run a new Experiment and then look at the results It can also just be used to load an existing Experim
30. he number of points used to reconstruct the spectra Displays the current Experiment results in text form Top information is a summary of the Experiment parameters followed by a line by line report of metabolite results Each line is tab delineated and shows a Metabolite Name Loop1 Loop2 Index Loop3 Index Group Number Index Line Number Index Frequency PPM Amplitude and Phase deg for each line extracted from the transition table for a given simulation 15 5 Management Dialogs The Management dialogs allows the user to Create Delete Edit Import Export or View Metabolites Experiments and Pulse Sequences These dialogs allow the user to manage the data in the Simulation database and to add new prior metabolite and pulse sequence information It also provides the means for users to share information between themselves via XML files created using the Import Export functions 5 1 Manage Experiments dialog EE x Management Manage Experiments menu item The dialog opens and blocks Isotope ary T Bo ary d other activity until it is closed An yew FAREED r i Example PRESS multiTE frozen example of this dialog is shown in the Cone Example SpinEcho multiTE Data Frozen figure Experiment names are listed in Rect PRESS ioe wo lope ream the window on the right This list may be E Mabini hindi sorted by isotope or main BO field aaa strength from the drop list widgets above the list Users may View Clone D
31. i Spectral Points 2048 ASCII Display ASCII Display Visualization Simulation Visualization Simulation e PPM 18 2498046875 Hz 1167 9875 Welte 1 50001 Shown here is a screen shot of a Vespa Simulation session with two Experiment tabs opened side by side for comparison The functionality of all tools will be described further in the following sections 2 The Simulation Main Window This is a view of the main Vespa Simulation user interface window It is the first window that pops up when you run the program It contains the Experiment Notebook a menu bar and status bar The Experiment Notebook can be populated with one or more Experiment Tabs each of which contains the results of one Experiment An Experiment is a collection of spectral Simulations Each Simulation contains the result for one metabolite that has been run through a simulated pulse sequence for a given 10 x Experiment Management Modes Help set of sequence parameters Thus AN iwetome nfo Experiment may consist of one Welcome to Vespa Simulation metabolite for multiple sets of pulse att more are No Experiments loaded sequence parameters OF multiple vou can use the Experiment menu to load an existing Experiment or create a new experiment metabolites for one set of pulse sequence parameters or multiple metabolites for multiple collections of pulse sequence parameters The Experiment Notebook is initially populated with a welcome tex
32. is may take a significant amount of time to calculate but is indicated on the lower left of the _ 3 S isotope Jany status bar while calculating 4 2 Running a new Experiment An Experiment object consists of one or more spectral Simulation objects Each Experiment object uses only one pulse sequence but can contain one or more metabolites and one or more sets of timings for the pulse sequence Each Simulation object contains results for a single metabolite for one set of sequence timings Each call to the PyGamma library produces results 10 for a single Simulation object Vespa Simulation loops through spectral simulations for all timings and metabolites to complete an Experiment When a user selects the Experiment New menu option a new Experiment Tab is created in the Experiment Notebook and the default view is for the Simulate sub tab This panel enables the user to select define and run a new Experiment from the list of defined pulse sequences provided with the Simulation program Additional pulse sequences can be created by the user and accessed using the methods covered in the next section A list of all pulse sequences is kept in the Vespa Simulation database and can be selected from the Pulse Sequence Name dropdown menu The Simulation widget will reconfigure itself based on the parameters needed to run that sequence Users must fill in the Name Investigator Main Field Peak Search Range
33. ly in the Contour plot canvas to file as either PNG SVG EPS or PDF format Output Text Results opens the operating systems standard text editor and inserts a textual rendering of the Experiment results Typically this is a summary of the general descriptive information the specific pulse sequence and metabolite parameters included and a listing of all metabolite lines for every loop instance in the Experiment 4 1 Loading an existing Experiment The Experiment Browser dialog is launched from the Experiment Open menu and is shown below A list of Experiment names is shown on left As an Experiment is clicked on once its comment and metabolites list are displayed on the right Experiments can be sorted by the isotopes contained within the metabolites simulated They can also be sorted by field strength given in MHz xi Experiments When the open button is clicked or an Contour Example PRESS 2D stuff2010 06 21713 18 16 Comment Simulation for baseline GAVA Contour Example PRES52010 06 21T13 23 56 database Experiment name double clicked on Ee Metabolites aspartate choline truncated the program loads the information for Eden creatine gaba glutamate glutamine lactate the Experiment from the database into Terres ear op arn eee cs an Experiment object in memory This object then creates a set of basis functions for all metabolites for use in the Visualization tab plots NB In the case of large Experiment th
34. ma0 sigmal sigma0 sigmal pg Udelay sigma0 sigmal sigma0 sigmal pg pg Udelay sigma0 sigmal sigma0 sigmal pg pg Udelay sigma0 sigmal ER k 4 Udelay sigma0 sigmal sigma0 sigmal pg pg Udelay sigma0 sigmal sigma0 sigmal pg pg Udelay sigma0 sigmal sigma0 sigmal pg pg Udelay sigma0 sigmal sigma0 sigmal pg Pg pg pg pg pg prop H tauR 2 0 pg evolve sigmal Udelay sigma0 1 tauR 2 0 pg prop H Sypuls sys Sxpuls sys pg sigma pg tauR pg prop H pg Sxpuls sys Sypuls sys Sxpuls sys pg sigma pg tauR pg prop H pg Sxpuls sys Sypuls sys Sxpuls sys pg sigma pg prop H tauR pg Sxpuls sys Sypuls sys Sxpuls sys pg sigma pg prop H tauR 2 0 pg sigma0 2 pg prop H tauR 2 0 Sxpuls sys Sypuls sys Sxpuls sys pg sigma pg prop H tauR Sxpuls sys Sypuls sys Sxpuls sys pg sigma pg prop H tauR Sxpuls sys Sypuls sys Sxpuls sys pg sigma pg tauR pg prop H Sxpuls sys Sypuls sys Sxpu s sys pg sigma pg evolve sigma1 Udel sigma0 sigma0 evolve sigmal Udel sigma0 sigma0 evolve sigmal Udel sigma0 sigma0 evolve sigmal Udel sigma0 sigma0 evolve sigmal
35. ma0 1H 180 0 Udelay pg prop H te2 0 5 sigma0 pg evolve sigmal Udelay mx ACQ table sigma0 The first thing to note is that this pulse sequence accesses the sys spin_system variable and also the control_dict dictionary for the Loop1 and Loop2 values in the tel sim_dict dims 1 and tel sim _dict dims 2 lines There are no user defined static parameters Similarly to the example above a transition table variable called mx is set up in the last line of code Not shown The default binning_code string is used to return the values from the transition table to the main Simulation program A 3 Creating a Pulse Sequence with Extra Parameters A 3 1 The PRESS CP with Variable R groups Pulse Sequence Here is the PyGamma code that is in the sequence_code string for the One Pulse sequence 27 pd180 ang180 H pg D ac ACQ Pg ac sigma0 sigmal Udelay sigma sigmal Udelay sigma0 sigmal if type us for else for pg pd90 2 0 ang90 2 0 Hcs sys pg HJ sys Fm sys 1H acquirelD pg gen_op D H 0 000001 pg sigma_eq sys pg Iypuls sys sigmad 1H 90 0 pg prop H tel 0 5 pg evolve sigmal Udelay po lypuls sys sigma0 1H 180 0 pg prop H tel 0 5 pg evolve sigmal Udelay sigma0 0 ing Ideal 180 pulses k in range rgroups Udelay pg prop H tauR 2 0 sigma0 pg evolve sigmal Ud
36. nce an Experiment has been run once it can only be run again to add additional metabolites The exact same parameters are used for subsequent runs excepting the list of metabolites to be simulated As each Experiment Tab is created a new menu item appears in the menu bar that allows the user to change things inside that particular Experiment Tab Each tab has an number on it e g Experiment1 Experiment2 etc The menu item has a matching label The following lists a summary of the functions on the Experiment Tab menu item On the Menu Bar ExperimentX where X stands for the experiment tab number e g Experiment1 Experiment2 ZeroLine On Off toggle zero line off on in 1D and stack display Xaxis On Off white lines on black background or reversed Xaxis PPM Hz x axis value in PPM or Hz Plot Color white lines on black background or reversed Data Type select Real Imaginary or Magnitude spectral data to display Lineshape select Gaussian or Lorentzian lineshapes for the basis functions plotted Integral Axes toggles either x or y or both axes on off Contour Axes On Off toggles both axes on off Output 1D Stackplot writes plot currently in the 1D or StackPlot canvas to file as either PNG SVG EPS or PDF format Output lIntegral Plot writes plot currently in the Integral plot canvas to file as either PNG SVG EPS or PDF format Output Contour Plot writes plot current
37. ne use might be to use these values directly as sequence timing values where they represent ms timings between RF pulses Another way might be to use an integer series e g 1 2 3 4 5 6 as the index for a series of RF pulses stored in a file This way an Experiment 11 could loop through the effects of different RF pulses in an experiment Either way the user can set up three of these loops in the Loops 1 2 and 3 section of the Simulation sub tab Shown is an example of a new Experiment tab configured for a PRESS simulation Note Metabolite Peak Normalization and Blending The transition tables created by the GAMMA routines frequently contain a large number of lines caused by degenerate splittings and other processes At the end of each pulse sequence we call a standard routine to extract all lines from the transition table These lines are then normalized using a closed form calculation based on the number of spins Multiple lines are blended by binning them together based on their PPM locations and phases The following parameters are used to set these procedures Peak Search Range Low High PPM the range in PPM that is searched for lines from the metabolite simulation Peak Blending Tolerance PPM and Degrees the width of the bins in PPM and in PhaseDegrees that are used to blend the lines in the simulation Lines that are included in the same bin are summed using complex addition based on Amplitude and Phase
38. nf 3 113 F Cursors a 0 045 i wl 0 253 Indexi 1 ren ms S o Indexe 1 ree ms 0 0 Select One or More Metabolites to Plot IT Plot all Metabolites Sum Plots M Integral Plot Controls HM Show M Contour Plot Controls i H show MW Grayscale i Contour Levels Szen f Basis Function Parameters lt f Linewidth Hz 3 000000000 Sweep Width Hz Se 3 Spectral Points jos E T 3 ASCII Display isualization Simulation PPM 0 335400390625 Hz 21 465625 Malue 11 8184 The 1D StackPlot window is always open and centered in the screen The Integral Plot window and the Contour Plot window can be toggled on off using the check box next to their names Both the Integral and Contour plot windows can be undocked repositioned and re docked using the grab bars on the left hand side of each window Under the 1D StackPlot window a 1D spectrum for one or more metabolites or a 2D spectral stack plot along any two Loop dimensions for a single metabolite can be selected If more than one metabolite is selected for a stack plot only the first metabolite in the list is displayed The mouse can be use to set the x axis and cursor values in the 1D plots The left mouse button sets the X axis Min Max PPM values Click and hold the left mouse button in the window and a vertical cu
39. pment platform Vespa stands for Versatile Simulation Pulses and Analysis The original tools that have been migrated into this package include GAVA Gamma software for spectral simulation MatPulse software for RF pulse design and IDL_Vespa a package for spectral data processing and analysis The new Vespa project will address current software limitations including non standard data access closed source multiple language software that complicates algorithm extension and comparison lack of integration between programs for sharing prior information and incomplete or missing documentation and educational content Introduction to Vespa Simulation Vespa Simulation is a graphical control and visualization program written in the Python programming language that provides a user friendly front end to the Gamma PyGamma NMR simulation libraries The Vespa Simulation interface allows users to 1 Create and run an Experiment consisting of one or more spectral simulations from lists of metabolites and pulse sequences 2 Store Experiment results in a database 3 Display the results in a flexible plotting graphing tool 4 Compare side by side results from one or more Experiments 5 Output results in text or graphical format 6 Export Import experiments metabolites or pulse sequences from other users What is an Experiment An Experiment object consists of one or more spectral Simulation objects Each Experiment object uses only one
40. range in ppm to be searched in binning code see below blend_tolerance_ppm float width of bins in ppm into which similar lines can be combined see below blend_tolerance_phase float width of bins in phase degrees into which similar lines can be combined see below dims list this list contains the values of the 4 loops as set for this particular simulation Specifically dims 0 is a string containing the metabolite name dims 1 dims 2 and dims 3 contain the float values of the three counting loops met_iso list string value for the isotope of each spin in the current metabolite met_cs list float ppm value for chemical shift of each spin in the current metabolite met_js list float ppm value for J couplings of each spin pair in the current metabolite nspins int number of spins in the metabolite for convenience Inside the execution function there are a number of code bits that are automatically provided One is the import pygamma as pg statement Another takes the field isotopes chemical shifts and j coupling values from the control dictionary and creates a PyGamma spin_system variable called sys However this sys variable could be over written by user code as needed it is only provided as a convenience The One Pulse Example Here is the PyGamma code that is in the sequence_code string for the One Pulse sequence H pg Hcs sys pg HJ sys D pg Fm sy
41. rs none B 4 4 General Description This is a simulation of a STimulated Excitation Acquisition Mode STEAM pulse sequence The typical 90 90 90 pulses of the STEAM sequence are modeled by ideal GAMMA pulses The total TE period is controlled by the settings of loop variable 1 the TM mixing time period is controlled by the settings of loop variable 2 34 B 5 JPRESS _ Ideal B 5 1 Sequence Diagram lt j SY JI JE JI Tet Acquisition T d 2 ai ee Lon l 80y Lon soy B 5 2 Loop Variable 1 2 3 Descriptions Loop1 Describes the number of TE1 values to loop over in ms Loop2 not used Loop3 not used B 5 3 User Defined Static Parameters none B 5 4 General Description This is a simulation of a J PRESS pulse sequence The typical 90 180 90 180 pulses of the JPRESS sequence are modeled by ideal GAMMA pulses The total TE period is controlled by the settings of loop variable 1 35
42. rsor will appear Drag the mouse either left or right and a second vertical cursor will appear PPM value changes will be reflected in the Plot Control widget Release the mouse 13 and the plot will be redisplayed for the Min Max PPM axis values In a similar fashion two vertical cursors can be set inside the plot window Click and drag then release to set the two cursors anywhere in the window Changes to the cursor values will be updated in the Integral and Contour plots described below after these values are changed by the user Click and release the left mouse button in place and the plot will zoom out to its max setting Click and release the right mouse button in place and the plot will zoom to its last zoom setting ie If you use the left mouse to zoom in three times getting tighter and tighter on a region clicking in place with the right mouse will take you from zoom 3 to zoom2 to zoom to full with each successive click An Integral plot can be created from a 2D Spectral stack plot experiment for a single metabolite Metabolite areas are measured between the Left and Right Cursor settings in each spectrum and for the real imaginary or magnitude data shown The plot will show the integral along the Stack Plot axis displayed in the 1D StackPlot Once the Integral plot is displayed changes to the Left and Right Cursor values or to the Loop index widgets are reflected in the plot The Contour plot works best for Experiments that contain
43. s 1H II 25 ac pg acquirelD pg gen_op D H 0 000001 ACQ ac sigma pg sigma_eq sys sigma0 pg Iypuls sys sigma 1H 90 0 mx ACQ table sigma0 The first thing to note is that other than the sys spin_system variable this pulse sequence does not make use of any of the variables in the control_dict dictionary There are no loops in this simulation and no user defined static parameters For examples of how to use these variables see the following examples The final line of code demonstrates the one output code requirement if user is going to use the standard binning_code provided by Simulation by default The user must set up a transition table variable called mx Here is the PyGamma code that is the default binning_code string which is automatically inserted into the Binning Code tab for each new pulse sequence definition and subsequently is used in the One Pulse sequence area pg DoubleVector 0 ppm pg DoubleVector 0 phase pg DoubleVector 0 field sys Omega nspins sys spins tolppm float sim_dict blend tolerance ppm tolpha float sim_dict blend_ tolerance phase ppmlow float sim_dict peak_ search ppm low ppmhi float sim_dict peak_ search ppm high bins mx calc_spectra ppm area phase field nspins tolppm tolpha ppmlow ppmhi if bins gt 0 E area i for i in
44. s Blend Tolerances and all loop Start Value Step Count and Step Size fields At least one metabolite must be selected and moved into the In Experiment list Some default values are already included i Simulation lol x Experiment Management Modes Help Experiment2 Experiment Name example Ideal Press version 2 p Parameters Main Field MHz kan UUID 9 869540 818d 4d77 b372 FfSab16bc61F Peak Search Range PPM Blend Tolerance Investigator Brian Soher Low Do ppm 0 0015 Created 23 June 2010 High baa bagi foo Comments J some inane comment x Pulse Sequence l Name PRESS_Ideal sl Loops 1 2 and 3 TE1 ms TE2 ms m Metabolites Isotope In e Start Value bh bi In Experiment Step Count k fiz SS Step Size ba be Visualization Simulation Hz 1300 8 Value 0 Simulation provides the user with four looping variables for use in their pulses sequences This is covered in much more detail in Appendix XX however in brief The first loop is the list of selected metabolites The remaining three loops are defined as evenly spaced floating point number series Each series is defined by a starting value a number of steps and a step size So for start 10 2 steps 4 size 2 0 we would get the following values in a dimension 10 2 12 2 14 2 16 2 This value is passed directly to the user s PyGamma code and can be used in any fashion O
45. s that no changes can be made This is for the sake of consistency as results are shared However a frozen Experiment can still be deleted from the database if needed This file can be imported into another Vespa Simulation installation using the Import function 5 2 Manage Metabolites dialog Access this dialog by clicking on the Management Manage Metabolites menu item Actions that can be taken on the Metabolite dialog include New Edit View Clone De activate Delete Import and Export An example of the widget used to display and edit Metabolite information is 16 shown The Public column indicates if a metabolite has ever been exported or imported from someone else This means that it should not be edited The Use Count column indicates how many local Experiments use this metabolite While in use by any Experiments the metabolite can not be deleted Manage Metabolites d xj Isotope fal IV Show deactivated x View x x Clone NAAG truncated siemens x acetate x _Dojactivate alanine x aspartate x atp adenosine x Delete atp ribose x choline methylene x choline methylene siemens x choline methylene _2010 06 25_clone not active choline trimethyl x x choline truncated New A dialog will pop up that gives the user a blank metabolite form to fill out Select the number of spins in the metabolite and the form will enable the appropriate chemical shift and j coupling fields Edi
46. t window but no Experiment results From the Experiment menu bar you can 1 load a previously run Experiment from the Simulation database into a tab or 2 create a new Experiment in a tab and set it up and run it The Management menu allows users to run pop up dialogs to create edit view delete and import export Experiment Metabolites and Pulse Sequences from the Simulation database The status bar provides information about where the cursor is in various plots and images throughout the program It also reports short messages that reflect current processing while long running events are occurring On the Menu Bar Experiment New Experiment Open Management Manage Experiments Management Manage Metabolites Management Manage Pulse Sequences Modes Experiment Help Show Inspection Tool Help About Opens a new Experiment Tab in the Experiment Notebook Runs the Experiment Browser dialog Launches the Experiment Browser dialog Allows user to view clone delete import and export Experiments Launches the Manage Metabolite dialog Allows user to create edit view clone de activate delete import and export Metabolite prior information Launches the Manage Pulse Sequences dialog Allows user to create edit view Clone delete import and export Pulse Sequence information This menu item allows the user to switch back and forth between preset groups of panes widgets in the main window At t
47. t should not be edited The Use Count column indicates how many local Experiments use this sequence E While in use by any Experiments the sequence can not be deleted eegen As mentioned already the Vespa View Example_SpinEcho x Simulation program enables users ee to create their own pulse PRESS Ideal x 3 sequences that can then be saved STEAM_Ideal x in the database The input nares i i parameters for user functions are Gd very specific and are described in press fullpulse_summed x more detail in Appendix XX This section describes a couple of ways that external sequences can be included into the Vespa Simulation program New A widget pops up that allows the user to describe to Vespa Simulation the PyGamma code to run for a pulse sequence and how to lay out the Experiment Tab Simulate window to 18 display standard and user defined parameters The New Pulse Sequence widget is shown below Please note that there are 3 tabs affiliated with this dialog Description Sequence Code and Binning Code All three tabs must be filled out properly to successfully enter a new pulse sequence New Pulse Sequence xi l Sequence Code Binning Code Name Comments UUID 1b3666ff 7ed1 4071 b785 99a47ccc5199 Creator Created 25 June 2010 E Loop 1 Label Multiplier r Loop 2 Label Multiplier l mars B E d Label Multiplier m Parameter
48. t the fields appropriately and hit ACCEPT or Cancel See the sample in the figure below Edit The highlighted metabolite is opened in a metabolite form Only the metabolite Name and Comment are editable The name is editable because Experiments save Metabolite references by UUID which are not editable Use the Clone option to create a copy of a Metabolite that is editable x Name Comments UUID Created 25 June 2010 spins H Spin Detals SS Shift Isotope 2 3 4 5 6 7 8 9 10 u 12 3 14 oc foo EC Ji a E z Soo oo TI JI III TI J a E a 2 i p Se me a S cs S Fee El El ees I a a ee EE S a a I a ae Teen Tee a 8 S a a 9 a R a ees Teen eeng TE Te 13 P E a ey 17 View Similar to Edit but no fields are editable Clone Select a metabolite in the list hit clone and a copy of that metabolite is made that is now fully editable The new metabolite has the name of the original metabolite followed by the date and the word done Delete Only metabolites that have not been used by an experiment may be deleted This is because to reconstruct any given Experiment that object must refer to the original list of metabolites used to create it The Use Count column indicates if a metabolite is in use by an Experiment If not in use by an Experiment the highlighted metabolite in the list is deleted from the database De activate When a meta
49. ung K Soher BJ and Maudsley AA Automated Spectral Analysis II Application of Wavelet Shrinkage for Characterization of Non Parameterized Signals Magnetic Resonance in Medicine 40 816 821 1998 Soher BJ Young K Govindaraju V and Maudsley AA Automated Spectral Analysis III Application to in Vivo Proton MR Spectroscopy and Spectroscopic Imaging Magnetic Resonance in Medicine 40 822 831 1998 Soher BJ Vermathen P Schuff N Wiedermann D Meyerhoff DJ Weiner MW Maudsley AA Short TE in vivo 1 H MR spectroscopic imaging at 1 5 T acquisition and automated spectral analysis Magn Reson Imaging 18 9 1159 65 2000 Using Simulation A User Manual 1 Overview How to launch Vespa Simulation See the Vespa Installation guide for full details on package dependencies and how to install the software The easiest way to start Simulation under Windows is to create a shortcut that executes the program e Right click on the desktop and select New gt Shortcut e Type the following Target change directories as needed C Python25 python exe C vespa simulation src main py e Click Next and name the alias Simulation or whatever click OK This shortcut will run python and Vespa Simulation from a command window If there is a bug in this release of Vespa Simulation and the program crashes it should display information in this window Please refer to this code if you are reporting bugs TSE Jl Experiment Management Modes Help

Download Pdf Manuals

image

Related Search

Related Contents

Serinus 30 Manual - V2.2  Instandhaltungsanleitung Manuel d`entretien Istruzioni per la  Samsung CE1000-S Manuel de l'utilisateur  Guía del usuario  Severin ES 3563  取扱説明書 第1版 58361k  ENVIROMUX-SEMS-16 Installation and Operation Manual  SERVICE MANUAL  histoire !* - Eco  "user manual"  

Copyright © All rights reserved.
DMCA: DMCA_mwitty#outlook.com.