 Consolidating EPI echo spacing and readout time for Philips scanner

#1

Dear All,

I know that this has been previously discussed on various forums . However, I have noticed some discrepancy in the way EPI echo spacing and readout time are being calculated, specifically for Philips scanner. I will first attempt to summarize various methods that I have found and then through two cases show the discrepancies. I hope that this thread can be used for resolving these. The readout time is an important value that is required for “unwarping” using fieldmap; it is additionally used in diffusion tools like topup etc.

Abbreviations used
`WFS`: water-fat shift (per pixel)
`ETL`: echo train length

Calculating effective echo spacing (formulae edited for consistent abbreviations)

a) Using OSF formula 

`effective echo spacing = (((1000 * WFS)/(434.215 * (ETL+1))/acceleration)`

b) Using BrainVoyager formula 

`echo spacing in msec = 1000 * (WFS/(water-fat shift (in Hz) * ETL))`

where
`ETL = EPI factor + 1`
`water-fat-shift (Hz) = fieldstrength (T) * water-fat difference (ppm) * resonance frequency (MHz/T)`
water-fat difference (ppm) = 3.35 
resonance frequency (MHz/T) = 42.576
effective echo spacing = echo spacing/acceleration

`=> effective echo spacing = (1000*(WFS/427.888*ETL))/acceleration`

Calculating total readout time (formulae edited for unit preservation and consistency)

a) Using FSL forum post 

`total readout time = echo spacing * (EPI factor - 1)`

b) Using topup FAQ formula 

`total readout time = echo spacing * EPI factor`

c) Using BIDS specification 

`total readout time = effective echo spacing * (ReconMatrixPE - 1)`

I am assuming that folks have interchangeably used `echo spacing` and `effective echo spacing` in the three formulae here.

Case1: sparse acquisition
Acquisition parameters (from ExamCard (console)):
`EPI factor = 45`
`Act. WFS (pix) / BW (Hz) = 8.881 / 48.9`
`BW in EPI freq. dir. (Hz) = 3133.3`
`Min. WFS (pix) / Max. BW (Hz) = 8.859 / 49.0`
`Reconstruction matrix = 64`
`SENSE P reduction (AP) = 1.45000005`
`MB SENSE = no`
`Act. TR/TE (ms) = 4000 / 30`
`Min. TR/TE (ms) = 2053 / 12`

Substituting above values into the formulae

effective echo spacing
a) `OSF Method: = 0.3066`
b) `BrainVoyager Method: 0.3112` (echo spacing is 0.4512)

Using the BrainVoyager calculated value for readout calculation

a) `Forum post formula: 13.6928`
b) `Topup FAQ formula: 14.0040`
c) `BIDS formula: 19.6056`

Case2: regular acquisition
`Acquisition parameters (from ExamCard (console)):`
`EPI factor = 45`
`Act. WFS (pix) / BW (Hz) = 8.885 / 48.9`
`BW in EPI freq. dir. (Hz) = 3131.4`
`Min. WFS (pix) / Max. BW (Hz) = 8.863 / 49.0`
`Reconstruction matrix = 64`
`SENSE P reduction (AP) = 1.45000005`
`MB SENSE = no`
`Act. TR/TE (ms) = 3000 / 30`
`Min. TR/TE (ms) = 2461 / 12`

Substituting above values into the formulae

effective echo spacing
a) `OSF Method: = 0.3068`
b) `BrainVoyager Method: 0.3113` (echo spacing is 0.4514)

Using the BrainVoyager calculated value for readout calculation

a) `Forum post formula: 13.6972`
b) `Topup FAQ formula: 14.0085`
c) `BIDS formula: 19.6119`

Questions:

1. There is discrepancy in the definition of echo train length: `dcm2niix` reports the`EPI factor` as the echo train length in the JSON file while `BrainVoyager` mentions `ETL = EPI factor + 1`. The OSF document mentions that `ETL=EPI factor`

2. The two formulae for calculating effective echo spacing are almost identical except for the constant term: `OSF/Spinoza centre` uses `434.215` while the calculation via `BrainVoyager` results in `427.888`. How should we resolve this difference?

3. Which method should be used for calculating total readout time?

Look forward to getting some advise on these. Of course, if there is an error in my interpretation, please feel free to point that out. Thank you

#2

References (contd.)