Tcl SpiceGenTcl package (v)

::SpiceGenTcl::Common::SourcesTop, Main, Index

ClassesTop, Main, Index

ac [::SpiceGenTcl::Common::Sources]Top, Main, Index

Method summary
constructorConstructor for the class.
addParamSee ::SpiceGenTcl::Device.addParam
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
deleteParamSee ::SpiceGenTcl::Device.deleteParam
duplListCheckSee ::SpiceGenTcl::DuplChecker.duplListCheck
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
getParamsSee ::SpiceGenTcl::Device.getParams
getPinsSee ::SpiceGenTcl::Device.getPins
setParamValueSee ::SpiceGenTcl::Device.setParamValue
setPinNodeNameSee ::SpiceGenTcl::Device.setPinNodeName
Properties

Readable: -Name

Writable: -Name

Superclasses

::SpiceGenTcl::Device

Subclasses

Vac, Iac

constructor [::SpiceGenTcl::Common::Sources::ac]ac, Top, Main, Index

ac create OBJNAME name type npNode nmNode ?args?
ac new name type npNode nmNode ?args?
Parameters
nameNot documented.
typeNot documented.
npNodeNot documented.
nmNodeNot documented.
method constructor {name type npNode nmNode args} {

    set arguments [argparse -inline {
        {-ac= -required}
        -acphase=
    }]
    set acVal [dict get $arguments ac]
    lappend params "ac -sw"
    if {([llength $acVal]>1) && ([lindex $acVal 1]=="-eq")} {
        lappend params "acval [lindex $acVal 0] -poseq"
    } else {
        lappend params "acval $acVal -pos"
    }
    dict for {paramName value} $arguments {
        if {$paramName ni {ac}} {
            if {([llength $value]>1) && ([lindex $value 1]=="-eq")} {
                lappend params "$paramName [lindex $value 0] -poseq"
            } else {
                lappend params "$paramName $value -pos"
            }
        }
    }
    next $type$name [list "np $npNode" "nm $nmNode"] $params
}

Cccs [::SpiceGenTcl::Common::Sources]Top, Main, Index

Method summary
constructorConstructor for the class.
addParamSee ::SpiceGenTcl::Device.addParam
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
deleteParamSee ::SpiceGenTcl::Device.deleteParam
duplListCheckSee ::SpiceGenTcl::DuplChecker.duplListCheck
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
getParamsSee ::SpiceGenTcl::Device.getParams
getPinsSee ::SpiceGenTcl::Device.getPins
setParamValueSee ::SpiceGenTcl::Device.setParamValue
setPinNodeNameSee ::SpiceGenTcl::Device.setPinNodeName
Properties

Readable: -Name

Writable: -Name

Superclasses

::SpiceGenTcl::Device

Subclasses

F, ::SpiceGenTcl::Ngspice::Sources::Cccs, ::SpiceGenTcl::Xyce::Sources::Cccs

constructor [::SpiceGenTcl::Common::Sources::Cccs]Cccs, Top, Main, Index

Creates object of class Cccs that describes linear current-controlled current source.

Cccs create OBJNAME name npNode nmNode ?args?
Cccs new name npNode nmNode ?args?
Parameters
nameName of the device without first-letter designator F.
npNodeName of node connected to positive pin.
nmNodeName of node connected to negative pin.
-consrcName of controlling source.
-gainCurrent gain.
-mParallel source multiplicator.
Description
FXXXXXXX N+ N- VNAM VALUE <m=val>

Example of class initialization:

::SpiceGenTcl::Common::Sources::Cccs new 1 net1 0 netc 0 -consrc vc -gain 10 -m 1
method constructor {name npNode nmNode args} {

    # Creates object of class `Cccs` that describes linear current-controlled current source.
    #  name - name of the device without first-letter designator F
    #  npNode - name of node connected to positive pin
    #  nmNode - name of node connected to negative pin
    #  -consrc - name of controlling source
    #  -gain - current gain
    #  -m - parallel source multiplicator
    # ```
    # FXXXXXXX N+ N- VNAM VALUE <m=val>
    # ```
    # Example of class initialization:
    # ```
    # ::SpiceGenTcl::Common::Sources::Cccs new 1 net1 0 netc 0 -consrc vc -gain 10 -m 1
    # ```
    set arguments [argparse -inline {
        {-consrc -required}
        {-gain -required}
        -m=
    }]
    set consrcVal [dict get $arguments consrc]
    lappend params "consrc $consrcVal -posnocheck"
    set gainVal [dict get $arguments gain]
    if {([llength $gainVal]>1) && ([lindex $gainVal 1]=="-eq")} {
        lappend params "igain [lindex $gainVal 0] -poseq"
    } else {
        lappend params "igain $gainVal -pos"
    }
    if {[dict exists $arguments m]} {
        set mVal [dict get $arguments m]
        if {([llength $mVal]>1) && ([lindex $mVal 1]=="-eq")} {
            lappend params "m [lindex $mVal 0] -eq"
        } else {
            lappend params "m $mVal"
        }
    }
    next f$name [list "np $npNode" "nm $nmNode"] $params
}

Ccvs [::SpiceGenTcl::Common::Sources]Top, Main, Index

Method summary
constructorConstructor for the class.
addParamSee ::SpiceGenTcl::Device.addParam
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
deleteParamSee ::SpiceGenTcl::Device.deleteParam
duplListCheckSee ::SpiceGenTcl::DuplChecker.duplListCheck
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
getParamsSee ::SpiceGenTcl::Device.getParams
getPinsSee ::SpiceGenTcl::Device.getPins
setParamValueSee ::SpiceGenTcl::Device.setParamValue
setPinNodeNameSee ::SpiceGenTcl::Device.setPinNodeName
Properties

Readable: -Name

Writable: -Name

Superclasses

::SpiceGenTcl::Device

Subclasses

H, ::SpiceGenTcl::Ngspice::Sources::Ccvs, ::SpiceGenTcl::Xyce::Sources::Ccvs

constructor [::SpiceGenTcl::Common::Sources::Ccvs]Ccvs, Top, Main, Index

Creates object of class Ccvs that describes linear current-controlled current source.

Ccvs create OBJNAME name npNode nmNode ?args?
Ccvs new name npNode nmNode ?args?
Parameters
nameName of the device without first-letter designator H.
npNodeName of node connected to positive pin.
nmNodeName of node connected to negative pin.
-consrcName of controlling source.
-transrTransresistance.
Description
HXXXXXXX N+ N- VNAM VALUE

Example of class initialization:

::SpiceGenTcl::Common::Sources::Ccvs new 1 net1 0 -consrc vc -transr {tres -eq}
method constructor {name npNode nmNode args} {

    # Creates object of class `Ccvs` that describes linear current-controlled current source.
    #  name - name of the device without first-letter designator H
    #  npNode - name of node connected to positive pin
    #  nmNode - name of node connected to negative pin
    #  -consrc - name of controlling source
    #  -transr - transresistance
    # ```
    # HXXXXXXX N+ N- VNAM VALUE
    # ```
    # Example of class initialization:
    # ```
    # ::SpiceGenTcl::Common::Sources::Ccvs new 1 net1 0 -consrc vc -transr {tres -eq}
    # ```
    set arguments [argparse -inline {
        {-consrc -required}
        {-transr -required}
    }]
    set consrcVal [dict get $arguments consrc]
    lappend params "consrc $consrcVal -posnocheck"
    set transrVal [dict get $arguments transr]
    if {([llength $transrVal]>1) && ([lindex $transrVal 1]=="-eq")} {
        lappend params "transr [lindex $transrVal 0] -poseq"
    } else {
        lappend params "transr $transrVal -pos"
    }
    next h$name [list "np $npNode" "nm $nmNode"] $params
}

