imr-framework / pypulseq

Pulseq in Python
https://pypulseq.readthedocs.io
GNU Affero General Public License v3.0
115 stars 62 forks source link

Question related to SE and TSE #54

Closed hfahad closed 3 years ago

hfahad commented 3 years ago

Hello, I am now in this field, I have a question and request related to some examples.

1) In the example of https://github.com/imr-framework/pypulseq/blob/master/pypulseq/seq_examples/notebooks/write_t2_se.ipynb, can you please tell me the TE and TR is defined in the beginning as the actual echo and repetition time or TE=delay1+delay2, TR=delay_TR is the actual echo and repetition time?

2) If we want to change the BW then should we need to change the readout_time right? BW=1/readout_time?

2) can you please also change this TSE example https://github.com/imr-framework/pypulseq/blob/master/pypulseq/seq_examples/scripts/write_tse.py with a different TF (Turbo factor ) parameter?

best, Hafiz

sravan953 commented 3 years ago

Hello. TE and TR are defined to be 100e-3 and 3 seconds at the beginning. To ensure that the ADC readout occurs at the time of TE, delay events are added appropriately to space out the events in time. Similarly the case with TR.

hfahad commented 3 years ago

Thanks for your answer. can you please also give me a comment on 2) and 3) questions?

sravan953 commented 3 years ago

Sure:

  1. Correct
  2. In the TSE example, the n_echo parameter relates to the turbo factor - https://github.com/imr-framework/pypulseq/blob/cc9ccfb55f3d22ed54ca5a8608b21ca70e698c86/pypulseq/seq_examples/scripts/write_tse.py#L22
hfahad commented 3 years ago

thanks, what about a number of averages? And the last question from my side, is it possible to to convert in Dicom file after reconstruction of raw data?

sravan953 commented 3 years ago
hfahad commented 3 years ago

Dear Sravan today i run https://github.com/imr-framework/pypulseq/blob/master/pypulseq/seq_examples/notebooks/write_t2_se.ipynb example in our siemens MRI using pulseq, but its not working, I have a simple gre.seq as an example which is working very well. also when I compare the both .seq file gre.seq and se.seq then I found some information are missing in se.seq. e,g FOV definition can you please check if this example is correct or not

sravan953 commented 3 years ago

Hi @hfahad, thanks for letting me know. Definitions are for human-reference - it's for convenience so you can share the .seq file with others and they can learn some basic information about the sequence by looking into the definitions. They do not affect the sequence execution. That said, what version of the Pulseq interpreter are you running? Which scanner?

hfahad commented 3 years ago

hi @sravan953 Please find 2 sequence files in the attachment 1) gre_working.seq, which is working perfectly, and 2) se.seq which is generated by your example https://github.com/imr-framework/pypulseq/blob/master/pypulseq/seq_examples/notebooks/write_t2_se.ipynb. and this seq is not running in our Pulseq. I am using the latest version of pusleq 1.3.1 but the gre.seq fine generated by the 1.2.0 version. i am running pusleq in Siemens scanner Magnetom Aera pulseq_seq.zip

Do you think this could be a problem? can you please tell me what's wrong with this sequence?

sravan953 commented 3 years ago

Which script did you use to generate your GRE sequence?

hfahad commented 3 years ago

As i told you the GRE sequence which i used and its was working very well this sequence gave me by Prof.Moritz. I tried the different version of pulseq it still did not work. But yesterday i used a matlab version of pusleq and run a gre sequence file and it work. I still do not know why pypulseq is is not working in my scanner.

best, Hafiz

sravan953 commented 3 years ago

Tomorrow, I will try the example generated by this notebook - https://github.com/imr-framework/pypulseq/blob/master/pypulseq/seq_examples/notebooks/write_t2_se.ipynb. I will let you know if it ran without any errors, that should help us debug what is happening at your end.

hfahad commented 3 years ago

that would be great,

sravan953 commented 3 years ago

Hi @hfahad. I generated a .seq file from the notebook and it began executing on our Siemens Prisma Fit 3T. It was a 20' sequence, so after about 2', I stopped the sequence. Nevertheless, the sequence ran on our scanner. Since you are running on different hardware, maybe the gradient/slew limits are an issue. Please modify the values accordingly and give it another try.

hfahad commented 3 years ago

Hi @sravan953 which version of pusleq you used on Siemens Prisma 3T? we also have Siemens Prisma so I can also try there as well.

sravan953 commented 3 years ago

I ran the notebook as is - it installs PyPulseq from the dev branch. So that means it is PyPulseq 1.3.1r1 + changes on the dev branch. The interpreter we are running on our Prisma Fit 3T is 1.3.1.