diff --git a/src/sequence_io/pulseq.jl b/src/sequence_io/pulseq.jl index dccb853ae7f58b3ad46f07bd7ea7dd9b79a75dd2..9b9dd60d5bf7aebfbdf4a76842d819d0c158e961 100644 --- a/src/sequence_io/pulseq.jl +++ b/src/sequence_io/pulseq.jl @@ -53,6 +53,8 @@ function BuildingBlock(pulseq::PulseqBlock; version, BlockDurationRaster, Radiof )) end + append!(events, pulseq.ext) + grads = [pulseq.gx, pulseq.gy, pulseq.gz] min_duration = max( maximum(e[1] + variables.duration(e[2]) for e in events; init=0.), @@ -68,6 +70,9 @@ function BuildingBlock(pulseq::PulseqBlock; version, BlockDurationRaster, Radiof end times = sort(unique(vcat([0., stated_duration], _control_times.(grads, GradientRasterTime)...))) + if length(times) == 1 + push!(times, 0.) + end waveform = [(t, _get_amplitude.(grads, t, GradientRasterTime)) for t in times] return BuildingBlock(waveform, events)