highlight.sp

    * Current Mode PWM Average Model
    *
    .Subckt PWM-CM nA nC nP nVCtrl nD Params: Lsw=100uH Fsw=100kHz DCMax=0.95 DCMin=0.05 RISense=1 Slope=100m
    *
    * Input Resistor on Control Pin
    RVCtrl nVCtrl 0 1Meg
    *
    * ON Duty Cycle
    EDuty nD 0 Value={V(nDPC)*V(nCx,nP)/(V(nA,nP)-V(nCx,nP)+1u)} ; EDuty
    *
    .EndS PWM-CM

    ** Includes
    .include some_model.mod
    .include models/test/BC550.mod

    ** Comments
    * General SPICE.
    ; PSpice
    $ ngspice
    .param ... ; PSpice
    .param ... $ ngspice

    ** Parameters
    .param TESTPARAM = '2 * 1.5V'
    .param TESTPARAM = "2 * 1.5V"
    .param TESTPARAM = { 2 * 1.5V }
    .param TESTPARAM = [ 2 * 1.5V ]
    .param TESTPARAM = ( 2 * 1.5V )

    .four 1Meg v(input)

    Vinput input 0 SIN(500mV 1V 1k)
    vinput input 0 sin(500mV 1V 1k)

    * Input Sources
    EXP(0 2V 1ms 2ms 3ms 1 2)
    exp(0 2V 1ms 2ms 3ms 1 2)
    * lx is also a function
    Lx node1 node2 200mH

    ** Sub-Circuit
    * Call
    X1 inv ninv out v+ v- LM324
    x1 inv ninv out v+ v- lm324

    .end