Tcl SpiceGenTcl package (v0.71)

::SpiceGenTcl::Ltspice::BasicDevicesTop, Main, Index

ClassesTop, Main, Index

C [::SpiceGenTcl::Ltspice::BasicDevices]Top, Main, Index

Method summary
actOnParamSee ::SpiceGenTcl::Device.actOnParam
actOnPinSee ::SpiceGenTcl::Device.actOnPin
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
Properties

Readable: -name

Writable: -name

Superclasses

Capacitor

Capacitor [::SpiceGenTcl::Ltspice::BasicDevices]Top, Main, Index

Method summary
constructorConstructor for the class.
actOnParamSee ::SpiceGenTcl::Device.actOnParam
actOnPinSee ::SpiceGenTcl::Device.actOnPin
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
Properties

Readable: -name

Writable: -name

Superclasses

::SpiceGenTcl::Device

Subclasses

C

constructor [::SpiceGenTcl::Ltspice::BasicDevices::Capacitor]Capacitor, Top, Main, Index

Creates object of class Capacitor that describes capacitor.

OBJECT constructor name np nm -c value ?-m value? ?-temp value? ?-ic value? ?-rser value? ?-lser value? ?-rpar value? ?-cpar value? ?-rlshunt value?
OBJECT constructor name np nm -q value ?-m value? ?-ic value? ?-rser value? ?-lser value? ?-rpar value? ?-cpar value? ?-rlshunt value?
Details
Parameters
-cCapacitance value or equation.
-cparParallel capacitor, optional.
-icInitial voltage on capacitor, optional.
-lserSeries inductance, optional.
-mMultiplier value, optional.
-qCharge equation.
-rlshuntShunt resistance across series inductance, optional.
-rparParallel resistance, optional.
-rserSeries resistance, optional.
-tempDevice temperature, optional.
nameName of the device without first-letter designator C.
nmName of node connected to negative pin.
npName of node connected to positive pin.
Description

Capacitor type could be specified with additional switch -q if we want to model circuit's variable dependent capacitor. Simple capacitor:

Cnnn n1 n2 <capacitance> [ic=<value>]
+ [Rser=<value>] [Lser=<value>] [Rpar=<value>]
+ [Cpar=<value>] [m=<value>]
+ [RLshunt=<value>] [temp=<value>]

Example of class initialization as a simple capacitor:

::SpiceGenTcl::Ltspice::BasicDevices::Capacitor new 1 netp netm -r 1e-6 -temp {-eq temp}

Behavioral capacitor with Q expression:

Cnnn n1 n2 Q=<expression> [ic=<value>] [m=<value>]

Example of class initialization:

::SpiceGenTcl::Ltspice::BasicDevices::Capacitor new 1 netp netm -q "V(a)+V(b)+pow(V(c),2)"
method constructor {args} {

    # Creates object of class `Capacitor` that describes capacitor.
    #  name - name of the device without first-letter designator C
    #  np - name of node connected to positive pin
    #  nm - name of node connected to negative pin
    #  -c - capacitance value or equation
    #  -q - charge equation
    #  -m - multiplier value, optional
    #  -temp - device temperature, optional
    #  -ic - initial voltage on capacitor, optional
    #  -rser - series resistance, optional
    #  -lser - series inductance, optional
    #  -rpar - parallel resistance, optional
    #  -cpar - parallel capacitor, optional
    #  -rlshunt - shunt resistance across series inductance, optional
    # Capacitor type could be specified with additional switch `-q` if we
    # want to model circuit's variable dependent capacitor.
    # Simple capacitor:
    # ```
    # Cnnn n1 n2 <capacitance> [ic=<value>]
    # + [Rser=<value>] [Lser=<value>] [Rpar=<value>]
    # + [Cpar=<value>] [m=<value>]
    # + [RLshunt=<value>] [temp=<value>]
    # ```
    # Example of class initialization as a simple capacitor:
    # ```
    # ::SpiceGenTcl::Ltspice::BasicDevices::Capacitor new 1 netp netm -r 1e-6 -temp {-eq temp}
    # ```
    # Behavioral capacitor with Q expression:
    # ```
    # Cnnn n1 n2 Q=<expression> [ic=<value>] [m=<value>]
    # ```
    # Example of class initialization:
    # ```
    # ::SpiceGenTcl::Ltspice::BasicDevices::Capacitor new 1 netp netm -q "V(a)+V(b)+pow(V(c),2)"
    # ```
    # Synopsis: name np nm -c value ?-m value? ?-temp value? ?-ic value? ?-rser value? ?-lser value?
    #   ?-rpar value? ?-cpar value? ?-rlshunt value?
    # Synopsis: name np nm -q value ?-m value? ?-ic value? ?-rser value? ?-lser value? ?-rpar value?
    #   ?-cpar value? ?-rlshunt value?
    set arguments [argparse -inline -pfirst -help {Creates object of class 'Capacitor' that describes capacitor} {
        {-c= -forbid q -help {Capacitance value or equation}}
        {-q= -forbid c -help {Charge equation}}
        {-m= -help {Multiplier value}}
        {-temp= -forbid q -help {Device temperature}}
        {-ic= -help {Initial voltage on capacitor}}
        {-rser= -help {Series resistance}}
        {-lser= -help {Series inductance}}
        {-rpar= -help {Parallel resistance}}
        {-cpar= -help {Parallel capacitor}}
        {-rlshunt= -help {Shunt resistance across series inductance}}
        {name -help {Name of the device without first-letter designator}}
        {np -help {Name of node connected to positive pin}}
        {nm -help {Name of node connected to negative pin}}
    }]
    set params {}
    if {[dexist $arguments c]} {
        set cVal [dget $arguments c]
        if {([llength $cVal]>1) && ([@ $cVal 0] eq {-eq})} {
            lappend params [list -poseq c [@ $cVal 1]]
        } else {
            lappend params [list -pos c $cVal]
        }
    } elseif {![dexist $arguments q]} {
        return -code error {Capacitor value must be specified with '-c value'}
    }
    if {[dexist $arguments q]} {
        set qVal [dget $arguments q]
        lappend params [list -eq q $qVal]
    }
    dict for {paramName value} $arguments {
        if {$paramName ni {c q name np nm}} {
            if {[@ $value 0] eq {-eq}} {
                lappend params [list -eq $paramName [@ $value 1]]
            } else {
                lappend params [list $paramName $value]
            }
        }
    }
    next c[dget $arguments name] [list [list np [dget $arguments np]] [list nm [dget $arguments nm]]] $params
}

CSwitch [::SpiceGenTcl::Ltspice::BasicDevices]Top, Main, Index

Method summary
actOnParamSee ::SpiceGenTcl::Device.actOnParam
actOnPinSee ::SpiceGenTcl::Device.actOnPin
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
Properties

Readable: -name

Writable: -name

Superclasses

::SpiceGenTcl::Common::BasicDevices::CSwitch

Subclasses

W

CSwitchModel [::SpiceGenTcl::Ltspice::BasicDevices]Top, Main, Index

Method summary
constructorConstructor for the class.
actOnParamSee ::SpiceGenTcl::Model.actOnParam
configureConfigure properties.
genSPICEStringSee ::SpiceGenTcl::Model.genSPICEString
Properties

Readable: -name, -type

Writable: -name, -type

Superclasses

::SpiceGenTcl::Model

constructor [::SpiceGenTcl::Ltspice::BasicDevices::CSwitchModel]CSwitchModel, Top, Main, Index

Creates object of class CSwitchModel that describes current switch model.

OBJECT constructor name ?-option value ...?
Details
Parameters
argsKeyword instance parameters.
nameName of the model.
Description

Example of class initialization:

::SpiceGenTcl::Ltspice::BasicDevices::CSwitchModel new cswmod -it 1 -ih 0.5 -ron 1 -roff 1e6
method constructor {args} {

    # Creates object of class `CSwitchModel` that describes current switch model.
    #  name - name of the model
    #  args - keyword instance parameters
    # Example of class initialization:
    # ```
    # ::SpiceGenTcl::Ltspice::BasicDevices::CSwitchModel new cswmod -it 1 -ih 0.5 -ron 1 -roff 1e6
    # ```
    # Synopsis: name ?-option value ...?
    next {*}[my ArgsPreprocess {it ih ron roff} {name type} type {*}[linsert $args 1 csw]]
}

Inductor [::SpiceGenTcl::Ltspice::BasicDevices]Top, Main, Index

Method summary
constructorConstructor for the class.
actOnParamSee ::SpiceGenTcl::Device.actOnParam
actOnPinSee ::SpiceGenTcl::Device.actOnPin
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
Properties

Readable: -name

Writable: -name

Superclasses

::SpiceGenTcl::Device

Subclasses

L

constructor [::SpiceGenTcl::Ltspice::BasicDevices::Inductor]Inductor, Top, Main, Index

Creates object of class Inductor that describes inductor.

OBJECT constructor name np nm -l value ?-tc1 value? ?-tc2 value? ?-m value? ?-temp value|-dtemp value? ?-scale value? ?-ic value?
OBJECT constructor name np nm -beh -l value ?-tc1 value? ?-tc2 value?
OBJECT constructor name np nm -model value ?-l value? ?-temp value|-dtemp value? ?-m value? ?scale value? ?-ic value? ?-nt value? ?-tc1 value? ?-tc2 value?
Details
Parameters
-aCross sectional area.
-brRemnant flux density.
-bsSaturation flux density.
-cparParallel capacitor.
-fluxEquation for the flux.
-hcCoercive force.
-hystNonlinear inductor model switch.
-icInitial current.
-lInductance value.
-lgLength of gap.
-lmMagnetic Length (excl. gap)
-mNumber of parallel units.
-nNumber of turns.
-rparParallel resistance.
-rserSeries resistance.
-tc1Linear inductance temperature coefficient.
-tc2Quadratic inductance temperature coefficient.
-tempDevice temperature.
nameName of the device without first-letter designator L.
nmName of node connected to negative pin.
npName of node connected to positive pin.
Description

Inductor type could be specified with additional switches: -beh if we want to model circuit's variable dependent inductor, or -model modelName if we want to simulate inductor with model card. Simple inductor:

LYYYYYYY n+ n- <value> <m=val>
+ <scale=val> <temp=val> <dtemp=val> <tc1=val>
+ <tc2=val> <ic=init_condition>

Example of class initialization as a simple inductor:

::SpiceGenTcl::Ngspice::BasicDevices::Inductor new 1 netp netm -l 1e-6 -tc1 1 -temp {-eq temp}

Behavioral inductor:

LYYYYYYY n+ n- L={expression} <tc1=val> <tc2=val>

Example of class initialization:

::SpiceGenTcl::Ngspice::BasicDevices::Inductor new 1 netp netm -l "V(a)+V(b)+pow(V(c),2)" -beh -tc1 1

Inductor with model card:

LYYYYYYY n+ n- <value> <mname> <nt=val> <m=val>
+ <scale=val> <temp=val> <dtemp=val> <tc1=val>
+ <tc2=val> <ic=init_condition>

Example of class initialization:

::SpiceGenTcl::Ngspice::BasicDevices::Inductor new 1 netp netm -l 1e-6 -model indm
method constructor {args} {

    # Creates object of class `Inductor` that describes inductor.
    #  name - name of the device without first-letter designator L
    #  np - name of node connected to positive pin
    #  nm - name of node connected to negative pin
    #  -l - inductance value
    #  -flux - equation for the flux
    #  -hyst - nonlinear inductor model switch
    #  -m - number of parallel units
    #  -ic - initial current
    #  -temp - device temperature
    #  -tc1 - linear inductance temperature coefficient
    #  -tc2 - quadratic inductance temperature coefficient
    #  -rser - series resistance
    #  -rpar - parallel resistance
    #  -cpar - parallel capacitor
    #  -hc - coercive force
    #  -br - remnant flux density
    #  -bs - saturation flux density
    #  -lm - magnetic Length (excl. gap)
    #  -lg - length of gap
    #  -a - cross sectional area
    #  -n - number of turns
    # Inductor type could be specified with additional switches: `-beh` if we
    # want to model circuit's variable dependent inductor, or `-model modelName`
    # if we want to simulate inductor with model card.
    # Simple inductor:
    # ```
    # LYYYYYYY n+ n- <value> <m=val>
    # + <scale=val> <temp=val> <dtemp=val> <tc1=val>
    # + <tc2=val> <ic=init_condition>
    # ```
    # Example of class initialization as a simple inductor:
    # ```
    # ::SpiceGenTcl::Ngspice::BasicDevices::Inductor new 1 netp netm -l 1e-6 -tc1 1 -temp {-eq temp}
    # ```
    # Behavioral inductor:
    # ```
    # LYYYYYYY n+ n- L={expression} <tc1=val> <tc2=val>
    # ```
    # Example of class initialization:
    # ```
    # ::SpiceGenTcl::Ngspice::BasicDevices::Inductor new 1 netp netm -l "V(a)+V(b)+pow(V(c),2)" -beh -tc1 1
    # ```
    # Inductor with model card:
    # ```
    # LYYYYYYY n+ n- <value> <mname> <nt=val> <m=val>
    # + <scale=val> <temp=val> <dtemp=val> <tc1=val>
    # + <tc2=val> <ic=init_condition>
    # ```
    # Example of class initialization:
    # ```
    # ::SpiceGenTcl::Ngspice::BasicDevices::Inductor new 1 netp netm -l 1e-6 -model indm
    # ```
    # Synopsis: name np nm -l value ?-tc1 value? ?-tc2 value? ?-m value? ?-temp value|-dtemp value?
    #   ?-scale value? ?-ic value?
    # Synopsis: name np nm -beh -l value ?-tc1 value? ?-tc2 value?
    # Synopsis: name np nm -model value ?-l value? ?-temp value|-dtemp value? ?-m value? ?scale value?
    #   ?-ic value? ?-nt value? ?-tc1 value? ?-tc2 value?
    set arguments [argparse -inline -pfirst -help {Creates object of class 'Inductor' that describes inductor} {
        {-l= -forbid {flux hyst} -help {Inductance value}}
        {-flux= -forbid {l hyst} -help {Equation for the flux}}
        {-hyst -forbid {l flux} -reciprocal -require {hc br bs lm lg a n} -help {Nonlinear inductor model switch}}
        {-m= -help {Number of parallel units}}
        {-ic= -help {Initial current}}
        {-temp= -help {Device temperature}}
        {-tc1= -help {Linear inductance temperature coefficient}}
        {-tc2= -help {Quadratic inductance temperature coefficient}}
        {-rser= -help {Series resistance}}
        {-rpar= -help {Parallel resistance}}
        {-cpar= -help {Parallel capacitor}}
        {-hc= -help {Coercive force}}
        {-br= -help {Remnant flux density}}
        {-bs= -help {Saturation flux density}}
        {-lm= -help {Magnetic Length (excl. gap)}}
        {-lg= -help {Length of gap}}
        {-a= -help {Cross sectional area}}
        {-n= -help {Number of turns}}
        {name -help {Name of the device without first-letter designator}}
        {np -help {Name of node connected to positive pin}}
        {nm -help {Name of node connected to negative pin}}
    }]
    set params {}
    if {[dexist $arguments l]} {
        set lVal [dget $arguments l]
        if {([llength $lVal]>1) && ([@ $lVal 0] eq {-eq})} {
            lappend params [list -poseq l [@ $lVal 1]]
        } else {
            lappend params [list -pos l $lVal]
        }
    } elseif {![dexist $arguments flux] && ![dexist $arguments hyst]} {
        return -code error {Inductor value must be specified with '-l value'}
    }
    if {[dexist $arguments flux]} {
        set fluxVal [dget $arguments flux]
        lappend params [list -eq flux [dget $arguments flux]]
    }
    dict for {paramName value} $arguments {
        if {$paramName ni {l flux hyst name np nm}} {
            if {[@ $value 0] eq {-eq}} {
                lappend params [list -eq $paramName [@ $value 1]]
            } else {
                lappend params [list $paramName $value]
            }
        }
    }
    next l[dget $arguments name] [list [list np [dget $arguments np]] [list nm [dget $arguments nm]]] $params
}

L [::SpiceGenTcl::Ltspice::BasicDevices]Top, Main, Index

Method summary
actOnParamSee ::SpiceGenTcl::Device.actOnParam
actOnPinSee ::SpiceGenTcl::Device.actOnPin
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
Properties

Readable: -name

Writable: -name

Superclasses

Inductor

R [::SpiceGenTcl::Ltspice::BasicDevices]Top, Main, Index

Method summary
actOnParamSee ::SpiceGenTcl::Device.actOnParam
actOnPinSee ::SpiceGenTcl::Device.actOnPin
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
Properties

Readable: -name

Writable: -name

Superclasses

Resistor

Resistor [::SpiceGenTcl::Ltspice::BasicDevices]Top, Main, Index

Method summary
actOnParamSee ::SpiceGenTcl::Device.actOnParam
actOnPinSee ::SpiceGenTcl::Device.actOnPin
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
Properties

Readable: -name

Writable: -name

Superclasses

::SpiceGenTcl::Common::BasicDevices::Resistor

Subclasses

R

SubcircuitInstance [::SpiceGenTcl::Ltspice::BasicDevices]Top, Main, Index

Method summary
constructorConstructor for the class.
actOnParamSee ::SpiceGenTcl::Device.actOnParam
actOnPinSee ::SpiceGenTcl::Device.actOnPin
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
Properties

Readable: -name

Writable: -name

Superclasses

::SpiceGenTcl::Device

Subclasses

X

constructor [::SpiceGenTcl::Ltspice::BasicDevices::SubcircuitInstance]SubcircuitInstance, Top, Main, Index

Creates object of class SubcircuitInstance that describes subcircuit instance.

SubcircuitInstance create OBJNAME ?args?
SubcircuitInstance new ?args?
Details
Parameters
nameName of the device without first-letter designator X.
params{{?-eq? paramName paramValue} {?-eq? paramName paramValue}}
pinsList of pins {{pinName nodeName} {pinName nodeName} ...}
subNameName of subcircuit definition.
Description
Xxxx n1 n2 n3... <subckt name> [<parameter>=<expression>]

Example of class initialization:

::SpiceGenTcl::Ltspice::BasicDevices::SubcircuitInstance new 1 {{plus net1} {minus net2}} rcnet {{r 1} {-eq c cpar}}

#nagelfar implicitvarcmd {argparse Creates object of class 'SubcircuitInstance'} name pins subName params

method constructor {args} {

    # Creates object of class `SubcircuitInstance` that describes subcircuit instance.
    #  name - name of the device without first-letter designator X
    #  pins - list of pins {{pinName nodeName} {pinName nodeName} ...}
    #  subName - name of subcircuit definition
    #  params - {{?-eq? paramName paramValue} {?-eq? paramName paramValue}}
    # ```
    # Xxxx n1 n2 n3... <subckt name> [<parameter>=<expression>]
    # ```
    # Example of class initialization:
    # ```
    # ::SpiceGenTcl::Ltspice::BasicDevices::SubcircuitInstance new 1 {{plus net1} {minus net2}} rcnet {{r 1} {-eq c cpar}}
    # ```
    ##nagelfar implicitvarcmd {argparse *Creates object of class 'SubcircuitInstance'*} name pins subName params
    argparse -pfirst -help {Creates object of class 'SubcircuitInstance' that describes subcircuit instance} {
        {name -help {Name of the device without first-letter designator}}
        {pins -help {List of pins {{pinName nodeName} {pinName nodeName} ...}}}
        {subName -help {Name of subcircuit definition}}
        {params -help {List of parameters {{?-eq? paramName paramValue} {?-eq? paramName paramValue}}}}
    }
    set params [linsert $params 0 [list -posnocheck model $subName]]
    next x$name $pins $params
}

