Background: Right now developing sequences is rather low-level and error prone. This is somewhat on purpose since we wanted much flexibility in the sequence files and with that respect they are doing a nice job.
Additional Issue: In practice one often wants to have a certain sequence structure, but changes just values. For instance one wants to create a 2D sequence (xy plane) but wants to keep the FOV and the gradient strength flexible. This may lead to an explosion of methods if we would store all of theses. Another issue is then how to name all these sequences.
Having said this we have certain design space that is open for us.
One way ist to have a very high level way of defining a sequence and let this be translated to low level. I fear that this approach will require magnetic fields since the currents need to be derived from high-level descriptions like FOV+gradient
Another/additional way could be the definition of "templates", which are compatible with the current system. Theses templates could then keep certain fields open and allow for the generation of "subsequences". Probably, these Templates are not even necessary but could be derived from the concrete sequences itself. I.e. if we store several sequences with just different DF values, we could somehow group them together by identifying that the "structure" of the sequence is the same.
Background: Right now developing sequences is rather low-level and error prone. This is somewhat on purpose since we wanted much flexibility in the sequence files and with that respect they are doing a nice job.
Additional Issue: In practice one often wants to have a certain sequence structure, but changes just values. For instance one wants to create a 2D sequence (xy plane) but wants to keep the FOV and the gradient strength flexible. This may lead to an explosion of methods if we would store all of theses. Another issue is then how to name all these sequences.
Having said this we have certain design space that is open for us.