dc [::SpiceGenTcl::Common::Sources]Top, Main, Index

Method summary
constructorConstructor for the class.
addParamSee ::SpiceGenTcl::Device.addParam
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
deleteParamSee ::SpiceGenTcl::Device.deleteParam
duplListCheckSee ::SpiceGenTcl::DuplChecker.duplListCheck
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
getParamsSee ::SpiceGenTcl::Device.getParams
getPinsSee ::SpiceGenTcl::Device.getPins
setParamValueSee ::SpiceGenTcl::Device.setParamValue
setPinNodeNameSee ::SpiceGenTcl::Device.setPinNodeName
Properties

Readable: -Name

Writable: -Name

Superclasses

::SpiceGenTcl::Device

Subclasses

Vdc, Idc

constructor [::SpiceGenTcl::Common::Sources::dc]dc, Top, Main, Index

dc create OBJNAME name type npNode nmNode ?args?
dc new name type npNode nmNode ?args?
Parameters
nameNot documented.
typeNot documented.
npNodeNot documented.
nmNodeNot documented.
method constructor {name type npNode nmNode args} {

    set arguments [argparse -inline {
        {-dc= -required}
    }]
    set dcVal [dict get $arguments dc]
    if {([llength $dcVal]>1) && ([lindex $dcVal 1]=="-eq")} {
        lappend params "dc [lindex $dcVal 0] -poseq"
    } else {
        lappend params "dc $dcVal -pos"
    }
    next $type$name [list "np $npNode" "nm $nmNode"] $params
}

E [::SpiceGenTcl::Common::Sources]Top, Main, Index

Method summary
addParamSee ::SpiceGenTcl::Device.addParam
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
deleteParamSee ::SpiceGenTcl::Device.deleteParam
duplListCheckSee ::SpiceGenTcl::DuplChecker.duplListCheck
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
getParamsSee ::SpiceGenTcl::Device.getParams
getPinsSee ::SpiceGenTcl::Device.getPins
setParamValueSee ::SpiceGenTcl::Device.setParamValue
setPinNodeNameSee ::SpiceGenTcl::Device.setPinNodeName
Properties

Readable: -Name

Writable: -Name

Superclasses

Vcvs

exp [::SpiceGenTcl::Common::Sources]Top, Main, Index

Method summary
constructorConstructor for the class.
addParamSee ::SpiceGenTcl::Device.addParam
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
deleteParamSee ::SpiceGenTcl::Device.deleteParam
duplListCheckSee ::SpiceGenTcl::DuplChecker.duplListCheck
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
getParamsSee ::SpiceGenTcl::Device.getParams
getPinsSee ::SpiceGenTcl::Device.getPins
setParamValueSee ::SpiceGenTcl::Device.setParamValue
setPinNodeNameSee ::SpiceGenTcl::Device.setPinNodeName
Properties

Readable: -Name

Writable: -Name

Superclasses

::SpiceGenTcl::Device

Subclasses

Vexp, Iexp

constructor [::SpiceGenTcl::Common::Sources::exp]exp, Top, Main, Index

exp create OBJNAME name type npNode nmNode ?args?
exp new name type npNode nmNode ?args?
Parameters
nameNot documented.
typeNot documented.
npNodeNot documented.
nmNodeNot documented.
method constructor {name type npNode nmNode args} {

    set arguments [argparse -inline {
        {-v1= -required}
        {-v2= -required}
        {-td1= -required}
        {-tau1= -required}
        {-td2= -required}
        {-tau2= -required}
    }]
    set paramsOrder [list v1 v2 td1 tau1 td2 tau2]
    foreach param $paramsOrder {
        if {[dict exists $arguments $param]} {
            dict append argsOrdered $param [dict get $arguments $param]
        }
    }
    lappend params "model exp -posnocheck"
    dict for {paramName value} $argsOrdered {
        if {([llength $value]>1) && ([lindex $value 1]=="-eq")} {
            lappend params "$paramName [lindex $value 0] -poseq"
        } else {
            lappend params "$paramName $value -pos"
        }
    }
    next $type$name [list "np $npNode" "nm $nmNode"] $params
}

F [::SpiceGenTcl::Common::Sources]Top, Main, Index

Method summary
addParamSee ::SpiceGenTcl::Device.addParam
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
deleteParamSee ::SpiceGenTcl::Device.deleteParam
duplListCheckSee ::SpiceGenTcl::DuplChecker.duplListCheck
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
getParamsSee ::SpiceGenTcl::Device.getParams
getPinsSee ::SpiceGenTcl::Device.getPins
setParamValueSee ::SpiceGenTcl::Device.setParamValue
setPinNodeNameSee ::SpiceGenTcl::Device.setPinNodeName
Properties

Readable: -Name

Writable: -Name

Superclasses

Cccs

G [::SpiceGenTcl::Common::Sources]Top, Main, Index

Method summary
addParamSee ::SpiceGenTcl::Device.addParam
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
deleteParamSee ::SpiceGenTcl::Device.deleteParam
duplListCheckSee ::SpiceGenTcl::DuplChecker.duplListCheck
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
getParamsSee ::SpiceGenTcl::Device.getParams
getPinsSee ::SpiceGenTcl::Device.getPins
setParamValueSee ::SpiceGenTcl::Device.setParamValue
setPinNodeNameSee ::SpiceGenTcl::Device.setPinNodeName
Properties

Readable: -Name

Writable: -Name

Superclasses

Vccs

H [::SpiceGenTcl::Common::Sources]Top, Main, Index

Method summary
addParamSee ::SpiceGenTcl::Device.addParam
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
deleteParamSee ::SpiceGenTcl::Device.deleteParam
duplListCheckSee ::SpiceGenTcl::DuplChecker.duplListCheck
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
getParamsSee ::SpiceGenTcl::Device.getParams
getPinsSee ::SpiceGenTcl::Device.getPins
setParamValueSee ::SpiceGenTcl::Device.setParamValue
setPinNodeNameSee ::SpiceGenTcl::Device.setPinNodeName
Properties

Readable: -Name

Writable: -Name

Superclasses

Ccvs

Iac [::SpiceGenTcl::Common::Sources]Top, Main, Index

Method summary
constructorConstructor for the class.
addParamSee ::SpiceGenTcl::Device.addParam
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
deleteParamSee ::SpiceGenTcl::Device.deleteParam
duplListCheckSee ::SpiceGenTcl::DuplChecker.duplListCheck
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
getParamsSee ::SpiceGenTcl::Device.getParams
getPinsSee ::SpiceGenTcl::Device.getPins
setParamValueSee ::SpiceGenTcl::Device.setParamValue
setPinNodeNameSee ::SpiceGenTcl::Device.setPinNodeName
Properties

Readable: -Name

Writable: -Name

Superclasses

ac

Subclasses

::SpiceGenTcl::Ngspice::Sources::Iac, ::SpiceGenTcl::Xyce::Sources::Iac

constructor [::SpiceGenTcl::Common::Sources::Iac]Iac, Top, Main, Index

Creates object of class Iac that describes ac current source.

Iac create OBJNAME name npNode nmNode ?args?
Iac new name npNode nmNode ?args?
Parameters
nameName of the device without first-letter designator I.
npNodeName of node connected to positive pin.
nmNodeName of node connected to negative pin.
-acphasePhase of AC current.
-dcAC current value.
Description
IYYYYYYY n+ n- <AC<ACMAG<ACPHASE>>>

Example of class initialization:

