GS02-1193 Bloch Equations Simulator 1 GS02-1193 Introduction to Medical Physics IV Exercise 1: Discrete Subjects Once SpinWright is running, select the Subject tab. The GUI display toward the top of the window displays all of the parameters of the selected isochromatic spin group. The band below the ISG panel contains a control that shows the current ISG (and allows one to type in a number to select another) and an indicator of the total number of ISGs in the subject. Below that band is a listing of all of the ISGs. One can click on a line in order to select that ISG for editing in the ISG GUI near the top. To the right is a column of buttons that allow the ISG described in the GUI to be added to the subject either above or below the ISG that is currently selected in the list or to replace the currently selected ISG. The currently selected ISG may be deleted from the subject or all of the ISGs may be deleted. If changes are made in the editing section, the replace button is used to update the actual parameters in the selected ISG. Let's load the subject X21.subjasc using Sequence Actions Load ASCII. Hopefully, the meaning of each ISG line in the list will be apparent. Each row shows the parameters of an ISG in the order gyromagnetic ratio, spin density, T 1, T 2, chemical shift, M 0x, M 0y,
GS02-1193 Bloch Equations Simulator 2 M 0z, Pos x, Pos y, Pos z, Vel x, Vel y, Vel z, Acc x, Acc y, Acc z, Jer x, Jer y, and Jer z. If you hover your cursor over the corresponding text box in the ISG GUI you'll see a tooltip with the units of each entry. The units of spin density are arbitrary. This subject consists of 21 spins located at 1 mm increments from x = -10 mm to x = +10 mm. This example will illustrate a major drawback of simulations like this; a true subject is continuous while a simulated subject is composed of discrete isochromats. Notice also that the text in the Subject tab has changed color from Red to Green. This signifies that a proper subject has been loaded. To see what the spatially discrete nature of the subject means in practice, create an experiment consisting of a hard (i.e., rectangularly shaped) rf pulse. Go to Pulse Sequence Actions New. The graphical pulse sequence generator should come up with the MainLoop created. Click Add Above to create a time slice. In that time slice, go to the RF column and choose Hard Pulse. Give it a name (like RF1), an amplitude of 11.74 μt, a phase of 0.0 degrees, an offset of 0.0 Hz, a start of 0 μs and a duration of 500 μs. Click the Add button to make it active. (Note that it is easy to create an element in a time slice, but then forget to click that little Add button and thus not actually to add it to the pulse sequence.) You can change parameters in the text entry windows or remove the pulse sequence element entirely from the pulse sequence by clicking the same button, which now says Delete. Click the little circle to the left of this time slice to make it the selected one. Then, from the loop area, click the Add Below button. This should have put a second time slice below the first one. In that one, create a delay of 50,000 μs. It should start at 0 because all starting times in a time slice are with respect to the start of that time slice.
GS02-1193 Bloch Equations Simulator 3 Use Pulse Sequence Sequence Save PPV (Visual) As to save the pulse sequence in a format from which the graphical representation can be loaded. (Note that there are valid pulse sequences that cannot be represented by the graphical system, which is why there are two similar formats, PPV and PPG. However, in practice you are likely never to encounter a situation that PPV, the visual representation, cannot handle.) Next, use Pulse Sequence Sequence Ready to create the internal PPG representation. You can now use Pulse Sequence Sequence Save PPG (ASCII) As to save this internal PPG representation in ASCII format if you want to. After the Ready command has been executed, the simulation has an internal representation of the pulse sequence in terms of pulse sequence elements and their parameters. This must be compiled into a time-series representation of the waveforms of each of the physical components of the simulated instrument: the x- and y-components of the radiofrequency waveform and the x-, y- and z-axis gradient waveforms. To compile the elemental description into the time series description, we also need to know some details about the experiment. You can use either Pulse Sequence Sequence Pulse Sequence Parameters or Experiment Actions Pulse Sequence Parameters to set the experiment to accommodate the entire pulse sequence. Alternatively, you may enter the parameters of the experiment on the Experiment page. Then you can compile the pulse sequence using either Pulse Sequence Actions Compile or Experiment Actions Compile PPG (ASCII). Once the pulse sequence is compiled, you can display it with Pulse Sequence Actions Display, which will display a plot of the compiled pulse sequence in a separate window. Please note that very long pulse sequences (e.g., the 2DFT example) will take forever to display, so exercise caution or else be patient.
GS02-1193 Bloch Equations Simulator 4 After the pulse sequence has been compiled, the text of both the Pulse Sequence tab and the Experiment tab will turn green, meaning that everything is ready for the simulation to be run. Experiment Run will display a plot of the net magnetization vector for the 50.5 msec duration of the experiment. You will note a decay of M y that is consistent with spin-spin relaxation and a recovery of M z that is consistent with spin-lattice relaxation. If you want to save these plots, size them to your liking and then use a screen capture program to store a bitmap of the plot. You can also save the data in ASCII form, if you care to, with Experiment Actions Save Data as described in the accompanying documents. Note that the color of the Subject tab text has changed to orange, indicating that the subject is no longer in the condition in which it was loaded. The ISGs have precessed and have decayed, so the values of M x, M y and M z have evolved. You can see this by looking at the list of ISGs on the Subject page. If you want to run another experiment with the same subject, you would need to reload the subject to start over from the initial conditions. Note that if you had not saved the subject after entering it in the GUI, you are out of luck at this point as the program does not store the initial state internally. That is why I suggested that you save the subject after you created it and then load it from the file. If the subject had been loaded from a file prior to running the previous experiment,
GS02-1193 Bloch Equations Simulator 5 Subject Actions Reload will reload it without having to name the file again. Notice the change in the ISGs in the list when you reload. This first walk through the simulation process was pretty simple. Let's try another subject with the same pulse sequence. Create a new subject that consists of 21 ISGs, all of which are located at (0, 0, 0) with SD = 100, T 1 = 500 and T 2 = 200, but whose chemical shifts differ by increments of 1.333 ppm from -13.33 ppm to +13.33 ppm. Be sure to save your subject and then load it from the saved file. That will enable you to reload it or use it again if you wish. Note that if you click Delete All or Subject Actions New, it will clear the ISG list, but it might leave the GUI in a less than pristine state. Check every value to make sure that it is what you want before you add your first ISG to the empty subject. Run the experiment (using the hard 90º pulse and the 50,000 μs delay pulse sequence). What do you see? It looks like a series of spin echoes, but we don t have any refocusing gradients or 180 pulses. Save the data to a text file and load the file into a spreadsheet program. What is the temporal spacing between peaks? How does this relate to the incremental difference in resonant frequency among the isochromats? Now, load the X21.subjasc subject again and modify the pulse sequence. If need be, reload the pulse sequence first. Use the same hard rf pulse, but in the second time slice add a G x ramp gradient with a starting time of 0 μs, ramp up and ramp down times of 500 μs and a duration of 50,000 μs. Use 2 mt/m for the amplitude. Note that when you compile the pulse sequence, it uses the same parameters as before without asking you for new ones. If you want to change the parameters, you can change them on the Experiment page, but you will then need to recompile the pulse sequence. It also keeps the same scanner information, so run the experiment. What do you see? It looks like a series of spin echoes, but we did not use any refocusing gradients or 180º pulses. Save the data to a text file and load the file into a spreadsheet program. What is the temporal spacing between peaks? How does this relate to the spatial separation of isochromats in the object and the strength of the G x gradient that we applied? Why does this result resemble that of the experiment with the isochromats with different chemical shifts so closely? What happens if you change the strength of G x? (Remember to go through the Ready and Compile steps again for the pulse sequence and to Reload the subject.) How did the result change and why?
GS02-1193 Bloch Equations Simulator 6 The point of this exercise is that you should design subjects that have enough isochromats that are spaced closely enough together that their natural rephasing by virtue of being discrete occurs much later than any refocusing effect that you intend to introduce. Otherwise, you run the risk of spurious results that make a new idea for a pulse sequence seem to work better (or perhaps worse) than it truly would in real life.