Product Documentation
Virtuoso Visualization and Analysis XL SKILL Reference
Product Version IC23.1, November 2023

waveVsWave

waveVsWave(
[ ?x o_waveX ]
[ ?y o_waveY ]
[ ?xName t_xName ]
[ ?xUnits g_xUnits ]
[ ?yName t_yName ]
[ ?yUnits g_yUnits ]
)
=> o_waveform / nil

Description

Creates an output waveform that uses y axes of the specified input waveforms as its x and y axes. When the specified input waveforms have different x axes, this function performs the interpolation.

You can also use this function to compare the y axis of a family of waveforms with the y axis of a single-leaf waveform.

Arguments

?x o_waveX

Input waveform whose y axis you want to use as the x axis of the output waveform.

?y o_waveY

Input waveform whose y axis you want to use as the y axis of the output waveform.

?xName t_xName

Name of the x axis.

?xUnits g_xUnits

Specifies whether to show units on x axis.

?yName t_yName

Name of the y axis.

?yUnits g_yUnits

Specifies whether to show units on y axis.

Value Returned

o_waveform

Waveform object of the output waveform created using the specified input waveforms.

nil

Output waveform cannot be created because of an error.

Examples

The following example creates a Waveform window and returns its window ID.

awvCreatePlotWindow()
=> window:3

The following example opens simulation results stored in the specified directory.

openResults("/servers/user/design/ampsim.raw")
=> "/servers/user/design/ampsim.raw"

The following example plots the signal in_m from the tran-tran results of the specified results directory in subwindow 1 of the Waveform window you created using the function awvCreatePlotWindow.

awvPlotSignals('(("/servers/user/design/ampsim.raw" (("tran-tran" ("in_m"))))))
=> t

The following example plots the signal in_p from the tran-tran results of the specified results directory in subwindow 2 of the current Waveform window.

awvPlotSignals('(("/servers/user/design/ampsim.raw" (("tran-tran" ("in_p"))))) ?plotStyle "New Subwindow")
=> t

The following example creates a waveform object output whose x and y axes are y axes of input waveforms in_m and in_p respectively.

output=waveVsWave(?x v("in_m" ?result "tran-tran") ?y v("in_p" ?result "tran-tran") ?xName "y (in_m)" ?xUnits "V" ?yName "y (in_p)" ?yUnits "V")
=> srrWave:0x36cde070

The following example creates another Waveform window and sets it as the current Waveform window.

awvCreatePlotWindow()
=> window:4

The following example plots the output waveform stored in the waveform object output.

awvPlotWaveform(
    awvGetCurrentWindow()
    list(output)
    ?expr list("waveVsWave")
    ?color list("y6")
    ?index list(1)
    ?lineType list("line")
    ?lineStyle list("solid")
    ?lineThickness list("fine")
    ?showSymbols list(t)
    ?dataSymbol list("x")
    )
=> t


Return to top
 ⠀
X