@@ -15,16 +15,16 @@ A composite RF pulse formed by repeating a base RF pulse.
# Variables
- `weights`: The weight of each of the base RF pulses.
- `pulse_time`: Time between the center of the RF pulses.
- `interpulse_delay`: Time between the center of the RF pulses.
- `scale_amplitude`: How strongly one should scale the amplitude versus the duration to achieve the desired weights. If set to 1 only the RF pulse amplitude will be scaled. If set to 0 only the RF pulse duration will be scaled.
"""
struct CompositePulse<:RFPulseComponent
pulses::Vector{RFPulseComponent}
pulse_time::VariableType
interpulse_delay::VariableType
scale_amplitude::VariableType
end
function CompositePulse(;base_pulse::RFPulseComponent,nweights=nothing,weights=nothing,pulse_time=nothing,scale_amplitude=nothing,variables...)
function CompositePulse(;base_pulse::RFPulseComponent,nweights=nothing,weights=nothing,interpulse_delay=nothing,scale_amplitude=nothing,variables...)
ifisnothing(weights)
ifisnothing(nweights)
error("Either `nweights` or `weights` should be set when constructing a CompositePulse.")
...
...
@@ -44,7 +44,7 @@ function CompositePulse(; base_pulse::RFPulseComponent, nweights=nothing, weight