::SpiceGenTcl::Common::Sources::Iac new 1 netp netm -ac 10 -acphase 45
method constructor {name npNode nmNode args} {

    # Creates object of class `Iac` that describes ac current source.
    #  name - name of the device without first-letter designator I
    #  npNode - name of node connected to positive pin
    #  nmNode - name of node connected to negative pin
    #  -dc - AC current value
    #  -acphase - phase of AC current
    # ```
    # IYYYYYYY n+ n- <AC<ACMAG<ACPHASE>>>
    # ```
    # Example of class initialization:
    # ```
    # ::SpiceGenTcl::Common::Sources::Iac new 1 netp netm -ac 10 -acphase 45
    next $name i $npNode $nmNode {*}$args
}

Idc [::SpiceGenTcl::Common::Sources]Top, Main, Index

Method summary
constructorConstructor for the class.
addParamSee ::SpiceGenTcl::Device.addParam
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
deleteParamSee ::SpiceGenTcl::Device.deleteParam
duplListCheckSee ::SpiceGenTcl::DuplChecker.duplListCheck
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
getParamsSee ::SpiceGenTcl::Device.getParams
getPinsSee ::SpiceGenTcl::Device.getPins
setParamValueSee ::SpiceGenTcl::Device.setParamValue
setPinNodeNameSee ::SpiceGenTcl::Device.setPinNodeName
Properties

Readable: -Name

Writable: -Name

Superclasses

dc

Subclasses

::SpiceGenTcl::Ngspice::Sources::Idc, ::SpiceGenTcl::Xyce::Sources::Idc

constructor [::SpiceGenTcl::Common::Sources::Idc]Idc, Top, Main, Index

Creates object of class Idc that describes simple constant voltage source.

Idc create OBJNAME name npNode nmNode ?args?
Idc new name npNode nmNode ?args?
Parameters
nameName of the device without first-letter designator I.
npNodeName of node connected to positive pin.
nmNodeName of node connected to negative pin.
-dcDC voltage value.
Description
IYYYYYYY n+ n- <<DC> DC/TRAN VALUE>>

Example of class initialization:

::SpiceGenTcl::Common::Sources::Idc new 1 netp netm -dc 10
method constructor {name npNode nmNode args} {

    # Creates object of class `Idc` that describes simple constant voltage source.
    #  name - name of the device without first-letter designator I
    #  npNode - name of node connected to positive pin
    #  nmNode - name of node connected to negative pin
    #  -dc - DC voltage value
    # ```
    # IYYYYYYY n+ n- <<DC> DC/TRAN VALUE>>
    # ```
    # Example of class initialization:
    # ```
    # ::SpiceGenTcl::Common::Sources::Idc new 1 netp netm -dc 10
    # ```
    next $name i $npNode $nmNode {*}$args
}

Iexp [::SpiceGenTcl::Common::Sources]Top, Main, Index

Method summary
constructorConstructor for the class.
addParamSee ::SpiceGenTcl::Device.addParam
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
deleteParamSee ::SpiceGenTcl::Device.deleteParam
duplListCheckSee ::SpiceGenTcl::DuplChecker.duplListCheck
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
getParamsSee ::SpiceGenTcl::Device.getParams
getPinsSee ::SpiceGenTcl::Device.getPins
setParamValueSee ::SpiceGenTcl::Device.setParamValue
setPinNodeNameSee ::SpiceGenTcl::Device.setPinNodeName
Properties

Readable: -Name

Writable: -Name

Superclasses

exp

Subclasses

::SpiceGenTcl::Ngspice::Sources::Iexp, ::SpiceGenTcl::Xyce::Sources::Iexp

constructor [::SpiceGenTcl::Common::Sources::Iexp]Iexp, Top, Main, Index

Creates object of class Iexp that describes exponential current source.

Iexp create OBJNAME name npNode nmNode ?args?
Iexp new name npNode nmNode ?args?
Parameters
nameName of the device without first-letter designator I.
npNodeName of node connected to positive pin.
nmNodeName of node connected to negative pin.
-tau1Rise time constant.
-tau2Fall time constant.
-td1Rise delay time.
-td2Fall delay time.
-v1Initial value.
-v2Pulsed value.
Description
IYYYYYYY n+ n- EXP(V1 V2 TD1 TAU1 TD2 TAU2)

Example of class initialization:

::SpiceGenTcl::Common::Sources::Iexp new 1 net1 net2 -v1 0 -v2 1 -td1 1e-9 -tau1 1e-9 -td2 {td2 -eq} -tau2 10e-6
method constructor {name npNode nmNode args} {

    # Creates object of class `Iexp` that describes exponential current source.
    #  name - name of the device without first-letter designator I
    #  npNode - name of node connected to positive pin
    #  nmNode - name of node connected to negative pin
    #  -v1 - initial value
    #  -v2 - pulsed value
    #  -td1 - rise delay time
    #  -tau1 - rise time constant
    #  -td2 - fall delay time
    #  -tau2 - fall time constant
    # ```
    # IYYYYYYY n+ n- EXP(V1 V2 TD1 TAU1 TD2 TAU2)
    # ```
    # Example of class initialization:
    # ```
    # ::SpiceGenTcl::Common::Sources::Iexp new 1 net1 net2 -v1 0 -v2 1 -td1 1e-9 -tau1 1e-9 -td2 {td2 -eq} -tau2 10e-6
    # ```
    next $name i $npNode $nmNode {*}$args
}

Ipulse [::SpiceGenTcl::Common::Sources]Top, Main, Index

Method summary
constructorConstructor for the class.
addParamSee ::SpiceGenTcl::Device.addParam
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
deleteParamSee ::SpiceGenTcl::Device.deleteParam
duplListCheckSee ::SpiceGenTcl::DuplChecker.duplListCheck
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
getParamsSee ::SpiceGenTcl::Device.getParams
getPinsSee ::SpiceGenTcl::Device.getPins
setParamValueSee ::SpiceGenTcl::Device.setParamValue
setPinNodeNameSee ::SpiceGenTcl::Device.setPinNodeName
Properties

Readable: -Name

Writable: -Name

Superclasses

pulse

Subclasses

::SpiceGenTcl::Xyce::Sources::Ipulse

constructor [::SpiceGenTcl::Common::Sources::Ipulse]Ipulse, Top, Main, Index

Creates object of class Ipulse that describes pulse current source.

Ipulse create OBJNAME name npNode nmNode ?args?
Ipulse new name npNode nmNode ?args?
Parameters
nameName of the device without first-letter designator I.
npNodeName of node connected to positive pin.
nmNodeName of node connected to negative pin.
-highHigh value.
-lowLow value.
-perPeriod time.
-pwWidth of pulse.
-tdTime delay.
-tfFall time.
-trRise time.
Description
IYYYYYYY n+ n- PULSE(V1 V2 TD TR TF PW PER)

Example of class initialization:

::SpiceGenTcl::Common::Sources::Ipulse new 1 net1 net2 -low 0 -high 1 -td {td -eq} -tr 1e-9 -tf 1e-9 -pw 10e-6 -per 20e-6
method constructor {name npNode nmNode args} {

    # Creates object of class `Ipulse` that describes pulse current source.
    #  name - name of the device without first-letter designator I
    #  npNode - name of node connected to positive pin
    #  nmNode - name of node connected to negative pin
    #  -low - low value
    #  -high - high value
    #  -td - time delay
    #  -tr - rise time
    #  -tf - fall time
    #  -pw - width of pulse
    #  -per - period time
    # ```
    # IYYYYYYY n+ n- PULSE(V1 V2 TD TR TF PW PER)
    # ```
    # Example of class initialization:
    # ```
    # ::SpiceGenTcl::Common::Sources::Ipulse new 1 net1 net2 -low 0 -high 1 -td {td -eq} -tr 1e-9 -tf 1e-9 -pw 10e-6 -per 20e-6
    # ```
    next $name i $npNode $nmNode {*}$args
}

Ipwl [::SpiceGenTcl::Common::Sources]Top, Main, Index

