diff --git a/src/sequence_io/pulseq.jl b/src/sequence_io/pulseq.jl index 7c1e344cd4132dc679590eabae1c4a72d97d5b9b..80d6b4bfcec62687a4a5425defe368e305001fad 100644 --- a/src/sequence_io/pulseq.jl +++ b/src/sequence_io/pulseq.jl @@ -267,13 +267,13 @@ function build_sequence(; scanner=nothing, B0=3., TR=nothing, definitions, versi times = grad_shape.times .* (num * gradient_raster) .+ start_time end push!(grad_shapes, (times, grad_shape.amplitudes .* (proc.amp * 1e-9))) - block_duration = max(proc.delay * 1e-3 + num * gradient_raster, block_duration) + block_duration = max(start_time + num * gradient_raster, block_duration) elseif !isnothing(trap) && grad_id in keys(trap) proc = trap[grad_id] start_time = proc.delay * 1e-3 times = (cumsum([0, proc.rise, proc.flat, proc.fall]) .* 1e-3) .+ start_time push!(grad_shapes, (times, [0, proc.amp * 1e-9, proc.amp * 1e-9, 0])) - block_duration = max((proc.delay + proc.rise + proc.flat + proc.fall) * 1e-3, block_duration) + block_duration = max((start_time + proc.rise + proc.flat + proc.fall) * 1e-3, block_duration) else error("Gradient ID $grad_id not found in either of [GRADIENTS] or [TRAP] sections") end