====== Event Global Minimum ====== ===== Overview ===== This command identifies the lowest point (minimum value) of a signal within a specified time range and creates a corresponding event at that frame. It is typically used when a user wants to detect a **single lowest value** of a signal over an entire trial or within a specific interval defined by events. This command is highly configurable and allows you to: * Search over the **entire trial**, or within a specific **event-defined interval** * Use offsets to shift the created event slightly forward or backward in time/frames. * Limit search to specific instances of repeated event sequence. * Define nested ranges using subsequences. If the local minima are needed, see the [[Visual3D:Documentation:Pipeline:Event_Commands:Event_Minimum|Event_Minimum]] command To review the difference between local and global minimum values please see [[Visual3D:Documentation:Pipeline:General_Information:Global_vs_Loca_Max_and_Min|here]]. ===== Pipeline Command ===== The command below is as seen in the Visual3D application, **Version 6**. Event_Global_Minimum /RESULT_EVENT_NAME= ! /SIGNAL_TYPES= ! /SIGNAL_FOLDER=ORIGINAL ! /SIGNAL_NAMES= ! /SIGNAL_COMPONENTS= ! /FRAME_OFFSET=0 ! /TIME_OFFSET= ! /EVENT_SEQUENCE= ! /EXCLUDE_EVENTS= ! /EVENT_SEQUENCE_INSTANCE=0 ! /EVENT_SUBSEQUENCE= ! /SUBSEQUENCE_EXCLUDE_EVENTS= ! /EVENT_SUBSEQUENCE_INSTANCE=0 ! /THRESHOLD= ; =====Command Parameters===== The following table shows the command parameters and descriptions: |**Parameter** |**Description**| |**/RESULT_EVENT_NAME=** | Name of the new event created at the signal's minimum value. | |**!/SIGNAL_TYPES=** | Type of signal (e.g., `ANALOG`, `LINK_MODEL_BASED`, `TARGET`). | |**!/SIGNAL_FOLDER=** | Folder where the signal is stored (usually `ORIGINAL` or `NORMALIZED`). | |**!/SIGNAL_NAMES=** | The specific signal to evaluate (e.g., `Force`, `Left_Ankle_Angle`). | |**!/SIGNAL_COMPONENTS=** | Component of the signal to check (e.g., X, Y, Z). | |**!/FRAME_OFFSET=** | Number of frames to shift the new event from the minimum. | |**!/TIME_OFFSET=** | Time (in seconds) to shift the event forward or backward. | |**!/EVENT_SEQUENCE=** | Sequence of two events (e.g., `LTO`, `LHS`) to restrict the search range. | |**!/EXCLUDE_EVENTS=** | If any listed event occurs in the sequence, it is skipped. | |**!/EVENT_SEQUENCE_INSTANCE=** | Index of the sequence instance to evaluate (0 = all, 1 = first, etc.). | |**!/EVENT_SUBSEQUENCE=** | Optional inner event window within a broader sequence. | |**!/SUBSEQUENCE_EXCLUDE_EVENTS=**| Exclude subsequence if certain events are present. | |**!/EVENT_SUBSEQUENCE_INSTANCE=**| Specify instance of the subsequence to evaluate. | |**!/THRESHOLD=** | Minimum required signal value to consider a point as the minimum. | ====Dialog==== The command can be edited in a text editor or in a dialog form. To edit in the dialog pop-up form either click on the **Edit** button in the pipeline workshop or double-click on the command. The dialog box is shown below: {{:visual3d:documentation:pipeline:event_commands:egmin_dialog.png?500|}} * **New Event Label Name**: Name for event that will be created at the minimum point. * **Signal Component**: Direction of signal to be analyzed. * **Frame Offset**: Move the resulting event by a number of frames. * **Time Offset**: Shift the event by time (in seconds). * **Threshold**: Create an event if the minimum value is below this value. * **Event Sequence and Instance for Range**: Search for the minimum between specific events. * **Subsequence and Instance within Event Sequence**: Search window within the main sequence. =====Examples===== The following example will go through the use of the **Event_Global_Minimum** command in the Visual3D application. This command may be used to create an event **RKFlex_Min**, at the GLOBAL minimum value of a signal.\\ RKFlex_Min is at the minimum knee flexion angle during the gait cycle. The gait cycle is indicated by the RHS events.\\ **Example 1)** The minimum value of the signal may be over the entire signal\\ **Example 2)** The minimum value of the signal may be during an event sequence\\ **Example 3)** A specific event sequence may be excluded\\ **NOTE:** * If no events are specified in the Event Sequence, a global minimum over the whole trial will be created. * One event will be created during each gait cycle. * Event_Minimum command may be used to create multiple minimum events during an event sequence. ==== Example 1: Simple Use Case ==== This example will be done showing both the dialog box and corresponding command text. Other options within the command such as **Exclude Event**, and **Select Subsequence** are explained in detail on the [[Visual3D:Documentation:Pipeline:Event_Commands:Event_Global_Maximum#Examples|Event_Global_Maximum]] page. To create the RKFlex_Min event using the Event_Global_Minimum dialog box: **1. Enter information into dialog box:** * **Event_Name:** RKFlex_Min * **Select Frame Offset:** 0 * **Signal Components:** X * **Event Sequence Instance:** 0 * **Defined Events:** RHS + RHS * Click **OK** |{{:visual3d:documentation:pipeline:event_commands:dialog_ex1_egmin.png?500|}}| Event_Global_Minimum /RESULT_EVENT_NAME=RKFlex_Min ! /SIGNAL_TYPES= ! /SIGNAL_FOLDER=ORIGINAL ! /SIGNAL_NAMES= /SIGNAL_COMPONENTS=X ! /FRAME_OFFSET=0 ! /TIME_OFFSET= /EVENT_SEQUENCE=RHS+RHS ! /EXCLUDE_EVENTS= ! /EVENT_SEQUENCE_INSTANCE=0 ! /EVENT_SUBSEQUENCE= ! /SUBSEQUENCE_EXCLUDE_EVENTS= ! /EVENT_SUBSEQUENCE_INSTANCE=0 ! /THRESHOLD= ; | **2. Select desired signal:** * Select **signal from data tree** Right_Knee_Angle * Click **Import Selected Signals** {{:Event_Global_Min_RKFlex_Min_Import.jpg?700}}| **RKFlex_Min** will be created at the global minimum value during the gait cycle.\\ ==== Example 2: Finding Value at Event ==== This command can be used to find the **lowest vertical GRF during swing phase** of the left leg (right single support) and convert that to a metric. Event_Global_Minimum /RESULT_EVENT_NAME=RMinGRF /SIGNAL_TYPES=LINK_MODEL_BASED /SIGNAL_FOLDER=ORIGINAL /SIGNAL_NAME=Right GRF /FRAME_OFFSET=0 ! /TIME_OFFSET= /EVENT_SEQUENCE=LTO+LHS ! /EXCLUDE_EVENTS= ! /EVENT_SEQUENCE_INSTANCE= ! /EVENT_SUBSEQUENCE ! /SUBSEQUENCE_EXCLUDE_EVENTS= ! /EVENT_SUBSEQUENCE_INSTANCE=0 ! /THRESHOLD= ; Then find the metric value at this event for the GRF: Metric_Signal_Value_At_Event /SIGNAL_TYPES=LINK_MODEL_BASED /SIGNAL_FOLDER=ORIGINAL /SIGNAL_NAME=Right GRF /RESULT_METRIC_NAME=minGRF ! /APPLY_AS_SUFFIX_TO_SIGNAL_NAME=FALSE ! /SIGNAL_COMPONENTS= ! /COMPONENT_SEQUENCE= /EVENT_NAME=RMinGRF ! /EVENT_INSTANCE=0 ; ---- ====Notes==== === Version 5 === |{{:Event_Global_Minimum.jpg}}| Event_Global_Minimum /RESULT_EVENT_NAME= ! /SIGNAL_TYPES= ! /SIGNAL_NAMES= ! /SIGNAL_FOLDER=ORIGINAL ! /SIGNAL_COMPONENTS= ! /FRAME_OFFSET=0 ! /TIME_OFFSET= ! /EVENT_SEQUENCE= ! /EXCLUDE_EVENTS= ! /EVENT_SEQUENCE_INSTANCE=0 ! /EVENT_SUBSEQUENCE= ! /SUBSEQUENCE_EXCLUDE_EVENTS= ! /EVENT_SUBSEQUENCE_INSTANCE=0 ! /EVENT_INSTANCE=0 ! /SELECT_X= ! /SELECT_Y= ! /SELECT_Z= ! /SELECT_RESIDUAL= ! /START_AT_EVENT= ! /END_AT_EVENT= ; | === Version 4 === |{{:Eventglobalminmaxdlg.gif}}| Event_Global_Minimum /Signal_Types= The type of signal to be evaluated /Signal_Names= The names of the signals to be evaluated /Signal_Folder= The name of the signal folder /Event_Name= The name to be given to the threshold event /Select_X= (True or False)Use this component of the signal /Select_Y= (True or False)Use this component of the signal /Select_Z= (True or False)Use this component of the signal /Radius= The range of frames of data that must be below the minimum /Start_At_Event= The search begins from the start event /End_At_Event= The search ends at the end event ; |