Tengo algunos problemas con el uso de bucles en la sección de control de ngspice. Específicamente en este ejemplo:
VD0 d 0 0
VG0 g 0 0
VS0 s 0 0
JDS d g s JM
.MODEL JM NJF (VTO=-1 BETA=1)
.CONTROL
let start_d = 0
let delta_d = 0.5
let stop_d = 1.81
let start_g = -3
let delta_g = 0.5
let stop_g = 0.01
let d_act = start_d
let g_act = start_g
while d_act le stop_d
alter vd0 dc d_act
while g_act < stop_g
alter vg0 dc g_act
op
print v(d) v(g) v(s)
let g_act = g_act + delta_g
end
let d_act = d_act + delta_d
end
.ENDC
.END
Debería pasar por todas las combinaciones de vd y vg (0, -3) (0, -2.5) ... (0 0) (0.5 -3) ...
Sin embargo, no pasa vd en absoluto. Mantiene vd = 0 y solo pasos vg.
¿Alguien puede ayudar?