SubcircuitInstanceAuto [::SpiceGenTcl::Ltspice::BasicDevices]Top, Main, Index

Method summary
constructorConstructor for the class.
actOnParamSee ::SpiceGenTcl::Device.actOnParam
actOnPinSee ::SpiceGenTcl::Device.actOnPin
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
Properties

Readable: -name

Writable: -name

Superclasses

::SpiceGenTcl::Device

Subclasses

XAuto

constructor [::SpiceGenTcl::Ltspice::BasicDevices::SubcircuitInstanceAuto]SubcircuitInstanceAuto, Top, Main, Index

Creates object of class SubcircuitInstanceAuto that describes subcircuit instance with already created subcircuit definition object.

OBJECT constructor subcktObj name nodes ?-paramName ?-eq? paramValue ...?
Details
Parameters
subcktObjObject of subcircuit that defines it's pins, subName and parameters.
nameNot documented.
nodesList of nodes connected to pins in the same order as pins in subcircuit definition {nodeName1 nodeName2 ...}
argsParameters as argument in form : -paramName {?-eq? paramValue} -paramName {?-eq? paramValue}
Description
Xxxx n1 n2 n3... <subckt name> [<parameter>=<expression>]

Example of class initialization:

::SpiceGenTcl::Ltspice::BasicDevices::SubcircuitInstanceAuto new $subcktObj 1 {net1 net2} -r 1 -c {-eq cpar}
method constructor {subcktObj name nodes args} {

    # Creates object of class `SubcircuitInstanceAuto` that describes subcircuit instance with already created
    # subcircuit definition object.
    #  subcktObj - object of subcircuit that defines it's pins, subName and parameters
    #  nodes - list of nodes connected to pins in the same order as pins in subcircuit definition
    #   {nodeName1 nodeName2 ...}
    #  args - parameters as argument in form : -paramName {?-eq? paramValue} -paramName {?-eq? paramValue}
    # ```
    # Xxxx n1 n2 n3... <subckt name> [<parameter>=<expression>]
    # ```
    # Example of class initialization:
    # ```
    # ::SpiceGenTcl::Ltspice::BasicDevices::SubcircuitInstanceAuto new $subcktObj 1 {net1 net2} -r 1 -c {-eq cpar}
    # ```
    # Synopsis: subcktObj name nodes ?-paramName {?-eq? paramValue} ...?

    # check that inputs object class is Subcircuit
    if {![info object class $subcktObj "::SpiceGenTcl::Subcircuit"]} {
        set objClass [info object class $subcktObj]
        return -code error "Wrong object class '$objClass' is passed as subcktObj, should be '::SpiceGenTcl::Subcircuit'"
    }
    # get name of subcircuit
    set subName [$subcktObj configure -name]
    # get pins names of subcircuit
    set pinsNames [dict keys [$subcktObj actOnPin -get -all]]
    # check if number of pins in subcircuit definition matchs the number of supplied nodes
    if {[llength $pinsNames]!=[llength $nodes]} {
        return -code error "Wrong number of nodes '[llength $nodes]' in definition, should be '[llength $pinsNames]'"
    }
    # create list of pins and connected nodes
    foreach pinName $pinsNames node $nodes {
        lappend pinsList [list $pinName $node]
    }
    # get parameters names of subcircuit
    if {[$subcktObj actOnParam -get -all] ne {}} {
        set paramsNames [dict keys [$subcktObj actOnParam -get -all]]
        foreach paramName $paramsNames {
            lappend paramDefList -${paramName}=
        }
    }
    if {[info exists paramDefList]} {
        # create definition for argparse module for passing parameters as optional arguments
        set arguments [argparse -inline "
            [join $paramDefList \n]
        "]
        # create list of parameters and values from which were supplied by args
        dict for {paramName value} $arguments {
            if {[@ $value 0] eq {-eq}} {
                lappend params [list -eq $paramName [@ $value 1]]
            } else {
                lappend params [list $paramName $value]
            }
        }
    } else {
        set params {}
    }
    set params [linsert $params 0 [list -posnocheck model $subName]]
    next x$name $pinsList $params
}

VSw [::SpiceGenTcl::Ltspice::BasicDevices]Top, Main, Index

Method summary
actOnParamSee ::SpiceGenTcl::Device.actOnParam
actOnPinSee ::SpiceGenTcl::Device.actOnPin
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
Properties

Readable: -name

Writable: -name

Superclasses

VSwitch

VSwitch [::SpiceGenTcl::Ltspice::BasicDevices]Top, Main, Index

Method summary
actOnParamSee ::SpiceGenTcl::Device.actOnParam
actOnPinSee ::SpiceGenTcl::Device.actOnPin
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
Properties

Readable: -name

Writable: -name

Superclasses

::SpiceGenTcl::Common::BasicDevices::VSwitch

Subclasses

VSw

VSwitchModel [::SpiceGenTcl::Ltspice::BasicDevices]Top, Main, Index

Method summary
constructorConstructor for the class.
actOnParamSee ::SpiceGenTcl::Model.actOnParam
configureConfigure properties.
genSPICEStringSee ::SpiceGenTcl::Model.genSPICEString
Properties

Readable: -name, -type

Writable: -name, -type

Superclasses

::SpiceGenTcl::Model

constructor [::SpiceGenTcl::Ltspice::BasicDevices::VSwitchModel]VSwitchModel, Top, Main, Index

Creates object of class VSwitchModel that describes voltage switch model.

OBJECT constructor name ?-option value ...?
Details
Parameters
argsKeyword instance parameters.
nameName of the model.
Description

Example of class initialization:

::SpiceGenTcl::Ltspice::BasicDevices::VSwitchModel new swmod -vt 1 -vh 0.5 -ron 1 -roff 1e6
method constructor {args} {

    # Creates object of class `VSwitchModel` that describes voltage switch model.
    #  name - name of the model
    #  args - keyword instance parameters
    # Example of class initialization:
    # ```
    # ::SpiceGenTcl::Ltspice::BasicDevices::VSwitchModel new swmod -vt 1 -vh 0.5 -ron 1 -roff 1e6
    # ```
    # Synopsis: name ?-option value ...?
    next {*}[my ArgsPreprocess {vt vh ron roff lser vser ilimit} {name type} type {*}[linsert $args 1 sw]]
}

W [::SpiceGenTcl::Ltspice::BasicDevices]Top, Main, Index

Method summary
actOnParamSee ::SpiceGenTcl::Device.actOnParam
actOnPinSee ::SpiceGenTcl::Device.actOnPin
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
Properties

Readable: -name

Writable: -name

Superclasses

CSwitch

X [::SpiceGenTcl::Ltspice::BasicDevices]Top, Main, Index

Method summary
actOnParamSee ::SpiceGenTcl::Device.actOnParam
actOnPinSee ::SpiceGenTcl::Device.actOnPin
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
Properties

Readable: -name

Writable: -name

Superclasses

SubcircuitInstance

XAuto [::SpiceGenTcl::Ltspice::BasicDevices]Top, Main, Index

Method summary
actOnParamSee ::SpiceGenTcl::Device.actOnParam
actOnPinSee ::SpiceGenTcl::Device.actOnPin
checkFloatingPinsSee ::SpiceGenTcl::Device.checkFloatingPins
configureConfigure properties.
genSPICEStringSee ::SpiceGenTcl::Device.genSPICEString
Properties

Readable: -name

Writable: -name

Superclasses

SubcircuitInstanceAuto