Method summary
constructorConstructor for the class.
addParamSee ::SpiceGenTcl::Device.addParam
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
deleteParamSee ::SpiceGenTcl::Device.deleteParam
duplListCheckSee ::SpiceGenTcl::DuplChecker.duplListCheck
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
getParamsSee ::SpiceGenTcl::Device.getParams
getPinsSee ::SpiceGenTcl::Device.getPins
setParamValueSee ::SpiceGenTcl::Device.setParamValue
setPinNodeNameSee ::SpiceGenTcl::Device.setPinNodeName
Properties

Readable: -Name

Writable: -Name

Superclasses

pwl

Subclasses

::SpiceGenTcl::Ngspice::Sources::Ipwl, ::SpiceGenTcl::Xyce::Sources::Ipwl

constructor [::SpiceGenTcl::Common::Sources::Ipwl]Ipwl, Top, Main, Index

Creates object of class Ipwl that describes piece-wise current source.

Ipwl create OBJNAME name npNode nmNode ?args?
Ipwl new name npNode nmNode ?args?
Parameters
nameName of the device without first-letter designator I.
npNodeName of node connected to positive pin.
nmNodeName of node connected to negative pin.
-seqSequence of pwl points in form {t0 v0 t1 v1 t2 v2 t3 v3 ...}
Description
IYYYYYYY n+ n- PWL (T1 V1 <T2 V2 T3 V3 T4 V4 ...>)

Example of class initialization:

::SpiceGenTcl::Common::Sources::Ipwl new 1 npNode nmNode -seq {0 0 {t1 -eq} 1 2 2 3 3 4 4}
method constructor {name npNode nmNode args} {

    # Creates object of class `Ipwl` that describes piece-wise current source.
    #  name - name of the device without first-letter designator I
    #  npNode - name of node connected to positive pin
    #  nmNode - name of node connected to negative pin
    #  -seq - sequence of pwl points in form {t0 v0 t1 v1 t2 v2 t3 v3 ...}
    # ```
    # IYYYYYYY n+ n- PWL (T1 V1 <T2 V2 T3 V3 T4 V4 ...>)
    # ```
    # Example of class initialization:
    # ```
    # ::SpiceGenTcl::Common::Sources::Ipwl new 1 npNode nmNode -seq {0 0 {t1 -eq} 1 2 2 3 3 4 4}
    # ```
    next $name i $npNode $nmNode {*}$args
}

Isffm [::SpiceGenTcl::Common::Sources]Top, Main, Index

Method summary
constructorConstructor for the class.
addParamSee ::SpiceGenTcl::Device.addParam
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
deleteParamSee ::SpiceGenTcl::Device.deleteParam
duplListCheckSee ::SpiceGenTcl::DuplChecker.duplListCheck
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
getParamsSee ::SpiceGenTcl::Device.getParams
getPinsSee ::SpiceGenTcl::Device.getPins
setParamValueSee ::SpiceGenTcl::Device.setParamValue
setPinNodeNameSee ::SpiceGenTcl::Device.setPinNodeName
Properties

Readable: -Name

Writable: -Name

Superclasses

sffm

Subclasses

::SpiceGenTcl::Xyce::Sources::Isffm

constructor [::SpiceGenTcl::Common::Sources::Isffm]Isffm, Top, Main, Index

Creates object of class Isffm that describes single-frequency FM current source.

Isffm create OBJNAME name npNode nmNode ?args?
Isffm new name npNode nmNode ?args?
Parameters
nameName of the device without first-letter designator I.
npNodeName of node connected to positive pin.
nmNodeName of node connected to negative pin.
-fcCarrier frequency.
-fsSignal frequency.
-mdiModulation index.
-v0Initial value.
-vaPulsed value.
Description
IYYYYYYY n+ n- SFFM(VO VA FC MDI FS)

Example of class initialization:

::SpiceGenTcl::Common::Sources::Isin new 1 net1 net2 -v0 0 -va 1 -fc {freq -eq} -mdi 0 -fs 1e3
method constructor {name npNode nmNode args} {

    # Creates object of class `Isffm` that describes single-frequency FM current source.
    #  name - name of the device without first-letter designator I
    #  npNode - name of node connected to positive pin
    #  nmNode - name of node connected to negative pin
    #  -v0 - initial value
    #  -va - pulsed value
    #  -fc - carrier frequency
    #  -mdi - modulation index
    #  -fs - signal frequency
    # ```
    # IYYYYYYY n+ n- SFFM(VO VA FC MDI FS)
    # ```
    # Example of class initialization:
    # ```
    # ::SpiceGenTcl::Common::Sources::Isin new 1 net1 net2 -v0 0 -va 1 -fc {freq -eq} -mdi 0 -fs 1e3
    # ```
    next $name i $npNode $nmNode {*}$args
}

Isin [::SpiceGenTcl::Common::Sources]Top, Main, Index

Method summary
constructorConstructor for the class.
addParamSee ::SpiceGenTcl::Device.addParam
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
deleteParamSee ::SpiceGenTcl::Device.deleteParam
duplListCheckSee ::SpiceGenTcl::DuplChecker.duplListCheck
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
getParamsSee ::SpiceGenTcl::Device.getParams
getPinsSee ::SpiceGenTcl::Device.getPins
setParamValueSee ::SpiceGenTcl::Device.setParamValue
setPinNodeNameSee ::SpiceGenTcl::Device.setPinNodeName
Properties

Readable: -Name

Writable: -Name

Superclasses

sin

Subclasses

::SpiceGenTcl::Ngspice::Sources::Isin, ::SpiceGenTcl::Xyce::Sources::Isin

constructor [::SpiceGenTcl::Common::Sources::Isin]Isin, Top, Main, Index

Creates object of class Isin that describes sinusoidal current source.

Isin create OBJNAME name npNode nmNode ?args?
Isin new name npNode nmNode ?args?
Parameters
nameName of the device without first-letter designator I.
npNodeName of node connected to positive pin.
nmNodeName of node connected to negative pin.
-freqFrequency of sinusoidal signal.
-phasePhase of signal, optional, require -td and -phase.
-tdTime delay, optional.
-thetaDamping factor, optional, require -td.
-v0DC shift value.
-vaAmplitude value.
Description
IYYYYYYY n+ n- SIN(VO VA FREQ TD THETA PHASE)

Example of class initialization:

::SpiceGenTcl::Common::Sources::Isin new 1 net1 net2 -v0 0 -va 2 -freq {freq -eq} -td 1e-6 -theta {theta -eq}
method constructor {name npNode nmNode args} {

    # Creates object of class `Isin` that describes sinusoidal current source.
    #  name - name of the device without first-letter designator I
    #  npNode - name of node connected to positive pin
    #  nmNode - name of node connected to negative pin
    #  -v0 - DC shift value
    #  -va - amplitude value
    #  -freq - frequency of sinusoidal signal
    #  -td - time delay, optional
    #  -theta - damping factor, optional, require -td
    #  -phase - phase of signal, optional, require -td and -phase
    # ```
    # IYYYYYYY n+ n- SIN(VO VA FREQ TD THETA PHASE)
    # ```
    # Example of class initialization:
    # ```
    # ::SpiceGenTcl::Common::Sources::Isin new 1 net1 net2 -v0 0 -va 2 -freq {freq -eq} -td 1e-6 -theta {theta -eq}
    # ```
    next $name i $npNode $nmNode {*}$args
}

pulse [::SpiceGenTcl::Common::Sources]Top, Main, Index

Method summary
constructorConstructor for the class.
addParamSee ::SpiceGenTcl::Device.addParam
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
deleteParamSee ::SpiceGenTcl::Device.deleteParam
duplListCheckSee ::SpiceGenTcl::DuplChecker.duplListCheck
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
getParamsSee ::SpiceGenTcl::Device.getParams
getPinsSee ::SpiceGenTcl::Device.getPins
setParamValueSee ::SpiceGenTcl::Device.setParamValue
setPinNodeNameSee ::SpiceGenTcl::Device.setPinNodeName
Properties

