diff --git a/src/components/pulses/sinc_pulses.jl b/src/components/pulses/sinc_pulses.jl
index c6352f057a5733be94455855f520da3ea7f65b8e..db5e47f6e22f2d3d7e118836d9d93bf912c3857d 100644
--- a/src/components/pulses/sinc_pulses.jl
+++ b/src/components/pulses/sinc_pulses.jl
@@ -49,8 +49,12 @@ function SincPulse(;
         [get_free_variable(value) for value in (amplitude, phase, frequency, lobe_duration)]...,
         group
     )
-    @constraint global_model() res.amplitude >= 0
-    @constraint global_model() res.lobe_duration >= 0
+    if !(res.amplitude isa Number)
+        @constraint global_model() res.amplitude >= 0
+    end
+    if !(res.lobe_duration isa Number)
+        @constraint global_model() res.lobe_duration >= 0
+    end
     set_simple_constraints!(res, kwargs)
     return res
 end