ed linear operators, and pulse reshaping functions are included.20 This toolbox builds on the RF tools introduced previously in the SigPy.RF Python software21 package ( Martin et al., 2020 ). The current toolbox continues to leverage SigPy’s existing 22 capabilities for GPU computation, iterative optimization, and powerful abstractions for linear23 operators and applications ( Ong & Lustig, 2019 ). The table below shows an outline of the 24 implemented functions.25 Module Description .rf.adiabatic.py Adiabatic/frequency-swept RF pulses (e.g. ( Garwood, 2001 )) .rf.b1sel.py B1-selective pulses (e.g. ( Martin et al., 2022 )) .rf.multiband.py Pulses for simultaneous multi-slice (e.g. ( Norris et al., 2011 )) .rf.optcont.py Large tip angle optimal control design (e.g. ( Connolly et al., 1986 )) .rf.ptx.py parallel transmit pulse designers (e.g. ( Grissom et al., 2006 )) .rf.shim.py parallel transmit RF shimming (e.g. ( Mao et al., 2006 )) .rf.slr.py Conventional SLR and variations (e.g. ( J. Pauly et al., 1991 )) .rf.util.py RF pulse design utilities .grad.waveform.py Gradient and trajectory designers (e.g. ( Kim et al., 2003 )) .grad.optim.py Gradient and trajectory optimization (e.g. ( Lustig et al., 2008 )) io.py Vendor-specific scanner input/output linop.py Linear operators for pulse design (e.g. ( Grissom et al., 2006 )) sim.py 1-D/N-D/N-coil Bloch simulation (e.g. ( Mansfield & Morris, 1982 )) verse.py RF pulse/gradient reshaping tools Preliminary development of this toolbox was presented in reference ( Martin et al., 2020 ). The 26 pulse design tools were initially implemented as a sub-package in the SigPy Python package27 Martin et al. (2024). PulPy: A Python Toolkit for MRI RF and Gradient Pulse Design. Journal of Open Source Software ,0(0), ¿PAGE? https://doi.org/10.xxxxxx/draft .1 DRAFT for signal processing and image reconstruction ( Ong & Lustig, 2019 ). PulPy migrates those 28 tools into a pulse design specific package, with SigPy as an external dependency. PulPy29 has been streamlined and expanded to include a larger collection of RF and gradient pulse30 design methods from the literature, as well as additional utility tools for I/O, pulse reshaping,31 and experimental B+ 1-selective pulse design algorithms. The toolbox has proved useful for 32 prototyping novel pulse design algorithms, enabling the publication of Reference ( Martin et al., 33 2022) by the authors and several works from other groups Wu et al. ( 2023). Figure??shows 34 an example of RF and gradient waveforms produced by PulPy.35 Statement of need36 The field of magnetic resonance imaging is currently experiencing rapid growth in available open37 source imaging tools. Tools have been made freely available for MRI hardware development38 (Amrein et al., 2022 ;Anand, 2018 ), system simulation ( Stöcker et al., 2010 ;Villena et al., 39 2014), pulse sequence programming ( Layton et al., 2017 ), image reconstruction ( Ong & 40 Lustig, 2019 ;Uecker et al., 2015 ), and post-processing and analysis [Avants et al. ( 2014); 41 Duval et al. ( 2018); Soher2023]. The great increase in open-source tools has helped enable 42 fully open-source imaging systems Artiges et al. ( 2024). However, one critical aspect of the 43 imaging pipeline which has seen limited open-source tool development is RF and gradient pulse44 design. While RF pulse and gradient designers increasingly share code online in independent45 repositories, there are few sets of common pulse design tools maintained in a rigorous and46 consistent manner with easy-to-read code and tutorials. This is despite the reality that in47 many cases, carefully designed or application-specific RF and gradient pulses are crucial to the48 success of MRI or NMR techniques. An open source pulse design code library would facilitate49 the development and dissemination of novel techniques and the comparison of approaches,50 similar to how BART ( Uecker et al., 2015 ) and SigPy ( Ong & Lustig, 2019 ) have made 51 advanced parallel imaging and reconstruction methods widely accessible. To meet this need,52 we have developed a library of MRI pulse design tools. We call this new package PulPy, short53 for Pulses in Python.54 Martin et al. (2024). PulPy: A Python Toolkit for MRI RF and Gradient Pulse Design. Journal of Open Source Software ,0(0), ¿PAGE? https://doi.org/10.xxxxxx/draft .2 DRAFT Figure 1: Example RF and gradient waveforms that PulPy can produce. Top left: 4-channel spokes RF pulse. Bottom left: associated 3-axis spokes gradient waveforms. Top right: PINS excitation RF pulse. Bottom right: associated slice-axis gradient Target Audience55 The PulPy toolbox has been developed for use by MRI researchers who are interested in pulse56 sequence design, MRI physics, signal processing, and optimization. We believe that it will serve57 as an essential building block for more general image acquisition tools which require specialized58 RF pulses. The previous iteration of this toolbox, SigPy.RF, has already been incorporated into59 open-source sequence development software such as Pulseq ( Layton et al., 2017 ) and PyPulseq 60 (Sravan Ravi et al., 2019 ) to provide RF pulses critical to the performance of various pulse 61 sequences. We feel that PulPy, with its’ more specific focus on pulse design, will be able to62 even more easily integrated into other MRI acquisition software toolboxes, and we encourage63 other MRI software developers to incorporate PulPy as a component of MRI acquisition64 software. Finally, end-to-end optimization of MRI pulse sequences and reconstructions is being65 increasingly explored ( Radhakrishna & Ciuciu, 2023 ;Wang et al., 2022 ); with the RF pulse and 66 gradient waveform design functions provided, the PulPy package could facilitate this research.67 Reproducibility and standardization are critical needs in MRI , and any method of reducing68 methodological variability is desirable. We believe that having centralized