Readable: -Name

Writable: -Name

Superclasses

::SpiceGenTcl::Device

Subclasses

Vpulse, Ipulse

constructor [::SpiceGenTcl::Common::Sources::pulse]pulse, Top, Main, Index

pulse create OBJNAME name type npNode nmNode ?args?
pulse new name type npNode nmNode ?args?
Parameters
nameNot documented.
typeNot documented.
npNodeNot documented.
nmNodeNot documented.
method constructor {name type npNode nmNode args} {

    set arguments [argparse -inline {
        {-low= -required}
        {-high= -required}
        {-td= -required}
        {-tr= -required}
        {-tf= -required}
        {-pw= -required}
        {-per= -required}
    }]
    set paramsOrder [list low high td tr tf pw per]
    foreach param $paramsOrder {
        if {[dict exists $arguments $param]} {
            dict append argsOrdered $param [dict get $arguments $param]
        }
    }
    lappend params "model pulse -posnocheck"
    dict for {paramName value} $argsOrdered {
        if {([llength $value]>1) && ([lindex $value 1]=="-eq")} {
            lappend params "$paramName [lindex $value 0] -poseq"
        } else {
            lappend params "$paramName $value -pos"
        }
    }
    next $type$name [list "np $npNode" "nm $nmNode"] $params
}

pwl [::SpiceGenTcl::Common::Sources]Top, Main, Index

Method summary
constructorConstructor for the class.
addParamSee ::SpiceGenTcl::Device.addParam
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
deleteParamSee ::SpiceGenTcl::Device.deleteParam
duplListCheckSee ::SpiceGenTcl::DuplChecker.duplListCheck
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
getParamsSee ::SpiceGenTcl::Device.getParams
getPinsSee ::SpiceGenTcl::Device.getPins
setParamValueSee ::SpiceGenTcl::Device.setParamValue
setPinNodeNameSee ::SpiceGenTcl::Device.setPinNodeName
Properties

Readable: -Name

Writable: -Name

Superclasses

::SpiceGenTcl::Device

Subclasses

Vpwl, Ipwl

constructor [::SpiceGenTcl::Common::Sources::pwl]pwl, Top, Main, Index

pwl create OBJNAME name type npNode nmNode ?args?
pwl new name type npNode nmNode ?args?
Parameters
nameNot documented.
typeNot documented.
npNodeNot documented.
nmNodeNot documented.
method constructor {name type npNode nmNode args} {

    set arguments [argparse -inline {
        {-seq= -required}
    }]
    set pwlSeqVal [dict get $arguments seq]
    set pwlSeqLen [llength $pwlSeqVal]
    if {$pwlSeqLen%2} {
        error "Number of elements '$pwlSeqLen' in pwl sequence is odd in element '$type$name', must be even"
    } elseif {$pwlSeqLen<4} {
        error "Number of elements '$pwlSeqLen' in pwl sequence in element '$type$name' must be >=4"
    }
    # parse pwlSeq argument
    for {set i 0} {$i<[llength $pwlSeqVal]/2} {incr i} {
        set 2i [* 2 $i]
        set 2ip1 [+ $2i 1]
        lappend params "t$i [list [lindex $pwlSeqVal $2i]]" "$type$i [list [lindex $pwlSeqVal $2ip1]]"
    }
    foreach param $params {
        if {([llength [lindex $param 1]]>1) && ([lindex [lindex $param 1] 1]=="-eq")} {
            lappend paramList "[lindex $param 0] [lindex [lindex $param 1] 0] -poseq"
        } else {
            lappend paramList "[lindex $param 0] [lindex $param 1] -pos"
        }
    }
    set paramList [linsert $paramList 0 "model pwl -posnocheck"]
    next $type$name [list "np $npNode" "nm $nmNode"] $paramList
}

sffm [::SpiceGenTcl::Common::Sources]Top, Main, Index

Method summary
constructorConstructor for the class.
addParamSee ::SpiceGenTcl::Device.addParam
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
deleteParamSee ::SpiceGenTcl::Device.deleteParam
duplListCheckSee ::SpiceGenTcl::DuplChecker.duplListCheck
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
getParamsSee ::SpiceGenTcl::Device.getParams
getPinsSee ::SpiceGenTcl::Device.getPins
setParamValueSee ::SpiceGenTcl::Device.setParamValue
setPinNodeNameSee ::SpiceGenTcl::Device.setPinNodeName
Properties

Readable: -Name

Writable: -Name

Superclasses

::SpiceGenTcl::Device

Subclasses

Vsffm, Isffm

constructor [::SpiceGenTcl::Common::Sources::sffm]sffm, Top, Main, Index

sffm create OBJNAME name type npNode nmNode ?args?
sffm new name type npNode nmNode ?args?
Parameters
nameNot documented.
typeNot documented.
npNodeNot documented.
nmNodeNot documented.
method constructor {name type npNode nmNode args} {

    set arguments [argparse -inline {
        {-v0= -required}
        {-va= -required}
        {-fc= -required}
        {-mdi= -required}
        {-fs= -required}
    }]
    set paramsOrder [list v0 va fc mdi fs]
    foreach param $paramsOrder {
        if {[dict exists $arguments $param]} {
            dict append argsOrdered $param [dict get $arguments $param]
        }
    }
    lappend params "model sffm -posnocheck"
    dict for {paramName value} $argsOrdered {
        if {([llength $value]>1) && ([lindex $value 1]=="-eq")} {
            lappend params "$paramName [lindex $value 0] -poseq"
        } else {
            lappend params "$paramName $value -pos"
        }
    }
    next $type$name [list "np $npNode" "nm $nmNode"] $params
}

sin [::SpiceGenTcl::Common::Sources]Top, Main, Index

Method summary
constructorConstructor for the class.
addParamSee ::SpiceGenTcl::Device.addParam
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
deleteParamSee ::SpiceGenTcl::Device.deleteParam
duplListCheckSee ::SpiceGenTcl::DuplChecker.duplListCheck
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
getParamsSee ::SpiceGenTcl::Device.getParams
getPinsSee ::SpiceGenTcl::Device.getPins
setParamValueSee ::SpiceGenTcl::Device.setParamValue
setPinNodeNameSee ::SpiceGenTcl::Device.setPinNodeName
Properties

Readable: -Name

Writable: -Name

Superclasses

::SpiceGenTcl::Device

Subclasses

Vsin, Isin

constructor [::SpiceGenTcl::Common::Sources::sin]sin, Top, Main, Index

sin create OBJNAME name type npNode nmNode ?args?
sin new name type npNode nmNode ?args?
Parameters
nameNot documented.
typeNot documented.
npNodeNot documented.
nmNodeNot documented.
method constructor {name type npNode nmNode args} {

    set arguments [argparse -inline {
        {-v0= -required}
        {-va= -required}
        {-freq= -required}
        -td=
        {-theta= -require {td}}
        {-phase= -require {td theta}}
    }]
    set paramsOrder [list v0 va freq td theta phase]
    foreach param $paramsOrder {
        if {[dict exists $arguments $param]} {
            dict append argsOrdered $param [dict get $arguments $param]
        }
    }
    lappend params "model sin -posnocheck"
    dict for {paramName value} $argsOrdered {
        if {([llength $value]>1) && ([lindex $value 1]=="-eq")} {
            lappend params "$paramName [lindex $value 0] -poseq"
        } else {
            lappend params "$paramName $value -pos"
        }
    }
    next $type$name [list "np $npNode" "nm $nmNode"] $params
}

Vac [::SpiceGenTcl::Common::Sources]Top, Main, Index

