Skip to content
Snippets Groups Projects
Verified Commit f03340c2 authored by Michiel Cottaar's avatar Michiel Cottaar
Browse files

Assume single k-space line is in x-direction of :FOV

parent d3fb2bb6
No related branches found
No related tags found
No related merge requests found
......@@ -10,11 +10,11 @@ struct SingleLine <: AbstractOverlapping
grad :: TrapezoidGradient
end
function SingleLine(; nsamples=nothing, dwell_time=nothing, time_to_center=nothing, adc_duration=nothing, center_halfway=true, kwargs...)
function SingleLine(; nsamples=nothing, dwell_time=nothing, time_to_center=nothing, adc_duration=nothing, center_halfway=true, rotate=:FOV, kwargs...)
readout = ADC(nsamples=nsamples, dwell_time=dwell_time, time_to_center=time_to_center, duration=adc_duration, center_halfway=center_halfway)
res = SingleLine(
readout,
TrapezoidGradient(orientation=[1, 0, 0], rotate=:FOV, flat_time=duration(readout), duration=:min)
TrapezoidGradient(orientation=[1, 0, 0], rotate=:FOV, flat_time=duration(readout), duration=:min, rotate=rotate)
)
set_simple_constraints!(res, kwargs)
return res
......@@ -24,8 +24,8 @@ waveform(sl::SingleLine) = waveform(sl.grad)
interruptions(sl::SingleLine) = [(index=2, time=effective_time(sl.adc), object=sl.adc)]
effective_time(sl::SingleLine) = rise_time(sl.grad) + effective_time(sl.adc)
dwell_time(sl::SingleLine) = sl.adc.dwell_time
slew_rate(sl::SingleLine) = sl.grad.slew_rate_1d
dwell_time(sl::SingleLine) = dwell_time(sl.adc)
slew_rate(sl::SingleLine) = slew_rate(sl.grad)[1]
gradient_strenth(sl::SingleLine) = slew_rate(sl) * rise_time(sl.grad)
fov_inverse(sl::SingleLine) = 1e3 * dwell_time(sl) * gradient_strenth(sl)
voxel_size_inverse(sl::SingleLine) = 1e3 * duration(sl.adc) * gradient_strenth(sl)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment