# Shmoo Plot

Discussion in 'Electronics Homework Help' started by entev, May 12, 2017.

1. ### entev

Joined:
May 12, 2017
Messages:
11
0
Hi. Does someone know how i can "calculate" the shmoo plot from the given data (nxn matrix). Thanks in advance.

entev, May 12, 2017

2. ### Harald KappModeratorModerator

Joined:
Nov 17, 2011
Messages:
7,434
1,269
Location:
Germany-Europe-Earth-Sol System-Milky Way-Laniakea
As I understand you already have some data in an n-by-n matrix, right? The shmoo plot is just the graphical representation of this matrix, possibly with each matrix cell weighted according to criteria to be defined by your (e.g. pass/fail if the cell's value is above or below a certain threshold).
If you don't have the 'plot' software to generate the shmo plot from this data, you could use e.g. Excel, load the matrix into a worksheet and use conditional formatting to color the cells according to the cell's value. Make the cell content the same color as the cell's background clor, then print the worksheet.
Here's an example with cell values shown, conditions are: <=0.5=red, >0.5 = green

Is this what your are loking for?

Harald Kapp, May 13, 2017

3. ### entev

Joined:
May 12, 2017
Messages:
11
0
not at all.

say this is the matrix

it's something like 20x40 matrix, and the start and the end of the axises are given (-10 ÷ -14) and the step (-0.08). so for every cell in matrix i need to determine the pass/fail. how? what's the algorithm. and no, i need to write a code to determine that and not use excel or other software

entev, May 13, 2017
4. ### (*steve*)¡sǝpodᴉʇuɐ ǝɥʇ ɹɐǝɥdModerator

Joined:
Jan 21, 2010
Messages:
23,022
2,036
Location:
Mid way between Beijing and the Ronne Ice Shelf
Au contraire, it is exactly what Harald suggested.

Presumably you have results in all of these cells. All you need to do is to derive a method which returns one value for success and another for failure.

Harald suggested doing that with conditional formatting, your example appears to use an @if(...) to return distinct true/false values. Both are essentially equivalent.

It's your assignment, so it's up to you to determine what values represent true and false.

Whether you use Excel or something else, the method is essentially the same. Break the area of the plot into cells and determine the value at each cell.

(*steve*), May 14, 2017
5. ### entev

Joined:
May 12, 2017
Messages:
11
0
as i understand, if i only have the starts and ends of intervals and the step, i can generate the matrix? i.e. no need for input matrix?

and if there IS a matrix, what kind of data should it contain?

entev, May 14, 2017
6. ### entev

Joined:
May 12, 2017
Messages:
11
0
and what about the algorithm to determine whether it's a pass or a fail? i don't know much about chip testing specifications and thresholds etc.

well, i can tell the code to plot the same shape for every input but that will not be a solution to the problem

entev, May 14, 2017
7. ### (*steve*)¡sǝpodᴉʇuɐ ǝɥʇ ɹɐǝɥdModerator

Joined:
Jan 21, 2010
Messages:
23,022
2,036
Location:
Mid way between Beijing and the Ronne Ice Shelf
In practice, I believe it is normally done by quenching the flash prior to complete discharge of the capacitor.

I'm not sure exactly how that is achieved since the discharge current in very small camera flash units can be between 50 and 100A.

(*steve*), May 14, 2017
8. ### entev

Joined:
May 12, 2017
Messages:
11
0
well after all the algorithm depends on what is being tested righr?

entev, May 15, 2017
9. ### Harald KappModeratorModerator

Joined:
Nov 17, 2011
Messages:
7,434
1,269
Location:
Germany-Europe-Earth-Sol System-Milky Way-Laniakea
This is a design/test decision to be made by you. The test machine will deliver a measure for a cerain parameter for every point within the matrix. The x-axis and the y-axis are two parameters that the test machine varies according to your demands, e.g. you could have x-axis = supply voltage, y-axis = frequency of an input signal. Or whatever combination you are interested in. The tester will evaluate the response of the chip to these two input signal (plus any number of other signals that may be needed to make the chip operational, e.g. additional supply voltages).
The test machine will deliver another parameter as test result. In this example this could e.g. be the amplitude of the output signal. It is now your task as designer to define which output level is acceptable and which output level is not. This defines the threshold for a good/bad decision.

For another test the relevant parameter may be a delay time, a signal's rise time or whatever.

Harald Kapp, May 15, 2017
10. ### entev

Joined:
May 12, 2017
Messages:
11
0
okay, and what if the input is a matrix? what values should be in it and how should the pass/fail be determined in that case?

entev, May 15, 2017
11. ### Harald KappModeratorModerator

Joined:
Nov 17, 2011
Messages:
7,434
1,269
Location:
Germany-Europe-Earth-Sol System-Milky Way-Laniakea
Where does the matrix come from? What is the content of the matrix cells, what are the axes?

Harald Kapp, May 15, 2017
12. ### entev

Joined:
May 12, 2017
Messages:
11
0
i don't know what it is cause that's not specified in the assignment. a matrix that contains some values probably. but im wondering what data is that and it can be helpful

entev, May 15, 2017
13. ### entev

Joined:
May 12, 2017
Messages:
11
0
what if the matrix is something like this (and the shmoo plot isn't necessarily for testing something). just generate shmoo plot for this matrix
3.4 3.3 .....
3.2 3.3 .....
.................
this probably doesn't make sense but it's probably something like this

matrix can be very large and i guess i need to divide it into submatrices and solve the problem that way...

entev, May 16, 2017
14. ### Harald KappModeratorModerator

Joined:
Nov 17, 2011
Messages:
7,434
1,269
Location:
Germany-Europe-Earth-Sol System-Milky Way-Laniakea
Whatever it is that the matrix represents: It is up to you to evaluate the contents and to decide which values are pass and which values are fail.

Since this is obviously an assignment, deciding how to do this is probably part of the task you've been given. Also since this is a assignment I will move this thread to the appropriate forum section. Note that we do generally not give full solutions for such tasks, we rather try to guide you in finding your own solution.

My interpretation now is that your task is to write a program that generates a shmoo plot as shown in your post #3 from a matrix of values. The plot itself is only a graphical representation of the matrix.
So start by considering these sub-tasks (which will lead in the end to a smoo plot):
• How would you print out a matrix of values e.g. as in your post #13?
• When you have achieved this: how can you generate a matrix of yes/no or 1/0 or "x"/" " values from the original values? Hint: you need a treshold value which you could e.g. ask as input from the user.
• Use the result from the first sub-task to print this modified matrix.

Harald Kapp, May 16, 2017
entev likes this.
15. ### entev

Joined:
May 12, 2017
Messages:
11
0
okay, thanks. i'm also given the size. if i didn't have the matrix, then this would make sense (since that would mean size is the start and the end of x-axis or y-axis parameter). but what does the size represent in this case?

entev, May 16, 2017
16. ### Harald KappModeratorModerator

Joined:
Nov 17, 2011
Messages:
7,434
1,269
Location:
Germany-Europe-Earth-Sol System-Milky Way-Laniakea
I'm sorry, I don't get it. First you state:
And you introduce a new parameter:
A matrix here can be considered a mathematical 2-dimensional representation of a set of numbers. What these numbers mean and what the x-axis and the y-axis represent as well as how these axes are scaled (start, stop, length of an interval) is nothing per se mathematical. These are parameters that you need as input (e.g. from the person who generated the matrix). You don't need these parrameters to create the shmoo plot. The shmoo plot is simply the graphical representtaion of the matrix's content.
You need these parameters to give this graphical representation a meaning. In the simplest form you print these parameters as a key next to the matrix.

My crystal ball is currently out of order. Please go back to start, reconsider the task you've been given, present the solutions you've arrived at so far and ask specific questions.
I could guess that size is simply the parameter 'n' from the 'n by n'm matrix you started this thread with. But currently I get the impression you haven't understood the underlying problem/task, We might be much more of a help if you present the full task assignment so we can sort out what is required and where we can help you.

As far as it concerns the original question how to creat a shmoo plot from any n by n matrix I really think my post #14 pretty much leads to the answer.

Harald Kapp, May 16, 2017
17. ### entev

Joined:
May 12, 2017
Messages:
11
0
im sorry to confuse you. the original task is - im given a numerical matrix, also the sizes (what sizes? i don't know) and a step, and i need to generate the shmoo plot.

at first i thought that the matrix is the generated shmoo plot (that contains the pass/fail flags). plus i didn't find any example of shmoo plot which receives a matrix as its input on google, that's why i thought i only had the sizes (start, end) and the step

but when i have the matrix which contains numbers (random numbers i guess, out of some predefined order probably?), i can't see the purpose of the given SIZES. if those are the start and end, then why give it as input? i can calculate it during reading the data (for step, i guess it's the scale on axes)

entev, May 16, 2017
18. ### Harald KappModeratorModerator

Joined:
Nov 17, 2011
Messages:
7,434
1,269
Location:
Germany-Europe-Earth-Sol System-Milky Way-Laniakea
I'm sorry, I can't make neither head nor tails of that SIZES thing. It's maybe time to ask your instructor or a classmate what this means.

Just one guess: SIZE could be the threshold which you use to make the pass/fail decision based on the matrix cells values.

Harald Kapp, May 17, 2017
entev likes this.
19. ### (*steve*)¡sǝpodᴉʇuɐ ǝɥʇ ɹɐǝɥdModerator

Joined:
Jan 21, 2010
Messages:
23,022
2,036
Location:
Mid way between Beijing and the Ronne Ice Shelf
Or it could be the dimensions of the array of data. For example 30 rows of 50 columns.

(*steve*), May 17, 2017

Joined:
May 12, 2017
Messages:
11