. Activate the option Common Xoff for all columns. Image AddedThe result is a matrix with as many columns as cycles and as many rows as values per cycle. From all these cycles we want to extract a number of cycles according to a filter condition. As an example, we search for all cycles where knocking is indicated. Knocking shall be defined where KPEAK is bigger than 2 bar. We will make this threshold configurable via a Value Input field. Image AddedThe threshold value can be made modifiable via Value Input field (menu Graph Editor->Controls). Enter a suitable Name and Unit to better identify the value later on. Image Added Image Added
The following 3 steps will create a matrix which only contains cycles with knocking. For this, we first create a channel containing only the relevant cycle indices and use this later as filter criterion in a Cuts through Matrix calculation. To filter the cycles, start with identifying the cycles with knocking. Open the Formula Editor for numeric Objects (menu Math->Arithmetic). Enter a speaking name in Result Data and select the Input Data CD/KPEAK_1 and KnockingThreshold-V. The formula if(A > B; Index(A); -1) sets all cycle numbers without knocking to -1 which can later be distinguished from the knocking cycle numbers. Image AddedNow we need to filter out all other cycles (-1) to receive a list of all cycles with knocking. Open the Value Filter (menu Math->Data Filters). Select the just calculated result SetKnockingCycles as Channel to be filtered. In this case, the Input Data for the Filter Condition is the same. Set Relation to all values greater than -1. Then Add filter to actually set the filter condition. Image AddedThe resulting channel we can use as control channel for cutting out the interesting columns of the cycle matrix. Open the Cuts through Matrix calculation (menu Math->Conversions) and select the cycle matrix CycleSplit as Data-Object. For the X-values, select all values. Image AddedFor the Y-values, select the filter result SetKnockingCycles_Filtered as Control-Channel. Image AddedThe resulting matrix only contains cycles with knocking. To analyse the cycles further, we create a cycle control to shift through the cycles one after another. To display the curves, find the CycleSelection matrix in the Explorer window and drag it into the Graphic window. Then, double-click the graph (anywhere except on axes or curves) to open the dialog. Enter a custom Name, e.g. CycleGraph. As workaround for an inconsistency of matrix configuration we need to set the X-values to CycleSplit-X. To display only a single cycle, replace the * by a specific column index, e.g. 1, in the input field. Image AddedAfter applying the changes and closing the dialog, you can further adjust the graph, e.g. change the line width or zoom the X-axis to approx. 270 .. 450° via scroll wheel over the axis. Next, we add a control to navigate through the cycles. Create an Iterable Graph Input Controller (menu Graph Editor->Controls) and select the graph created before under Commands. [CycleGraph-C1] MatrixColumnSelect is the command provided by the Universal 2D-Graph to select a specific column of a matrix. Image AddedThe result should look like this: Image Added
|