====== 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|}} ====Examples==== The following example will go through the use of the **Event_Global_Maximum** 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.\\ === Alternate Example: Finding Value at Event === This command can be used to find the **lowest vertical GRF during swing phase** of the left leg and convert that to a metric. Event_Global_Minimum /RESULT_EVENT_NAME=LeftMinGRF /SIGNAL_TYPES=ANALOG /SIGNAL_FOLDER=ORIGINAL /SIGNAL_NAME=F2Y /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 convert the signal value at this event to a usable number: Metric_Signal_Value_At_Event ! /SIGNAL_FOLDER= ! /SIGNAL_LABEL= /EVENT_NAME=LeftMinGRF /RESULT_METRIC_NAME=MinGRF_Left_Swing ; ---- ====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 ; |