diff --git a/src/containers/base_sequences.jl b/src/containers/base_sequences.jl index d5956408b93096035640bc4daeafca1733b9ceaa..9d024e7292afe2d9079197fde2b2a4b3de604912 100644 --- a/src/containers/base_sequences.jl +++ b/src/containers/base_sequences.jl @@ -4,7 +4,7 @@ Defines [`BaseSequence`](@ref) and [`Sequence`](@ref) module BaseSequences import StaticArrays: SVector import JuMP: @constraint -import ...Variables: get_free_variable, VariableType, variables, set_simple_constraints!, make_generic, get_gradient, get_pulse, get_gradient, @defvar +import ...Variables: get_free_variable, VariableType, variables, set_simple_constraints!, make_generic, get_gradient, get_pulse, get_gradient, @defvar, add_cost_function! import ...BuildSequences: global_scanner import ...Components: EventComponent, NoGradient, edge_times import ...Scanners: Scanner, B0 @@ -151,10 +151,11 @@ struct Sequence{S, N} <: BaseSequence{N} scanner :: Scanner end -function Sequence(blocks::AbstractVector; name=:Sequence, scanner=nothing, variables...) +function Sequence(blocks::AbstractVector; name=:Sequence, scanner=nothing, vars...) blocks = to_block_pair.(blocks) res = Sequence{name, length(blocks)}(SVector{length(blocks)}(blocks), isnothing(scanner) ? global_scanner() : scanner) - set_simple_constraints!(res, variables) + set_simple_constraints!(res, vars) + add_cost_function!(variables.duration(res), 3) return res end