Documentation /  Analog Insydes /  Reference Manual /  Numerical Analyses /

ACAnalysisNDAESolve

3.7.4 NoiseAnalysis

Command structure of NoiseAnalysis.

This functions allows for carrying out a numerical noise analysis. The output noise and the equivalent input noise are computed from a linear DAEObject dae, where the parameter invar denotes the input and the variable outvar denotes the output, respectively. Use GetParameters to get a valid list of input symbols and GetVariables for a list of valid output symbols.

NoiseAnalysis returns the result according to the Analog Insydes numerical data format (see Section 3.7.1) for the output noise (denoted by the symbol OutputNoise), the equivalent input noise (denoted by the symbol InputNoise), the output variable outvar, and each noise source. The computed values for the noise sources are given in and , input and output noise in and , respectively.

The result of the numerical noise analysis can be displayed with Analog Insydes graphics functions such as BodePlot.

The DAEObject dae must be set up symbolically (use ElementValues -> Symbolic during equation setup). Note that at least all sources (noise sources and the one small-signal input source invar) have to be accessible symbolically. When setting up equations for noise analysis, specify the option settings AnalysisMode -> AC and DefaultSelector -> "Noise" for CircuitEquations in order to use the noise models. See CircuitEquations for a description of the options DefaultSelector and ElementValues.

Note that the noise sources are expressed in the following units:

Units of noise sources.

While specifying the value of a noise source it is also assumed that the bandwidth is .

NoiseAnalysis has the following options:

Options for NoiseAnalysis

See also: BodePlot, ACAnalysis, GetVariables, GetParameters, Section 3.7.1.

Options Description

A detailed description of all NoiseAnalysis options is given below in alphabetical order:

DesignPoint

With DesignPoint -> {symbol -> value, }, you can specify the design point. See also CircuitEquations.

The default setting is DesignPoint -> Automatic, which means to use the design point given in the DAEObject.

FrequencyVariable

This option specifies the symbol that denotes the complex Laplace frequency. See CircuitEquations in Section 3.5.1.

The default setting is FrequencyVariable -> Automatic, which means to use the symbol given in the DAEObject.

InterpolationOrder

With InterpolationOrder -> integer, you can change the interpolation order of the resulting interpolating functions. See the Mathematica object InterpolatingFunction.

The default setting is InterpolationOrder -> 1, which is linear interpolation.

PointsPerDecade

PointsPerDecade specifies the number of sampling points per frequency decade.

The default setting is PointsPerDecade -> 10.

SweepPath

SweepPath specifies a mapping from a frequency to a point in the complex plane. The option value has to be a pure function with one argument which returns a complex number.

The default setting is SweepPath -> (2. Pi I #1 &), which specifies a sweep along the axis.

Examples

Load Analog Insydes.

In[1]:= <<AnalogInsydes`

Read the netlist and the operating-point information.

In[2]:= bufcir = ReadNetlist[
"AnalogInsydes/DemoFiles/Buffer.cir",
"AnalogInsydes/DemoFiles/Buffer.out",
Simulator -> "PSpice"]

Out[2]=

Choose noise models and set up system of equations symbolically.

In[3]:= bufeq = CircuitEquations[bufcir, AnalysisMode -> AC,
DefaultSelector -> "Noise", ElementValues -> Symbolic]

Out[3]=

View circuit variables. The variable V$99 is chosen as output symbol.

In[4]:= GetVariables[bufeq]

Out[4]=

View circuit parameters. The parameter V$VIN is chosen as input symbol.

In[5]:= GetParameters[bufeq]

Out[5]=

Perform numerical noise analysis with NoiseAnalysis. Note the additional symbols OutputNoise and InputNoise in the result.

In[6]:= bufnoi = NoiseAnalysis[bufeq, V$VIN, V$99,
{f, 10., 1.*^8}]

Out[6]=

Display the simulation result.

In[7]:= BodePlot[bufnoi, {OutputNoise[f], InputNoise[f]},
{f, 10., 1.*^8}, PhaseDisplay -> None,
TraceNames -> {"noise(out)", "noise(in)"}]

Out[7]=

ACAnalysisNDAESolve