Method summary
constructorConstructor for the class.
addParamSee ::SpiceGenTcl::Device.addParam
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
deleteParamSee ::SpiceGenTcl::Device.deleteParam
duplListCheckSee ::SpiceGenTcl::DuplChecker.duplListCheck
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
getParamsSee ::SpiceGenTcl::Device.getParams
getPinsSee ::SpiceGenTcl::Device.getPins
setParamValueSee ::SpiceGenTcl::Device.setParamValue
setPinNodeNameSee ::SpiceGenTcl::Device.setPinNodeName
Properties

Readable: -Name

Writable: -Name

Superclasses

ac

Subclasses

::SpiceGenTcl::Ngspice::Sources::Vac, ::SpiceGenTcl::Xyce::Sources::Vac

constructor [::SpiceGenTcl::Common::Sources::Vac]Vac, Top, Main, Index

Creates object of class Vac that describes ac voltage source.

Vac create OBJNAME name npNode nmNode ?args?
Vac new name npNode nmNode ?args?
Parameters
nameName of the device without first-letter designator V.
npNodeName of node connected to positive pin.
nmNodeName of node connected to negative pin.
-acphasePhase of AC voltage.
-dcAC voltage value.
Description
VYYYYYYY n+ n- <AC<ACMAG<ACPHASE>>>

Example of class initialization:

::SpiceGenTcl::Common::Sources::Vac new 1 netp netm -ac 10 -acphase 45
method constructor {name npNode nmNode args} {

    # Creates object of class `Vac` that describes ac voltage source.
    #  name - name of the device without first-letter designator V
    #  npNode - name of node connected to positive pin
    #  nmNode - name of node connected to negative pin
    #  -dc - AC voltage value
    #  -acphase - phase of AC voltage
    # ```
    # VYYYYYYY n+ n- <AC<ACMAG<ACPHASE>>>
    # ```
    # Example of class initialization:
    # ```
    # ::SpiceGenTcl::Common::Sources::Vac new 1 netp netm -ac 10 -acphase 45
    # ```
    next $name v $npNode $nmNode {*}$args
}

Vccs [::SpiceGenTcl::Common::Sources]Top, Main, Index

Method summary
constructorConstructor for the class.
addParamSee ::SpiceGenTcl::Device.addParam
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
deleteParamSee ::SpiceGenTcl::Device.deleteParam
duplListCheckSee ::SpiceGenTcl::DuplChecker.duplListCheck
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
getParamsSee ::SpiceGenTcl::Device.getParams
getPinsSee ::SpiceGenTcl::Device.getPins
setParamValueSee ::SpiceGenTcl::Device.setParamValue
setPinNodeNameSee ::SpiceGenTcl::Device.setPinNodeName
Properties

Readable: -Name

Writable: -Name

Superclasses

::SpiceGenTcl::Device

Subclasses

G, ::SpiceGenTcl::Ngspice::Sources::Vccs, ::SpiceGenTcl::Xyce::Sources::Vccs

constructor [::SpiceGenTcl::Common::Sources::Vccs]Vccs, Top, Main, Index

Creates object of class Vccs that describes linear voltage-controlled current source.

Vccs create OBJNAME name npNode nmNode ncpNode ncmNode ?args?
Vccs new name npNode nmNode ncpNode ncmNode ?args?
Parameters
nameName of the device without first-letter designator G.
npNodeName of node connected to positive pin.
nmNodeName of node connected to negative pin.
ncpNodeName of node connected to positive controlling pin.
ncmNodeName of node connected to negative controlling pin.
-mMultiplier factor, optional.
-trcondTransconductance.
Description
GXXXXXXX N+ N- NC+ NC- VALUE <m=val>

Example of class initialization:

::SpiceGenTcl::Common::Sources::Vccs new 1 net1 0 netc 0 -trcond 10 -m 1
method constructor {name npNode nmNode ncpNode ncmNode args} {

    # Creates object of class `Vccs` that describes linear voltage-controlled current source.
    #  name - name of the device without first-letter designator G
    #  npNode - name of node connected to positive pin
    #  nmNode - name of node connected to negative pin
    #  ncpNode - name of node connected to positive controlling pin
    #  ncmNode - name of node connected to negative controlling pin
    #  -trcond - transconductance
    #  -m - multiplier factor, optional
    # ```
    # GXXXXXXX N+ N- NC+ NC- VALUE <m=val>
    # ```
    # Example of class initialization:
    # ```
    # ::SpiceGenTcl::Common::Sources::Vccs new 1 net1 0 netc 0 -trcond 10 -m 1
    # ```
    set arguments [argparse -inline {
        {-trcond -required}
        -m=
    }]
    set trcondVal [dict get $arguments trcond]
    if {([llength $trcondVal]>1) && ([lindex $trcondVal 1]=="-eq")} {
        lappend params "trcond [lindex $trcondVal 0] -poseq"
    } else {
        lappend params "trcond $trcondVal -pos"
    }
    if {[dict exists $arguments m]} {
        set mVal [dict get $arguments m]
        if {([llength $mVal]>1) && ([lindex $mVal 1]=="-eq")} {
            lappend params "m [lindex $mVal 0] -eq"
        } else {
            lappend params "m $mVal"
        }
    }
    next g$name [list "np $npNode" "nm $nmNode" "ncp $ncpNode" "ncm $ncmNode"] $params
}

Vcvs [::SpiceGenTcl::Common::Sources]Top, Main, Index

Method summary
constructorConstructor for the class.
addParamSee ::SpiceGenTcl::Device.addParam
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
deleteParamSee ::SpiceGenTcl::Device.deleteParam
duplListCheckSee ::SpiceGenTcl::DuplChecker.duplListCheck
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
getParamsSee ::SpiceGenTcl::Device.getParams
getPinsSee ::SpiceGenTcl::Device.getPins
setParamValueSee ::SpiceGenTcl::Device.setParamValue
setPinNodeNameSee ::SpiceGenTcl::Device.setPinNodeName
Properties

Readable: -Name

Writable: -Name

Superclasses

::SpiceGenTcl::Device

Subclasses

E, ::SpiceGenTcl::Ngspice::Sources::Vcvs, ::SpiceGenTcl::Xyce::Sources::Vcvs

constructor [::SpiceGenTcl::Common::Sources::Vcvs]Vcvs, Top, Main, Index

Creates object of class Vcvs that describes linear voltage-controlled current source.

Vcvs create OBJNAME name npNode nmNode ncpNode ncmNode ?args?
Vcvs new name npNode nmNode ncpNode ncmNode ?args?
Parameters
nameName of the device without first-letter designator G.
npNodeName of node connected to positive pin.
nmNodeName of node connected to negative pin.
ncpNodeName of node connected to positive controlling pin.
ncmNodeName of node connected to negative controlling pin.
-gainVoltage gain.
Description
EXXXXXXX N+ N- NC+ NC- VALUE

Example of class initialization:

::SpiceGenTcl::Common::Sources::Vcvs new 1 net1 0 netc 0 -gain 10
method constructor {name npNode nmNode ncpNode ncmNode args} {

    # Creates object of class `Vcvs` that describes linear voltage-controlled current source.
    #  name - name of the device without first-letter designator G
    #  npNode - name of node connected to positive pin
    #  nmNode - name of node connected to negative pin
    #  ncpNode - name of node connected to positive controlling pin
    #  ncmNode - name of node connected to negative controlling pin
    #  -gain - voltage gain
    # ```
    # EXXXXXXX N+ N- NC+ NC- VALUE
    # ```
    # Example of class initialization:
    # ```
    # ::SpiceGenTcl::Common::Sources::Vcvs new 1 net1 0 netc 0 -gain 10
    # ```
    set arguments [argparse -inline {
        {-gain -required}
    }]
    set gainVal [dict get $arguments gain]
    if {([llength $gainVal]>1) && ([lindex $gainVal 1]=="-eq")} {
        lappend params "vgain [lindex $gainVal 0] -poseq"
    } else {
        lappend params "vgain $gainVal -pos"
    }
    next e$name [list "np $npNode" "nm $nmNode" "ncp $ncpNode" "ncm $ncmNode"] $params
}

