SMS spoke design with SAR constraints

From MGH/MIT Parallel Transmission Resources
Jump to navigation Jump to search


Guérin Bastien, Setsompop Kawin, Ye Huihui, Poser Benedikt A., Stenger Andrew V. and Wald Lawrence L. (2015). "Design of parallel transmission pulses for simultaneous multislice with explicit control for peak power and local specific absorption rate". Magnetic Resonance in Medicine 73(5):1946–1953

What this code does

This Matlab code (no MEX, no GPU code) computes least-squares and magnitude least-squares pTx spoke SMS pulses with SAR constraints. The MLS problem can be solved using the phase adoption approach of Setsompop et al. or a full optimization strategy.

Download files

The code can be downloaded here. An example of how to run the SMS design can be downloaded here and its accompanying dataset can be downloaded here.


Pre-scan data format

The format of the pre-scan data (e.g., B0 map, B1+ maps, slice information in the SODA file) matches the Siemens pTx "Step 2" data format. To take a closer look at this, download the file. The ROI, B0 and B1+ maps need to have Z images, where Z is the number of SMS slices to be excited simultaneously. To get the ROI and B0 maps, I use the Siemens product gre_fieldmapping sequence (make sure to chose "save magnitude/phase" in order to get both the B0 and ROI maps in the same scan). The B0, B1 and ROI datasets must have the same number of pixels and same dimensions.

Spokes optimization

Unzip the code folder and add it to your path. Unzip the data folder and run the script run_spokes_sms.m. There are several options in it that are straightforward to understand. Most of the spoke options (such as slice-thickness, slice-selection gradient, time-bandwidth product etc...) are specified in the text file spokes_def.txt and can be changed there.