You are here : matlab → Signal Processing → undershoot
# undershoot() - Signal Processing

### Syntax

### Example

### Output / Return Value

### Limitations

### Alternatives / See Also

### Reference

US = undershoot(X) returns the greatest deviations below the final state levels of each transition in the bilevel waveform, X. The undershoots, US, are expressed as a percentage of the difference between the state levels. See Undershoot. The length of US corresponds to the number of transitions detected in the input signal. The sample instants in X correspond to the vector indices. To determine the transitions, undershoot estimates the state levels of the input waveform by a histogram method. undershoot identifies all regions that cross the upper-state boundary of the low state and the lower-state boundary of the high state. The low-state and high-state boundaries are expressed as the state level plus or minus a multiple of the difference between the state levels. See State-Level Tolerances.US = undershoot(X,FS) specifies the sampling frequency, FS, in hertz. The sampling frequency determines the sample instants corresponding to the elements in X. The first sample instant in X corresponds to t=0.US = undershoot(X,T) specifies the sample instants, T, as a vector with the same number of elements as X.[US,USLEV,USINST] = undershoot(...) returns the levels, USLEV, and sample instants, USINST, of the undershoots for each transition.[...] = undershoot(...,Name,Value) returns the greatest deviations below the final state level with additional options specified by one or more Name,Value pair arguments.undershoot(...) plots the bilevel waveform and marks the location of the undershoot of each transition as well as the lower- and upper reference-level instants and the associated reference levels. undershoot also plots the state levels and associated lower- and upper-state boundaries.

US = undershoot(X)US = undershoot(X,FS)US = undershoot(X,T)[US,USLEV,USINST] = undershoot(...)[...] = undershoot(...,Name,Value)undershoot(...)

Undershoot Percentage in Posttransition Aberration RegionOpen This Example Determine the maximum percent undershoot relative to the high-state level in a 2.3 V clock waveform. Load the 2.3 V clock data. Determine the maximum percent undershoot of the transition. Determine also the level and sample instant of the undershoot. In this example, the maximum undershoot in the posttransition region occurs near index 23.load('transitionex.mat','x') [uu,lv,nst] = undershoot(x) uu = 4.5012 lv = 2.1826 nst = 23 Plot the waveform. Annotate the overshoot and the corresponding sample instant.undershoot(x); ax = gca; ax.XTick = sort([ax.XTick nst]); Undershoot Percentage, Levels, and Time Instant in Posttransition Aberration RegionOpen This Example Determine the maximum percent undershoot relative to the high-state level, the level of the undershoot, and the sample instant in a 2.3 V clock waveform. Load the 2.3 V clock data with sampling instants. The clock data are sampled at 4 MHz.load('transitionex.mat','x','t') Determine the maximum percent undershoot, the level of the undershoot in volts, and the time instant where the maximum undershoot occurs. Plot the result.[us,uslev,usinst] = undershoot(x,t) undershoot(x,t); us = 4.5012 uslev = 2.1826 usinst = 5.5000e-06 Undershoot Percentage, Levels, and Time Instant in Pretransition Aberration RegionOpen This Example Determine the maximum percent undershoot relative to the low-state level, the level of the undershoot, and the sample instant in a 2.3 V clock waveform. Specify the 'Region' as 'Preshoot' to output pretransition metrics. Load the 2.3 V clock data with sampling instants. The clock data are sampled at 4 MHz.load('transitionex.mat','x','t') Determine the maximum percent undershoot, the level of the undershoot in volts, and the sampling instant where the maximum undershoot occurs. Plot the result.[us,uslev,usinst] = undershoot(x,t,'Region','Preshoot') undershoot(x,t,'Region','Preshoot'); us = 6.1798 uslev = -0.1500 usinst = 5.0000e-06