Vdc [::SpiceGenTcl::Common::Sources]Top, Main, Index

Method summary
constructorConstructor for the class.
addParamSee ::SpiceGenTcl::Device.addParam
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
deleteParamSee ::SpiceGenTcl::Device.deleteParam
duplListCheckSee ::SpiceGenTcl::DuplChecker.duplListCheck
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
getParamsSee ::SpiceGenTcl::Device.getParams
getPinsSee ::SpiceGenTcl::Device.getPins
setParamValueSee ::SpiceGenTcl::Device.setParamValue
setPinNodeNameSee ::SpiceGenTcl::Device.setPinNodeName
Properties

Readable: -Name

Writable: -Name

Superclasses

dc

Subclasses

::SpiceGenTcl::Ngspice::Sources::Vdc, ::SpiceGenTcl::Xyce::Sources::Vdc

constructor [::SpiceGenTcl::Common::Sources::Vdc]Vdc, Top, Main, Index

Creates object of class Vdc that describes simple constant voltage source.

Vdc create OBJNAME name npNode nmNode ?args?
Vdc new name npNode nmNode ?args?
Parameters
nameName of the device without first-letter designator V.
npNodeName of node connected to positive pin.
nmNodeName of node connected to negative pin.
-dcDC voltage value.
Description
VYYYYYYY n+ n- <<DC> DC/TRAN VALUE>>

Example of class initialization:

::SpiceGenTcl::Common::Sources::Vdc new 1 netp netm -dc 10
method constructor {name npNode nmNode args} {

    # Creates object of class `Vdc` that describes simple constant voltage source.
    #  name - name of the device without first-letter designator V
    #  npNode - name of node connected to positive pin
    #  nmNode - name of node connected to negative pin
    #  -dc - DC voltage value
    # ```
    # VYYYYYYY n+ n- <<DC> DC/TRAN VALUE>>
    # ```
    # Example of class initialization:
    # ```
    # ::SpiceGenTcl::Common::Sources::Vdc new 1 netp netm -dc 10
    # ```
    next $name v $npNode $nmNode {*}$args
}

Vexp [::SpiceGenTcl::Common::Sources]Top, Main, Index

Method summary
constructorConstructor for the class.
addParamSee ::SpiceGenTcl::Device.addParam
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
deleteParamSee ::SpiceGenTcl::Device.deleteParam
duplListCheckSee ::SpiceGenTcl::DuplChecker.duplListCheck
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
getParamsSee ::SpiceGenTcl::Device.getParams
getPinsSee ::SpiceGenTcl::Device.getPins
setParamValueSee ::SpiceGenTcl::Device.setParamValue
setPinNodeNameSee ::SpiceGenTcl::Device.setPinNodeName
Properties

Readable: -Name

Writable: -Name

Superclasses

exp

Subclasses

::SpiceGenTcl::Ngspice::Sources::Vexp, ::SpiceGenTcl::Xyce::Sources::Vexp

constructor [::SpiceGenTcl::Common::Sources::Vexp]Vexp, Top, Main, Index

Creates object of class Vexp that describes exponential voltage source.

Vexp create OBJNAME name npNode nmNode ?args?
Vexp new name npNode nmNode ?args?
Parameters
nameName of the device without first-letter designator V.
npNodeName of node connected to positive pin.
nmNodeName of node connected to negative pin.
-tau1Rise time constant.
-tau2Fall time constant.
-td1Rise delay time.
-td2Fall delay time.
-v1Initial value.
-v2Pulsed value.
Description
VYYYYYYY n+ n- EXP(V1 V2 TD1 TAU1 TD2 TAU2)

Example of class initialization:

::SpiceGenTcl::Common::Sources::Vexp new 1 net1 net2 -v1 0 -v2 1 -td1 1e-9 -tau1 1e-9 -td2 {td2 -eq} -tau2 10e-6
method constructor {name npNode nmNode args} {

    # Creates object of class `Vexp` that describes exponential voltage source.
    #  name - name of the device without first-letter designator V
    #  npNode - name of node connected to positive pin
    #  nmNode - name of node connected to negative pin
    #  -v1 - initial value
    #  -v2 - pulsed value
    #  -td1 - rise delay time
    #  -tau1 - rise time constant
    #  -td2 - fall delay time
    #  -tau2 - fall time constant
    # ```
    # VYYYYYYY n+ n- EXP(V1 V2 TD1 TAU1 TD2 TAU2)
    # ```
    # Example of class initialization:
    # ```
    # ::SpiceGenTcl::Common::Sources::Vexp new 1 net1 net2 -v1 0 -v2 1 -td1 1e-9 -tau1 1e-9 -td2 {td2 -eq} -tau2 10e-6
    # ```
    next $name v $npNode $nmNode {*}$args
}

Vpulse [::SpiceGenTcl::Common::Sources]Top, Main, Index

Method summary
constructorConstructor for the class.
addParamSee ::SpiceGenTcl::Device.addParam
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
deleteParamSee ::SpiceGenTcl::Device.deleteParam
duplListCheckSee ::SpiceGenTcl::DuplChecker.duplListCheck
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
getParamsSee ::SpiceGenTcl::Device.getParams
getPinsSee ::SpiceGenTcl::Device.getPins
setParamValueSee ::SpiceGenTcl::Device.setParamValue
setPinNodeNameSee ::SpiceGenTcl::Device.setPinNodeName
Properties

Readable: -Name

Writable: -Name

Superclasses

pulse

Subclasses

::SpiceGenTcl::Xyce::Sources::Vpulse

constructor [::SpiceGenTcl::Common::Sources::Vpulse]Vpulse, Top, Main, Index

Creates object of class Vpulse that describes pulse voltage source.

Vpulse create OBJNAME name npNode nmNode ?args?
Vpulse new name npNode nmNode ?args?
Parameters
nameName of the device without first-letter designator V.
npNodeName of node connected to positive pin.
nmNodeName of node connected to negative pin.
-highHigh value.
-lowLow value.
-perPeriod time.
-pwWidth of pulse.
-tdTime delay.
-tfFall time.
-trRise time.
Description
VYYYYYYY n+ n- PULSE(V1 V2 TD TR TF PW PER)

Example of class initialization:

::SpiceGenTcl::Common::Sources::Vpulse new 1 net1 net2 -low 0 -high 1 -td {td -eq} -tr 1e-9 -tf 1e-9 -pw 10e-6 -per 20e-6
method constructor {name npNode nmNode args} {

    # Creates object of class `Vpulse` that describes pulse voltage source.
    #  name - name of the device without first-letter designator V
    #  npNode - name of node connected to positive pin
    #  nmNode - name of node connected to negative pin
    #  -low - low value
    #  -high - high value
    #  -td - time delay
    #  -tr - rise time
    #  -tf - fall time
    #  -pw - width of pulse
    #  -per - period time
    # ```
    # VYYYYYYY n+ n- PULSE(V1 V2 TD TR TF PW PER)
    # ```
    # Example of class initialization:
    # ```
    # ::SpiceGenTcl::Common::Sources::Vpulse new 1 net1 net2 -low 0 -high 1 -td {td -eq} -tr 1e-9 -tf 1e-9 -pw 10e-6 -per 20e-6
    # ```
    next $name v $npNode $nmNode {*}$args
}

Vpwl [::SpiceGenTcl::Common::Sources]Top, Main, Index

