Appendix - Symbols May Not Represent What You Think

Appendix - Symbols May Not Represent What You Think

function debug(msg, object){
console.log(msg, object);
function executeQuery(){
return true;

SIMPLIS Tutorial1.0 Getting Started2.0 Entering the Design2.1 Add Symbols and Wires2.2 Edit Standard Component Values2.3 Edit Multi-Level Models2.4 Edit Parameter-Extracted Models2.5 Change to a User-defined Model3.0 Simulating the Design3.1 Set up a Transient Simulation3.2 Set up a POP Analysis3.3 Set up an AC Analysis4.0 Managing the Simulation Output4.1 Output Curves to Separate Grids4.2 Reorder the Graph Grids4.3 Define Waveform Persistence4.4 Add Scalar Measurements to Output Curves4.5 Add Scalar Measurements to Probes5.0 Building High-Level Models5.1 Building a Compensator5.2 Set up a Load Transient Simulation5.3 Creating Hierarchical Schematics5.4 Using Schematic ComponentsConclusionsWhat is SIMPLIS?SIMPLIS - Time Domain, All the TimeSIMPLIS - Piecewise Linear, All the TimeWhat SIMPLIS POP Does (and Why it Matters)Accuracy of SIMPLIS PWL ModelsSIMPLIS BasicsAdvanced SIMPLIS TrainingCourse OutlineInstalling the Training Course LicenseGetting StartedNavigating the Course MaterialModule 1 - Overview of the SIMPLIS Environment1.0 SIMPLIS Basics1.1 Introduction to DVM: What is DVM?1.2 The SIMetrix/SIMPLIS User InterfaceModule 2 - Advanced SIMPLIS2.0 Transient Analysis Settings2.1 Initial Conditions and Back Annotation2.2 How POP Really Works2.3 Managing Simulation Data2.4 Advanced ProbingModule 3 - Running SIMPLIS Simulations3.0 A Look Under the SIMPLIS Hood3.1 SIMPLIS Multi-Step Analysis3.2 SIMPLIS Monte Carlo Analysis3.3 Loading a Schematic with Component ValuesModule 4 - Introduction to Modeling4.0 What is a Symbol?4.1 What is a Model?4.2 What is a Schematic Component File?4.3 What is a Device?4.4 Protecting Your Intellectual Property - Model Encryption4.5 Debugging Slow SimulationsAppendix - Symbols May Not Represent What You ThinkModule 5 - Parameterization5.0 About Parameters 5.1 Passing Parameters into Subcircuits 5.2 Parameter-Editing Dialogs 5.3 Passing Parameters Through Multiple Hierarchy Levels5.4 Exploiting the Netlist PreprocessorAppendix A - Passing Parameters into Subcircuits Using the PARAMS PropertyAppendix B - Single Property ParameterizationModule 6 - Modeling6.0 Model RequirementsApplicationsApplication A - Create MOSFET Driver ModelApplication B - Switching Losses and Measuring EfficiencyApplication C - Low-Voltage High-Current Tuned Load Line TechniquesApplication D - Using the Design Verification ModuleAppendix A: Useful Keyboard Shortcut KeysAppendix B: Training Keyboard Shortcut KeysAppendix C: Schematic Tips and TricksAppendix D: SIMPLIS PWL R, L, CAppendix E: SIMPLIS VPWL and IPWL ResistorsSIMPLIS PartsBode Plot Probe w/ MeasurementsMulti-Level Capacitor Level 0-3 w/Quantity (Version 8.0+)Multi-Level Lossy Inductor (Version 8.0+) File-Defined Piecewise Linear Source (FDPWL)Piecewise Linear Passive Devices (R,L,C)PWL ResistorsPWL CapacitorsMulti-Level PWL Capacitor w/ Level 0-3 (Version 8.0+)PWL InductorsMulti-Level Lossy PWL Inductor (Version 8.0+) SemiconductorsConverting SPICE Models for use in SIMPLIS - OverviewSPICE Model Installation ProcessSupported ModelsModel Extraction OptionsAnalog FunctionsContinuous or Discrete Time FilterLaplace Filters (1st, 2nd, 3rd Order)Multi-Level MOSFET Driver (Version 8.0+)MultipliersMulti-Level Parameterized Opamp (Version 8.0+)Parameterized Opto Coupler (Version 8.0+)POP Trigger Schematic DeviceSIMPLIS One ShotSummers (Version 8.0+)Switched Voltage-Controlled Voltage SourceTrailing Edge PWMVoltage-Controlled Oscillator w/ Programmable Duty CycleVoltage-Controlled Oscillator w/ 50% Duty CycleSIMPLIS Digital DevicesWhen is Ground Ref Required?Maximizing Simulation Speed in Mixed-Mode SimulationsSIMPLIS A to D / D to ASIMPLIS CountersSIMPLIS Discrete Time FiltersSIMPLIS Flip-FlopsDigital FunctionsSIMPLIS GatesSIMPLIS RegistersDigital SourcesPWL Transformer ModelSIMPLIS Analysis Modes - OverviewSIMPLIS Transient AnalysisPeriodic Operating PointPOP Advanced OptionsSIMPLIS AC AnalysisSIMPLIS Simulation OptionsSIMPLIS Multi-step Runs - OverviewSIMPLIS Multi-step Parameter AnalysisSIMPLIS Monte Carlo AnalysisMulti-core Multi-step SIMPLIS AnalysesSIMPLIS Initial Condition Back AnnotationHow does Back-annotation Work?Issues with Hierarchical Blocks and SubcircuitsSIMPLIS Data Selection - Overview.PRINT.KEEPDVM - Design Verification ModuleDVM Tutorial1.0 Introduction: What is DVM?2.0  Getting Started3.0 Configuring the Schematic for DVM4.0 Adding Curves and Measurements5.0 Running Built-in  Testplans6.0 Customizing Testplans7.0 Scripting8.0 Applications9.0 Tutorial SummaryDVM ReferenceIntroduction to DVMManaged Sources and LoadsSymbolic ValuesDVM MeasurementsMeasuring the Switching FrequencyTestplansDVM Control SymbolsDC Input SourcesAuxiliary Input SourcesAC Line Input SourcesOutput Load SubcircuitsSpecialized AnalysesDVM ReportsDC/DC Built-In TestplanAC/DC Built-In TestplanAdd Curves TestplanAdd Power LossesAdd Scalar MeasurementsCreate Scalar MeasurementsLine and Load RegulationMeasuring Loop ParametersPromoting GraphsPromoting Graphs from Built-In TestplanPromoting ScalarsPulseLoad() and PulseLine()Suppressing SpecificationsUsing ArbitraryBodePlot()Using ArbitraryCurve()Using ExtractCurve()Using JumpersUsing ScriptsSystemDesignerRequirementsTutorialClocksBusesGlobal Start of Conversion SignalsSystemDesigner DevicesA to D / D to AArithmeticMultiplexersProbesPWMsConstant ValueData RegisterGainSOC Clock BreakinGlobal Clock BreakoutLimiterShift OperationUnit DelayUser ManualWelcomeIntroductionAbout SIMetrix/SIMPLIS DocumentationWhat is Simetrix?What is SIMPLIS?Why Simulate?System RequirementsAcknowledgementsQuick StartIntroductionTutorial 1 - A Simple Ready to Run CircuitTutorial 2 - A Simple SMPS CircuitTutorial 3 - Installing Third Party ModelsGetting StartedGetting StartedSimulation Modes - SIMetrix or SIMPLISUsing the Schematic EditorCircuit RulesAnalysis ModesRunning the SimulatorPlotting Simulation ResultsSIMetrix GUI EnvironmentOverviewInteractionDirectory ViewerInterface StylesSchematic EditorFundamentalsHierarchical Schematic EntrySchematic AnnotationsSchematic StylesSchematic GroupingSchematic PrintingFile OperationsPropertiesTemplate PropertyPSpice Schematics TranslationLoad Component ValuesUsing Schematic Editor for CMOS IC DesignFurther InformationSymbol Editor and LibraryCreating Schematic Symbols - OverviewGraphical Symbol EditorCreating a Symbol from a ScriptSymbol Library ManagerPartsPartsHow to Find and Place PartsPart SelectorPart SearchModel Library BrowserNumbered Parts in SIMPLISCircuit StimulusGeneric PartsCreating ModelsSubcircuitsSpecial PartsParameters and ExpressionsAnalog Behavioural ModellingIntroductionNon-linear Transfer FunctionLaplace Transfer FunctionDevice Library and Parts ManagementDevice Library and Parts ManagementUsing Model Library BrowserParts Management - Installing ModelsParts Management - Configuring the Part SelectorParts Management - Advanced TopicsSundry TopicsAnalysis ModesAnalysis ModesRunning SimulationsTransient AnalysisOperating PointSweep ModesDC SweepAC SweepNoise AnalysisReal Time NoiseTransfer FunctionSensitivityConvergenceData Handling and KeepsSimulator OptionsMulti-step AnalysesSafe Operating Area TestingSIMPLIS Analysis ModesSIMPLIS Analysis ModesTransient AnalysisPeriodic Operating Point (POP)AC AnalysisSIMPLIS OptionsMulti-step and Monte Carlo AnalysesInitial Condition Back-annotationGraphs, Probes and Data AnalysisGraphs, Probes and Data AnalysisElements of the Graph WindowProbes: Fixed vs. RandomFixed ProbesRandom ProbesPlot Journals and Updating CurvesGraph LayoutCurve OperationsGraph CursorsCurve MeasurementsEfficiency CalculatorGraph Zooming and ScrollingAnnotating a GraphExporting/Importing Graphs and DataSaving GraphsSaving DataViewing DC Operating Point ResultsPerformance Analysis and HistogramsThe Command ShellCommand LineEditing the Menu SystemUser Defined Toolbars and ButtonsMessage WindowCommand and Function ReferenceIntroductionCommand SummaryReferenceFunction SummaryFunction ReferenceMonte Carlo AnalysisMonte Carlo AnalysisAn ExamplePart Tolerance SpecificationRunning Monte CarloAnalysing Monte-Carlo ResultsVerilog-HDL SimulationOverviewDocumentationSupported Verilog SimulatorsBasic OperationUsing Verilog-HDL in SIMetrix SchematicsModule CacheSimulation OptionsTutorialVerilog Simulator InterfaceSundry TopicsSaving and Restoring SessionsSymbolic Path NamesSIMetrix Command Line ParametersConfiguration SettingsOptionsStartup Auto ConfigurationColours and FontsStartup ScriptInternational Character SetsInstallation and LicensingSIMPLIS ReferenceIntroductionOverviewOrganization of this User ManualInput File OrganizationOverviewGeneral Rules for the Input FileOrganization of the Input FileDevice StatementsOverviewSIMPLIS Device TypesModel StatementsOverviewDevice Models Used in SimplisSubcircuit DefinitionOverviewSubcircuit DefinitionScope of DefinitionScope of Definition for a Device and for a NodeExternal and Local NodesSubcircuit Calls/InstantiationControl StatementsOverviewOption StatementsControl Statements for Setting Initial ConditionsControl Statements for Printing VariablesMapping Names to Node NumbersCreating SIMetrix PlotsControl Statements Associated with AnalysesRunning SIMPLISOverviewRunning SIMPLIS on a SIMetrix SchematicRunning SIMPLIS for an External NetlistRunning SIMPLIS from a ScriptRunning SIMPLIS from a DOS PromptSIMPLIS ExecutionAborting a SIMPLIS RunAutomatic Program Suspension by SIMPLISNetlist PreprocessorRunning Monte Carlo and Multi-step AnalysesSimplis Data FilesOverviewThe Listing Data FileError Message Data FileThe ``State of Exit'' Data FileSwitching Instance Data FileTime-domain Data OutputThe Topology Information FileTaking Advantage of Existing FilesSwitching Instance Data File for the POP AnalysisData for the Periodic Operating Point AnalysisPrint/Plot File for Frequency-Domain AnalysisSimplis-TX ExamplesOverviewExample 1 -- Rectifier with RC loadExample 2 -- 3-Phase Rectifier with Resistive LoadExample 3 -- Operational Amplifier with SaturationExample 4 -- Unregulated ConverterExample 5 -- Regulated ConverterExample 6 -- Saturable InductorExample 7 -- SCR with RL LoadSimplis-POPOverviewStatements Relating to POP AnalysisSynopsis of the Periodic Operating Point AnalysisExample of Applying the POP Analysis ToolSimplis-FXOverviewStatements Relating AC AnalysisSynopsis of Small-Signal AC AnalysisAdvanced Digital ComponentsOverviewAdvanced Digital Component ReferenceSIMetrix Script ManualIntroductionThe SIMetrix Script LanguageA TutorialVariables, Constants and TypesExpressionsStatements and CommandsAccessing Simulation DataUser Interface to ScriptsErrorsExecuting ScriptsUnsupported Functions and CommandsFunction SummaryFunctions by Application abs Function ACSourceDialog Function ACSourceDialogStr Function AddConfigCollection Function AddGraphCrossHair Function AddModelFiles Function AddPropertyDialog Function AddRemoveDialog Function AddRemoveDialogNew Function AddSymbolFiles Function area Function arg Function arg_rad Function Ascii Function AssociateModel Function atan Function atan_deg Function avg Function BoolSelect Function Branch Function BuildParameterString Function CanOpenFile Function ChangeDir Function Char Function CheckLaplaceExpression Function ChooseDir Function ChooseDirectory Function Chr Function CloseEchoFile Function CloseFile Function CloseSchematic Function CloseSchematicTab Function CollateVectors Function CommandStatus Function CompareSymbols Function ComposeDigital Function ConvertFromBase64 Function ConvertIsoTimeToUnix Function ConvertLocalToUnix Function ConvertNumberFromBase64 Function ConvertNumberToBase64 Function ConvertToBase64 Function ConvertUnixTimeToIso Function ConvertUnixToLocal Function CopyTree Function CopyURL Function cos Function cos_deg Function cosh Function CountChars Function CreateDiodeDialog Function CreateLockFile Function CreateNewTitleBlockDialog Function CreateShortcut Function CreateTimer Function cv Function CyclePeriod Function Date Function db Function DCSourceDialog Function DCSourceDialogStr Function DefineADCDialog Function DefineArbSourceDialog Function DefineBusPlotDialog Function DefineCounterDialog Function DefineCurveDialog Function DefineDACDialog Function DefineFourierDialog Function DefineFourierProbeDialog Function DefineIdealTxDialog Function DefineLaplaceDialog Function DefineLogicGateDialog Function DefinePerfAnalysisDialog Function DefineRegisterDialog Function DefineRipperDialog Function DefineSaturableTxDialog Function DefineShiftRegDialog Function DefineSimplisMultiStepDialog Function DeleteConfigCollection Function DeleteTimer Function DeleteTree Function DeleteTreeProgress Function DescendDirectories Function DescendHierarchy Function DialogDesigner Function diff Function DirectoryIsWriteable Function Distribution Function EditArcDialog Function EditAxisDialog Function EditBodePlotProbeDialog Function EditCrosshairDimensionDialog Function EditCurveMarkerDialog Function EditDeviceDialog Function EditDigInitDialog Function EditFileDefinedPWLDialog Function EditFreeTextDialog Function EditGraphTextBoxDialog Function EditLegendBoxDialog Function EditObjectPropertiesDialog Function EditPinDialog Function EditPotDialog Function EditProbeDialog Function EditPropertyDialog Function EditReactiveDialog Function EditSelect Function EditSimplisMosfetDriverDialog Function EditStylesDialog Function EditTimer Function EditWaveformDialog Function EditWaveformStrDialog Function ElementProps Function EncodeImageToBase64 Function EnterTextDialog Function EpochTime Function erf Function erfc Function EscapeString Function EscapeStringEncode Function ev Function Execute Function ExistCommand Function ExistDir Function ExistFile Function ExistFunction Function ExistSymbol Function ExistVec Function exp Function fft Function Field Function FilterEditMenu Function FilterFile Function FindModel Function FIR Function Floor Function floorv Function FormatNumber Function Fourier Function FourierOptionsDialog Function FourierWindow Function FullPath Function gamma Function Gauss Function GaussLim Function GaussTrunc Function GenPrintDialog Function GetActualPath Function GetAllCurves Function GetAllSimulatorDevices Function GetAllSymbolPropertyNames Function GetAllYAxes Function GetAnalysisInfo Function GetAnalysisLines Function GetAnnotationText Function GetAxisCurves Function GetAxisLimits Function GetAxisType Function GetAxisUnits Function GetChildModulePorts Function GetCodecNames Function GetColours Function GetColourSpec Function GetCompatiblePathName Function GetComponentValue Function GetConfigLoc Function GetConnectedPins Function GetConvergenceInfo Function GetCurDir Function GetCurrentGraph Function GetCurrentStepValue Function GetCursorCurve Function GetCurveAxis Function GetCurveName Function GetCurves Function GetCurveVector Function GetDatumCurve Function GetDeviceDefinition Function GetDeviceInfo Function GetDeviceParameterNames Function GetDevicePins Function GetDeviceStats Function GetDotParamNames Function GetDotParamValue Function GetDriveType Function GetEmbeddedFileName Function GetEnvVar Function GetEthernetAddresses Function GetF11Lines Function GetFile Function GetFileCD Function GetFileDir Function GetFileExtensions Function GetFileInfo Function GetFileSave Function GetFileVersionStamp Function GetFileViewerSelectedFiles Function GetFirstSelectedElementOfType Function GetFonts Function GetFontSpec Function GetFreeDiskSpace Function GetGraphObjects Function GetGraphObjPropNames Function GetGraphObjPropValue Function GetGraphObjPropValues Function GetGraphTabs Function GetGraphTitle Function GetGroupInfo Function GetGroupStepParameter Function GetGroupStepVals Function GetHighlightedWidgetId Function GetHostId Function GetInstanceBounds Function GetInstanceParamValues Function GetInstancePinLocs Function GetInstsAtPoint Function GetInternalDeviceName Function GetKeyDefs Function GetKnownFolderPath Function GetLaplaceErrorMessage Function GetLastCommand Function GetLastError Function GetLegendProperties Function GetLibraryModels Function GetLicenseInfo Function GetLicenseStats Function GetLine Function GetListSelected Function GetListUnselected Function GetLongPathName Function GetMaxCores Function GetMenuItems Function GetModelFiles Function GetModelLibraryErrors Function GetModelName Function GetModelParameterNames Function GetModelParameters Function GetModelParameterValues Function GetModelType Function GetModifiedStatus Function GetNamedSymbolPins Function GetNamedSymbolPropNames Function GetNamedSymbolPropValue Function GetNearestNet Function GetNextDefaultStyleName Function GetNodeNames Function GetNonDefaultOptions Function GetNumCurves Function GetOpenSchematics Function GetOption Function GetPath Function GetPlatformFeatures Function GetPrinterInfo Function GetPrintValues Function GetReadOnlyStatus Function GetRegistryClassesRootKeys Function GetSchematicFileVersion Function GetSchematicTabs Function GetSchematicVersion Function GetSchemTitle Function GetSelectedAnnotationText Function GetSelectedCurves Function GetSelectedGraphAnno Function GetSelectedStyleNames Function GetSelectedYAxis Function GetShortPathName Function GetSimConfigLoc Function GetSimetrixFile Function GetSIMPLISExitCode Function GetSimulationErrors Function GetSimulationInfo Function GetSimulationSeeds Function GetSimulatorEvents Function GetSimulatorMode Function GetSimulatorOption Function GetSimulatorOptionInfo Function GetSimulatorOptions Function GetSimulatorStats Function GetSimulatorStatus Function GetSoaDefinitions Function GetSoaMaxMinResults Function GetSoaOverloadResults Function GetSoaResults Function GetSymbolArcInfo Function GetSymbolFiles Function GetSymbolInfo Function GetSymbolOrigin Function GetSymbolPropertyInfo Function GetSymbolPropertyNames Function GetSymbols Function GetSystemInfo Function GetTempFile Function GetTextEditorText Function GetThreadTimes Function GetTimerInfo Function GetTitleBlockInfo Function GetToolBarDefinition Function GetToolButtons Function GetUncPath Function GetUserFile Function GetVecStepParameter Function GetVecStepVals Function GetWidgetInfo Function GetWindowNames Function GetXAxis Function GraphImageCapture Function GraphLimits Function GroupDelay Function Groups Function GuiType Function Hash Function HashAdd Function HashCreate Function HashDelete Function HashSearch Function HasLogSpacing Function HasProperty Function HaveFeature Function HaveInternalClipboardData Function HierarchyHighlighting Function HighlightedNets Function Histogram Function Iff Function IffV Function IIR Function im Function imag Function InitRandom Function InputGraph Function InputSchem Function Instances Function InstNets Function InstNets2 Function InstPins Function InstPoints Function InstProps Function integ Function Interp Function IsComplex Function IsComponent Function IsDocumented Function IsFileOfType Function IsFullPath Function IsImageFile Function IsModelFile Function IsNum Function IsOptionMigrateable Function IsSameFile Function IsScript Function IsStr Function IsTextEditor Function IsTextEditorModified Function JoinStringArray Function JoinVectors Function length Function ListDirectory Function ListSchemProps Function ln Function LoadFile Function Locate Function log Function log10 Function mag Function magnitude Function makecomplexvec Function MakeDir Function MakeLogicalPath Function MakeString Function makevec Function ManageDataGroupsDialog Function ManageMeasureDialog Function MapArray Function max Function maxidx Function Maxima Function Maximum Function mean Function Mean1 Function MeasureDialog Function MessageBox Function Mid Function min Function minidx Function Minima Function Minimum Function MkVec Function MLRidgeRegressionFit Function MLSplineFit Function MLVector Function ModelLibsChanged Function Navigate Function NearestInst Function NetName Function NetNames Function NetWires Function NewPassiveDialog Function NewValueDialog Function norm Function NumberSelectedAnnotations Function NumDivisions Function NumElems Function OpenEchoFile Function OpenFile Function OpenPDFPrinter Function OpenPrinter Function OpenSchem Function OpenSchematic Function Parse Function ParseAnalysis Function ParseEscape Function ParseLaplace Function ParseParameterString Function ParseParameterString2 Function ParseProbeExpression Function ParseSIMPLISInit Function PathEqual Function PerCycleTiming Function PerCycleValue Function ph Function phase Function phase_rad Function PhysType Function PinName Function PrepareSetComponentValue Function PreProcessNetlist Function Probe Function ProcessingAccelerator Function ProcessingDragAndDrop Function ProcessingGuiAction Function Progress Function PropFlags Function PropFlags2 Function PropFlagsAll Function PropFlagsAnnotations Function PropFlagsWires Function PropOverrideStyle Function PropValue Function PropValues Function PropValues2 Function PropValuesAll Function PropValuesAnnotations Function PropValuesWires Function PutEnvVar Function PWLDialog Function QueryData Function RadioSelect Function Range Function re Function ReadClipboard Function ReadConfigCollection Function ReadConfigSetting Function ReadF11Analyses Function ReadF11Options Function ReadFile Function ReadIniKey Function ReadRegSetting Function ReadSchemProp Function ReadSIMPLISF11Data Function ReadTextEditorProp Function real Function Ref Function RefName Function RelativePath Function RemapDevice Function RemoveConfigCollection Function RemoveModelFile Function RemoveSymbolFiles Function ResolveGraphTemplate Function ResolveTemplate Function RestartTranDialog Function Rms Function RMS1 Function rnd Function RootSumOfSquares Function rt Function SaveSpecialDialog Function Scan Function ScanEscape Function ScriptName Function Search Function SearchModels Function Seconds Function Select2Dialog Function SelectAnalysis Function SelectColourDialog Function SelectColumns Function SelectCount Function SelectDevice Function SelectDialog Function SelectedProperties Function SelectedStyleInfo Function SelectedWires Function SelectFontDialog Function SelectRows Function SelectSIMPLISAnalysis Function SelectSymbolDialog Function SelGraph Function SelSchem Function SetComponentValue Function SetDifference Function SetInstanceParamValue Function SetIntersect Function SetModelParamValue Function SetPropertyStyles Function SetReadOnlyStatus Function SetSymmetricDifference Function SetUnion Function Shell Function ShellExecute Function sign Function SimetrixFileInfo Function SIMPLISRunStatus Function SIMPLISSearchIdx Function SimulationHasErrors Function sin Function sin_deg Function sinh Function Sleep Function Sort Function SortIdx Function SourceDialog Function SpectrumUniv Function SplitPath Function SplitString Function SprintfNumber Function sqrt Function Str Function StringLength Function StringStartsWith Function StrStr Function StyleInfo Function StyleLineTypes Function StyleNames Function SubstChar Function SubstProbeExpression Function SubstString Function sum Function SumNoise Function SupportedReadFormats Function SupportedWriteFormats Function SymbolInfoDialog Function SymbolLibraryManagerDialog Function SymbolName Function SymbolNames Function SymbolPinOrder Function SymbolPinPoints Function SystemValue Function SystemValuePath Function SystemWidgetExistsInSelectedWindow Function TableDialog Function TableEditor Function tan Function tan_deg Function tanh Function TemplateGetPropValue Function TemplateResolve Function TextEditorHasComments Function ThdWeight Function TickCount Function Time Function ToLower Function TransformerDialog Function TranslateLogicalPath Function TreeListDialog Function True Function Truncate Function TwoFileSelectionDialog Function UD Function Unif Function Units Function unitvec Function UpDownDialog Function UserParametersDialog Function Val Function ValueDialog Function Vec Function vector Function VectorsInGroup Function VersionInfo Function ViewFormattedText Function WC Function WirePoints Function Wires Function WM_CanRevertToSaved Function WM_GetCentralWidgetGeometry Function WM_GetContentWidgetNames Function WM_GetContentWidgetSessionInfo Function WM_GetContentWidgetsLayout Function WM_GetContentWidgetTypes Function WM_GetCurrentWindowName Function WM_GetNumberModifiedEditors Function WM_GetPrimaryWindowName Function WM_GetSystemWidgetSessionInfo Function WM_GetSystemWidgetsLayout Function WM_GetWindowGeometry Function WM_GetWindowNames Function WM_NumberContentWidgets Function WM_NumberSystemWidgets Function WriteConfigSetting Function WriteF11Lines Function WriteF11Options Function WriteIniKey Function WriteRawData Function WriteRegSetting Function WriteSchemProp Function XCursor Function XDatum Function XFromY Function XMLCountElements Function XMLGetAttribute Function XMLGetElements Function XMLGetText Function XMLToString Function XY Function YCursor Function YDatum Function YFromX Function Command Summary Abort Command AbortSIMPLIS Command About Command AddAnnotationText Command AddArc Command AddCirc Command AddCurveMarker Command AddDoubleClickAction Command AddFileViewMenuItem Command AddFloodFill Command AddFreeText Command AddGlobalStyle Command AddGraphDimension Command AddImage Command AddImageScript Command AddLegend Command AddLegendProp Command AddPin Command AddProp Command AddProperty Command AddSeg Command AddSymbolProperty Command AddTextBox Command AddTitleBlock Command AlignText Command Anno Command AppendGroup Command AppendTextWindow Command Arguments Command BuildDefaultOptions Command Cancel Command CaptureWaveformImage Command Cd Command ChangeArcAttributes Command ChangeSelectedStyleNames Command ChangeStyle Command ChangeSymbolProperty Command ClearMessageWindow Command Close Command CloseGraphSheet Command ClosePrinter Command CloseSchem Command CloseSheet Command CloseSimplisStatusBox Command CloseTextEditor Command CollectGarbage Command CombineMenu Command CompareSymbolLibs Command CompressXML Command Copy Command CopyClipGraph Command CopyClipSchem Command CopyFile Command CopyLocalSymbol Command CreateFont Command CreateGroup Command CreateRunningDialog Command CreateSym Command CreateToolBar Command CreateToolButton Command CursorMode Command Curve Command CurveEditCopy Command DecompressXML Command DefButton Command DefineToolBar Command DefKey Command DefMenu Command Del Command DelCrv Command Delete Command DeleteAxis Command DeleteGraphAnno Command DeleteSymbolProperty Command DeleteToolBar Command DelGroup Command DelLegendProp Command DelMenu Command DelProp Command DelSym Command DestroyRunningDialog Command Detach Command Discard Command Display Command DrawArc Command DrawArrow Command DrawPin Command Echo Command EditColour Command EditCopy Command EditCut Command EditFile Command EditFont Command EditGroupTitle Command EditPaste Command EditPin Command EndAllInteractions Command EndSym Command Execute Command ExecuteMenu Command FileViewCleanUpFileWatchers Command FloodFillSymbol Command Focus Command FocusCommandShell Command FocusShell Command GraphZoomMode Command GroupSelected Command Help Command HideCurve Command HighlightCurve Command HighlightWidget Command Hint Command HourGlass Command ImportSymbol Command Inst Command KeepGroup Command Let Command Listing Command ListModels Command ListOptions Command ListStdKeys Command LoadModelIndex Command LoadSimulatorStyleSheet Command LoadStyleSheet Command MakeAlias Command MakeCatalog Command MakeSymbolScript Command MakeTree Command MCD Command MD Command Message Command MessageBox Command Move Command MoveCurve Command MoveFile Command MoveMenu Command MoveProperty Command Netlist Command NewAnnotation Command NewAxis Command NewBasicTextEditor Command NewFileView Command NewGraphWindow Command NewGrid Command NewLabel Command NewLogicDefinitionEditor Command NewNetlist Command NewPartSelector Command NewPrinterPage Command NewSchem Command NewScript Command NewStyle Command NewSymbol Command NewVerilogA Command NewVerilogHDL Command NoPaint Command NoUndo Command OpenAsciiFile Command OpenBasicTextEditor Command OpenDirectory Command OpenExternalFile Command OpenGraph Command OpenGroup Command OpenLogicDefinitionEditor Command OpenNetlist Command OpenPrinter Command OpenRawFile Command OpenSchem Command OpenScript Command OpenSimplisStatusBox Command OpenVerilogA Command OpenVerilogHDL Command OpenWebPage Command OptionsDialog Command Pan Command PasteGraphImageToSchematic Command Pause Command PlaceCursor Command Plot Command PreProcessNetlist Command PrintGraph Command PrintSchematic Command Probe Command Prop Command Protect Command Quit Command RD Command ReadLogicCompatibility Command RebuildSymbols Command Redirect Command RedirectMessages Command RegisterUserFunction Command RenameLibs Command RenameMenu Command RepeatLastMenu Command ReplayTraces Command Reset Command ResizeWindow Command RestartTran Command RestoreCommandShell Command RestoreDefaultStyles Command Resume Command RotInst Command Run Command RunAsync Command RunCurrentScript Command RunSIMPLIS Command Save Command SaveAs Command SaveGraph Command SaveGroup Command SaveRhs Command SaveSnapShot Command SaveSymbol Command SaveSymlib Command SaveTextEditor Command SaveTextEditorAs Command SchematicEnableFileWatcher Command SchematicFileWatcherIgnoreChanges Command SchematicFileWatcherWatchChanges Command ScreenShotWindow Command ScriptAbort Command ScriptPause Command ScriptResume Command ScriptStep Command Select Command SelectCurve Command SelectGraph Command SelectLegends Command SelectSchematic Command SelectSimulator Command SelectSymbolPin Command SelectWireConnected Command Set Command SetAnnotationTextPosition Command SetCurveName Command SetDefaultEncoding Command SetGraphAnnoProperty Command SetGroup Command SetHighlight Command SetOrigin Command SetPinPrefix Command SetPinSuffix Command SetReadOnly Command SetRef Command SetSnapGrid Command SetStyleColour Command SetSymbolFillStyle Command SetSymbolOriginVisibility Command SetUnits Command Shell Command ShellOld Command Show Command ShowCurve Command ShowSimulatorWindow Command SizeGraph Command TemplateEditProperty Command TemplateSetValue Command TextEditorCommentLines Command TextEditorFileWatcherIgnoreChanges Command TextEditorFileWatcherWatchChanges Command TextEditorFind Command TextEditorFindNext Command TextEditorGoToLine Command TextEditorUncommentLines Command TextWin Command Title Command TitleSchem Command Trace Command UndoGraphZoom Command UngroupSelected Command UnHighlightCurves Command UnLet Command Unprotect Command Unselect Command UnSet Command UpdateAllSymbols Command UpdateAnnotationText Command UpdateDefaultStyle Command UpdateGlobalStyle Command UpdateProperties Command UpdateRunningDialog Command UpdateStyleInfo Command UpdateSymbol Command UpdateSystemStyleInfo Command UpdateTitleBlock Command ViewFile Command WebOpen Command Wire Command WireMode Command WM_CloseAllSystemWidgets Command WM_CloseNonPrimaryWindows Command WM_CloseSheet Command WM_ProgressWindowClose Command WM_ProgressWindowCloseAll Command WM_ProgressWindowCreate Command WM_ProgressWindowReport Command WM_RevertToSaved Command WM_Undock Command WriteImportedModels Command XMLAddAttribute Command XMLAddElement Command XMLClose Command XMLGoUpLevel Command XMLNew Command XMLOpenElement Command XMLOpenFile Command XMLSaveFile Command Zoom Command ApplicationsUser InterfaceCustom Curve AnalysisAutomating SimulationsSchematic Symbol Script DefinitionData Import and ExportGraph ObjectsEvent ScriptsUser Defined Script Based FunctionsUser Defined Binary FunctionsNon-interactive and Customised PrintingSchematic Template ScriptsCreating and Modifying ToolbarsCustom Dialog BoxesPre-defined ButtonsSIMPLIS Verilog HDL


HomeAdvanced SIMPLIS TrainingModule 4 - Introduction to ModelingAppendix - Symbols May Not Represent What You Think

Appendix - Symbols May Not Represent What You Think

To download the examples for Module 4, click

In this topic:

Key Concepts

This topic addresses the following key concepts:

Symbols can be modified to include models which behave differently than the
graphical symbol representation.

Templatescripts dynamically create models at run time.

What You Will Learn

In this topic, you will learn the following:

How small modifications to symbols can drastically change their behavior.

Getting Started

#1: Symbols May Not Represent What You Think!

Open the schematic

Press F9 to run the simulation.Result: The
transient simulation executes and the waveforms for the resistor and capacitor
voltages are shown. Clearly these voltages are not those of a resistor or a

Extreme examples? Yes of course these are extreme examples. The point is that symbols
and the models which they actually call, or otherwise put in the netlist don't have
to correlate. In this example, two different methods were used to generate the
resistor and capacitor models:

The model used by the resistor symbol is generated with a templatescript:

The model used by the capacitor symbol is stored in a model library:

Both files are located in the Module_4_Examples directory. The changes to the symbols

For the resistor symbol, a TEMPLATESCRIPT property is added, with the
property value: 4.1_make_phony_resistor.sxscr. When the netlist is created,
the templatescript 4.1_make_phony_resistor.sxscr is called, the script then
modifies the SIMPLIS_TEMPLATE property value. The templatescript replaces the
resistor model with a PWL voltage source.

The capacitor symbol has two modifications:
The MODEL property has been changed to X, indicating a
subcircuit model is used.

The VALUE property has been changed to the subcircuit name:

How these models are created or included in the simulation deck will be discussed in
section 4.1 What is a Model?

Model Generation Using
TEMPLATESCRIPTSThe model used by the resistor in the
4.1_symbols_may_not_represent_what_you_think.sxsch schematic was created with
a template script. The script file is located in the schematic's working directory:
C:/Training/Module_4_Examples/4.1_make_phony_resistor.sxscr. Creating models
with templatescripts is outside the scope of this training course and only a brief
introduction will be covered. The Script Reference Schematic Template Scripts has detailed instructions on how to create models using the templatescript
The template script used to create the model used by the resistor
The script works as follows:

Line 4 passes two string arguments into the script - that is the reference
designator and the current template. The resistor has no template, so the template
passed into the script is an empty string.

Line 7 defines a variable nl as the ASCII character for a new line.

Line 11 starts the new template definition with a new line followed by a comment
line, then another new line.

Lines 12 through 20 concatenate a new template, each line in the script creates a
new line in the model.

Lines 22 and 23 show the template values in the command shell. This is only for
debug purposes - most template scripts would not include these debug statements.

Line 25 is the business end of the script. Without setting the template value, the
existing template value is unchanged. This line sets the schematic template to the
newtemplate variable.

The first bullet in the What You Will
Learn section defined a model as a primitive or a subcircuit model. The model
created by the templatescript is a primitive model - that is, the reference designator
begins with a character other than X. The capacitor model used in this topic is a
subcircuit model as the reference designator begins with X.

Exercise #2: Verify the Resistor Model in the Netlist
In section 3.0.1
What Happens When You Press F9? you learned the templatescripts are
executed during the netlist process. The netlister then evaluates the template as if
the template was a static, fixed value, with the result being placed in the netlist.
In this exercise you will verify the resistor model is placed in the netlist.

From the menu bar, select SIMPLIS ▶ Edit
Netlist (before preprocess).Result: The
netlist opens in Notepad++. The model generated is shown in the image below:

Conclusions and Key Points to

Symbols define connectivity, and ideally the graphical symbol represents the
underlying functionality of the electrical model.

Symbols may pass parameters to the underlying electrical model.

Symbols may have parameter editing dialogs which allow users to edit the parameters
for the device.

Symbols are not models and vice-versa.

Symbols might not represent what you think - the electrical model can be subtly or
dramatically different than the graphical depiction.

Symbols may be stored in several locations, including a symbol library, on a
schematic, or as a script file.

Symbol libraries. can be installed and removed with the Symbol Manager.

Advanced SIMPLIS TrainingCourse OutlineInstalling the Training Course LicenseGetting StartedNavigating the Course MaterialModule 1 - Overview of the SIMPLIS EnvironmentModule 2 - Advanced SIMPLISModule 3 - Running SIMPLIS SimulationsModule 4 - Introduction to Modeling4.0 What is a Symbol?4.1 What is a Model?4.2 What is a Schematic Component File?4.3 What is a Device?4.4 Protecting Your Intellectual Property - Model Encryption4.5 Debugging Slow SimulationsAppendix - Symbols May Not Represent What You ThinkModule 5 - ParameterizationModule 6 - ModelingApplicationsAppendix A: Useful Keyboard Shortcut KeysAppendix B: Training Keyboard Shortcut KeysAppendix C: Schematic Tips and TricksAppendix D: SIMPLIS PWL R, L, CAppendix E: SIMPLIS VPWL and IPWL Resistors

© 2016 SIMetrix Technologies Ltd | All Rights Reserved
© 2016 SIMPLIS Technologies Inc | All Rights Reserved