  Nuclear magnetic resonance (NMR) concepts are rooted in quantum mechanics,
but MR imaging principles are well described and more easily grasped using
classical ideas and formalisms such as Larmor precession and the
phenomenological Bloch equations. Many textbooks provide in-depth descriptions
and derivations of the various concepts. Still, carrying out numerical Bloch
equation simulations of the signal evolution can oftentimes supplement and
enrich one's understanding. And though it may appear intimidating at first,
performing these simulations is within the realm of every imager. The primary
objective herein is to provide novice MR users with the necessary and basic
conceptual, algorithmic and computational tools to confidently write their own
simulator. A brief background of the idealized MR imaging process, its concepts
and the pulse sequence diagram are first provided. Thereafter, two regimes of
Bloch equation simulations are presented, the first which has no radio
frequency (RF) pulses, and the second in which RF pulses are applied. For the
first regime, analytical solutions are given, whereas for the second regime, an
overview of the computationally efficient, but often overlooked, Rodrigues'
rotation formula is given. Lastly, various simulation conditions of interest
and example code snippets are given and discussed to help demonstrate how
straightforward and easy performing MR simulations can be.
