Skip to content
Gael Bringout edited this page Mar 21, 2015 · 3 revisions

Welcome to the BasicsMPI wiki!

Those scripts are here to provide the first few function required to quickly simulate the data acquisition process from an ideal 0D spectrometer to any (relativly) realstic scanner to the reconstructed image.

The work flow for the simulation is as follows:

  1. Define the access path to the required other packages. This are typically the sphericalHarmonics and ScannerDesign packages.,
  2. Loading the scanner coil's model. It is made of at least the spherical harmonics coefficient, the radius in which they are define and the nominal current used for the coil.,
  3. Define all the other system parameters. The spatial resolution of the phantom and the system matrix. The used frequencies, time vector, sampling frequencies, noise parameters etc. This is highly dependent on the scanner you want to model.,
  4. Calculate the field for the system matrix. From the spherical harmonics coefficient, the magnetic flux density is calculated. The receive coils fields are also defined here.,
  5. Define the time-varying amplitude applied on the different coils. Also named sequence. As we are going to make a derivative, two similar vectors are created for each amplitude. One at t and one at t+dt.,
  6. Create the time-varying magnetic flux-density for the SM,
  7. The magnetic flux-density can be displayed in a 2D plane for all time t, to check your MPI-signal generating volume's shape,
  8. Calculate the time-varying magnetization for each point in space for the SM. Often using the Langevin model. Note that the magnetic flux density matrix are used to stored the obtained values, in order to save memory. If you have enough memory on your system, you can of-course save the magnetization in another matrix.,
  9. Calculate the induced voltage for the SM and the SM. Here the SM is calculated, reduced to his one-sided form and the energy is corrected.,
  10. Make the phantom. Here the SM is calculated, reduced to his one-sided form and the energy is corrected.,
  11. Calculate the fields for the phantom measurement. As another resolution is used to avoid the inverse crime.,
  12. Create the time-varying magnetic flux-density for the phantom measurement.,
  13. Calculate the time-varying magnetization for each point of the phantom. Often using the Langevin model. Note that the magnetic flux density matrix are used to stored the obtained values, in order to save memory. If you have enough memory on your system, you can of-course save the magnetization in another matrix.,
  14. Multiplying the time-varying magnetization for each point of the phantom with the phantom's tracer concentration.,
  15. Calculate the induced voltage for the phantom measurement. Here the FFT is calculated, reduced to his one-sided form and the energy is corrected.,
  16. Calculate the SNR. Here we filter on the signal SNR. This could also be done on the SM.,
  17. Truncating signals and SM to remove as much unnecessary information as possible,
  18. Assemble the channel and reconstruct the truncated signals. Simply using a modified version of the ART algorithm.