Method summary
constructorConstructor for the class.
addParamSee ::SpiceGenTcl::Device.addParam
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
deleteParamSee ::SpiceGenTcl::Device.deleteParam
duplListCheckSee ::SpiceGenTcl::DuplChecker.duplListCheck
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
getParamsSee ::SpiceGenTcl::Device.getParams
getPinsSee ::SpiceGenTcl::Device.getPins
setParamValueSee ::SpiceGenTcl::Device.setParamValue
setPinNodeNameSee ::SpiceGenTcl::Device.setPinNodeName
Properties

Readable: -Name

Writable: -Name

Superclasses

pwl

Subclasses

::SpiceGenTcl::Ngspice::Sources::Vpwl, ::SpiceGenTcl::Xyce::Sources::Vpwl

constructor [::SpiceGenTcl::Common::Sources::Vpwl]Vpwl, Top, Main, Index

Creates object of class Vpwl that describes piece-wise voltage source.

Vpwl create OBJNAME name npNode nmNode ?args?
Vpwl new name npNode nmNode ?args?
Parameters
nameName of the device without first-letter designator V.
npNodeName of node connected to positive pin.
nmNodeName of node connected to negative pin.
-seqSequence of pwl points in form {t0 v0 t1 v1 t2 v2 t3 v3 ...}
Description
VYYYYYYY n+ n- PWL (T1 V1 <T2 V2 T3 V3 T4 V4 ...>)

Example of class initialization:

::SpiceGenTcl::Common::Sources::Vpwl new 1 npNode nmNode -seq {0 0 {t1 -eq} 1 2 2 3 3 4 4}
method constructor {name npNode nmNode args} {

    # Creates object of class `Vpwl` that describes piece-wise voltage source.
    #  name - name of the device without first-letter designator V
    #  npNode - name of node connected to positive pin
    #  nmNode - name of node connected to negative pin
    #  -seq - sequence of pwl points in form {t0 v0 t1 v1 t2 v2 t3 v3 ...}
    # ```
    # VYYYYYYY n+ n- PWL (T1 V1 <T2 V2 T3 V3 T4 V4 ...>)
    # ```
    # Example of class initialization:
    # ```
    # ::SpiceGenTcl::Common::Sources::Vpwl new 1 npNode nmNode -seq {0 0 {t1 -eq} 1 2 2 3 3 4 4}
    # ```
    next $name v $npNode $nmNode {*}$args
}

Vsffm [::SpiceGenTcl::Common::Sources]Top, Main, Index

Method summary
constructorConstructor for the class.
addParamSee ::SpiceGenTcl::Device.addParam
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
deleteParamSee ::SpiceGenTcl::Device.deleteParam
duplListCheckSee ::SpiceGenTcl::DuplChecker.duplListCheck
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
getParamsSee ::SpiceGenTcl::Device.getParams
getPinsSee ::SpiceGenTcl::Device.getPins
setParamValueSee ::SpiceGenTcl::Device.setParamValue
setPinNodeNameSee ::SpiceGenTcl::Device.setPinNodeName
Properties

Readable: -Name

Writable: -Name

Superclasses

sffm

Subclasses

::SpiceGenTcl::Xyce::Sources::Vsffm

constructor [::SpiceGenTcl::Common::Sources::Vsffm]Vsffm, Top, Main, Index

Creates object of class Vsffm that describes single-frequency FM voltage source.

Vsffm create OBJNAME name npNode nmNode ?args?
Vsffm new name npNode nmNode ?args?
Parameters
nameName of the device without first-letter designator V.
npNodeName of node connected to positive pin.
nmNodeName of node connected to negative pin.
-fcCarrier frequency.
-fsSignal frequency.
-mdiModulation index.
-v0Initial value.
-vaPulsed value.
Description
VYYYYYYY n+ n- SFFM(VO VA FC MDI FS)

Example of class initialization:

::SpiceGenTcl::Common::Sources::Vsin new 1 net1 net2 -v0 0 -va 1 -fc {freq -eq} -mdi 0 -fs 1e3
method constructor {name npNode nmNode args} {

    # Creates object of class `Vsffm` that describes single-frequency FM voltage source.
    #  name - name of the device without first-letter designator V
    #  npNode - name of node connected to positive pin
    #  nmNode - name of node connected to negative pin
    #  -v0 - initial value
    #  -va - pulsed value
    #  -fc - carrier frequency
    #  -mdi - modulation index
    #  -fs - signal frequency
    # ```
    # VYYYYYYY n+ n- SFFM(VO VA FC MDI FS)
    # ```
    # Example of class initialization:
    # ```
    # ::SpiceGenTcl::Common::Sources::Vsin new 1 net1 net2 -v0 0 -va 1 -fc {freq -eq} -mdi 0 -fs 1e3
    # ```
    next $name v $npNode $nmNode {*}$args
}

Vsin [::SpiceGenTcl::Common::Sources]Top, Main, Index

Method summary
constructorConstructor for the class.
addParamSee ::SpiceGenTcl::Device.addParam
argsPreprocessSee ::SpiceGenTcl::KeyArgsBuilder.argsPreprocess
buildArgStrSee ::SpiceGenTcl::KeyArgsBuilder.buildArgStr
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
deleteParamSee ::SpiceGenTcl::Device.deleteParam
duplListCheckSee ::SpiceGenTcl::DuplChecker.duplListCheck
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
getParamsSee ::SpiceGenTcl::Device.getParams
getPinsSee ::SpiceGenTcl::Device.getPins
setParamValueSee ::SpiceGenTcl::Device.setParamValue
setPinNodeNameSee ::SpiceGenTcl::Device.setPinNodeName
Properties

Readable: -Name

Writable: -Name

Superclasses

sin

Mixins

::SpiceGenTcl::KeyArgsBuilder

Subclasses

::SpiceGenTcl::Ngspice::Sources::Vsin, ::SpiceGenTcl::Xyce::Sources::Vsin

constructor [::SpiceGenTcl::Common::Sources::Vsin]Vsin, Top, Main, Index

Creates object of class Vsin that describes sinusoidal voltage source.

Vsin create OBJNAME name npNode nmNode ?args?
Vsin new name npNode nmNode ?args?
Parameters
nameName of the device without first-letter designator V.
npNodeName of node connected to positive pin.
nmNodeName of node connected to negative pin.
-freqFrequency of sinusoidal signal.
-phasePhase of signal, optional, require -td and -phase.
-tdTime delay, optional.
-thetaDamping factor, optional, require -td.
-v0DC shift value.
-vaAmplitude value.
Description
VYYYYYYY n+ n- SIN(VO VA FREQ TD THETA PHASE)

Example of class initialization:

::SpiceGenTcl::Common::Sources::Vsin new 1 net1 net2 -v0 0 -va 2 -freq {freq -eq} -td 1e-6 -theta {theta -eq}
method constructor {name npNode nmNode args} {

    # Creates object of class `Vsin` that describes sinusoidal voltage source.
    #  name - name of the device without first-letter designator V
    #  npNode - name of node connected to positive pin
    #  nmNode - name of node connected to negative pin
    #  -v0 - DC shift value
    #  -va - amplitude value
    #  -freq - frequency of sinusoidal signal
    #  -td - time delay, optional
    #  -theta - damping factor, optional, require -td
    #  -phase - phase of signal, optional, require -td and -phase
    # ```
    # VYYYYYYY n+ n- SIN(VO VA FREQ TD THETA PHASE)
    # ```
    # Example of class initialization:
    # ```
    # ::SpiceGenTcl::Common::Sources::Vsin new 1 net1 net2 -v0 0 -va 2 -freq {freq -eq} -td 1e-6 -theta {theta -eq}
    # ```
    next $name v $npNode $nmNode {*}$args
}