/// <summary>
        /// This is a static method inserts an object to the List of LoadCases.
        /// </summary>
        /// <param name="index">Index of the Load Case. Basically this is the number of Load Case Items created minus 1</param>
        /// <param name="_loadCaseGUI">Object of the corresponding <c>LoadCaseGUI</c> Class</param>
        /// <param name="_loadCaseName">Name of the Load Case. To be decided based on whether custom or prediefined Load Case is used. </param>
        public static void CreateLoadCase(int index, LoadCaseGUI _loadCaseGUI, string _loadCaseName)
        {
            List_LoadCases.Insert(index, new LoadCase(_loadCaseGUI));

            if (List_LoadCases[index].CustomLoadCase)
            {
                List_LoadCases[index].LoadCaseName = "Custom Load Case - #" + Convert.ToString(index + 1);
            }
            else
            {
                List_LoadCases[index].LoadCaseName = _loadCaseName + " - #" + Convert.ToString(index + 1);
            }

            List_LoadCases[index].LoadCaseID = index + 1;
        }
        /// <summary>
        /// Overloaded Constructor used to initialise the Data Tables
        /// </summary>
        /// <param name="_loadCaseGUI">Object of the LoadCaseGUI Class</param>
        public LoadCase(LoadCaseGUI _loadCaseGUI)
        {
            #region Data Table Initialization

            NSM_FL_DataTable        = _loadCaseGUI.NSM_FL_DataTableGUI;
            NSM_FR_DataTable        = _loadCaseGUI.NSM_FR_DataTableGUI;
            NSM_RL_DataTable        = _loadCaseGUI.NSM_RL_DataTableGUI;
            NSM_RR_DataTable        = _loadCaseGUI.NSM_RR_DataTableGUI;
            SuspendedMass_DataTable = _loadCaseGUI.SuspendedMass_DataTableGUI;
            FL_Bearing_DataTable    = _loadCaseGUI.FL_Bearing_DataTable_GUI;
            FR_Bearing_DataTable    = _loadCaseGUI.FR_Bearing_DataTable_GUI;
            RL_Bearing_DataTable    = _loadCaseGUI.RL_Bearing_DataTable_GUI;
            RR_Bearing_DataTable    = _loadCaseGUI.RR_Bearing_DataTable_GUI;

            #endregion

            #region Parameter Initialization

            UpdateLoadCase(_loadCaseGUI);

            #endregion
        }
        public void UpdateLoadCase(LoadCaseGUI _loadCaseGUI)
        {
            #region Parameter Initialization
            NSM_FL_Ay = _loadCaseGUI.NSM_FL_Az_GUI;
            NSM_FR_Ay = _loadCaseGUI.NSM_FR_Az_GUI;
            NSM_RL_Ay = _loadCaseGUI.NSM_RL_Az_GUI;
            NSM_RR_Ay = _loadCaseGUI.NSM_RR_Az_GUI;

            NSM_FL_Ax = _loadCaseGUI.NSM_FL_Ay_GUI;
            NSM_FR_Ax = _loadCaseGUI.NSM_FR_Ay_GUI;
            NSM_RL_Ax = _loadCaseGUI.NSM_RL_Ay_GUI;
            NSM_RR_Ax = _loadCaseGUI.NSM_RR_Ay_GUI;

            NSM_FL_Az = _loadCaseGUI.NSM_FL_Ax_GUI;
            NSM_FR_Az = _loadCaseGUI.NSM_FR_Ax_GUI;
            NSM_RL_Az = _loadCaseGUI.NSM_RL_Ax_GUI;
            NSM_RR_Az = _loadCaseGUI.NSM_RR_Ax_GUI;

            NSM_FL_LatGripDistribution = _loadCaseGUI.NSM_FL_LatGripDistribution_GUI;
            NSM_FR_LatGripDistribution = _loadCaseGUI.NSM_FR_LatGripDistribution_GUI;
            NSM_RL_LatGripDistribution = _loadCaseGUI.NSM_RL_LatGripDistribution_GUI;
            NSM_RR_LatGripDistribution = _loadCaseGUI.NSM_RR_LatGripDistribution_GUI;


            NSM_FL_LongGripDistribution = _loadCaseGUI.NSM_FL_LongGripDistribution_GUI;
            NSM_FR_LongGripDistribution = _loadCaseGUI.NSM_FR_LongGripDistribution_GUI;
            NSM_RL_LongGripDistribution = _loadCaseGUI.NSM_RL_LongGripDistribution_GUI;
            NSM_RR_LongGripDistribution = _loadCaseGUI.NSM_RR_LongGripDistribution_GUI;

            ///<remarks>
            /// Not changing the order over here because The coordinate system of the moments have been taken care of in the <c>DoubleWishboneKinematicSolver</c> CLass
            /// </remarks>
            NSM_FL_Mx = _loadCaseGUI.NSM_FL_Mx_GUI;
            NSM_FR_Mx = _loadCaseGUI.NSM_FR_Mx_GUI;
            NSM_RL_Mx = _loadCaseGUI.NSM_RL_Mx_GUI;
            NSM_RR_Mx = _loadCaseGUI.NSM_RR_Mx_GUI;

            NSM_FL_Mz = _loadCaseGUI.NSM_FL_Mz_GUI;
            NSM_FR_Mz = _loadCaseGUI.NSM_FR_Mz_GUI;
            NSM_RL_Mz = _loadCaseGUI.NSM_RL_Mz_GUI;
            NSM_RR_Mz = _loadCaseGUI.NSM_RR_Mz_GUI;

            SM_Ax = _loadCaseGUI.SM_Ay_GUI;
            SM_Ay = _loadCaseGUI.SM_Az_GUI;
            SM_Az = _loadCaseGUI.SM_Ax_GUI;

            #region Front Left Bearing Attachment points
            FL_BearingCoordinates[0, 0] = _loadCaseGUI.FL_BearingCoordinates_GUI[1, 0];
            FL_BearingCoordinates[1, 0] = _loadCaseGUI.FL_BearingCoordinates_GUI[2, 0];
            FL_BearingCoordinates[2, 0] = _loadCaseGUI.FL_BearingCoordinates_GUI[0, 0];

            FL_BearingCoordinates[0, 1] = _loadCaseGUI.FL_BearingCoordinates_GUI[1, 1];
            FL_BearingCoordinates[1, 1] = _loadCaseGUI.FL_BearingCoordinates_GUI[2, 1];
            FL_BearingCoordinates[2, 1] = _loadCaseGUI.FL_BearingCoordinates_GUI[0, 1];

            FL_BearingCoordinates[0, 2] = _loadCaseGUI.FL_BearingCoordinates_GUI[1, 2];
            FL_BearingCoordinates[1, 2] = _loadCaseGUI.FL_BearingCoordinates_GUI[2, 2];
            FL_BearingCoordinates[2, 2] = _loadCaseGUI.FL_BearingCoordinates_GUI[0, 2];

            FL_BearingCoordinates[0, 3] = _loadCaseGUI.FL_BearingCoordinates_GUI[1, 3];
            FL_BearingCoordinates[1, 3] = _loadCaseGUI.FL_BearingCoordinates_GUI[2, 3];
            FL_BearingCoordinates[2, 3] = _loadCaseGUI.FL_BearingCoordinates_GUI[0, 3];
            #endregion

            #region Front Right Bearing Attachment points
            FR_BearingCoordinates[0, 0] = _loadCaseGUI.FR_BearingCoordinates_GUI[1, 0];
            FR_BearingCoordinates[1, 0] = _loadCaseGUI.FR_BearingCoordinates_GUI[2, 0];
            FR_BearingCoordinates[2, 0] = _loadCaseGUI.FR_BearingCoordinates_GUI[0, 0];

            FR_BearingCoordinates[0, 1] = _loadCaseGUI.FR_BearingCoordinates_GUI[1, 1];
            FR_BearingCoordinates[1, 1] = _loadCaseGUI.FR_BearingCoordinates_GUI[2, 1];
            FR_BearingCoordinates[2, 1] = _loadCaseGUI.FR_BearingCoordinates_GUI[0, 1];

            FR_BearingCoordinates[0, 2] = _loadCaseGUI.FR_BearingCoordinates_GUI[1, 2];
            FR_BearingCoordinates[1, 2] = _loadCaseGUI.FR_BearingCoordinates_GUI[2, 2];
            FR_BearingCoordinates[2, 2] = _loadCaseGUI.FR_BearingCoordinates_GUI[0, 2];

            FR_BearingCoordinates[0, 3] = _loadCaseGUI.FR_BearingCoordinates_GUI[1, 3];
            FR_BearingCoordinates[1, 3] = _loadCaseGUI.FR_BearingCoordinates_GUI[2, 3];
            FR_BearingCoordinates[2, 3] = _loadCaseGUI.FR_BearingCoordinates_GUI[0, 3];
            #endregion

            #region Rear Left Bearing Attachment points
            RL_BearingCoordinates[0, 0] = _loadCaseGUI.RL_BearingCoordinates_GUI[1, 0];
            RL_BearingCoordinates[1, 0] = _loadCaseGUI.RL_BearingCoordinates_GUI[2, 0];
            RL_BearingCoordinates[2, 0] = _loadCaseGUI.RL_BearingCoordinates_GUI[0, 0];

            RL_BearingCoordinates[0, 1] = _loadCaseGUI.RL_BearingCoordinates_GUI[1, 1];
            RL_BearingCoordinates[1, 1] = _loadCaseGUI.RL_BearingCoordinates_GUI[2, 1];
            RL_BearingCoordinates[2, 1] = _loadCaseGUI.RL_BearingCoordinates_GUI[0, 1];
            #endregion

            #region Rear Right Bearing Attachment points
            RR_BearingCoordinates[0, 0] = _loadCaseGUI.RR_BearingCoordinates_GUI[1, 0];
            RR_BearingCoordinates[1, 0] = _loadCaseGUI.RR_BearingCoordinates_GUI[2, 0];
            RR_BearingCoordinates[2, 0] = _loadCaseGUI.RR_BearingCoordinates_GUI[0, 0];

            RR_BearingCoordinates[0, 1] = _loadCaseGUI.RR_BearingCoordinates_GUI[1, 1];
            RR_BearingCoordinates[1, 1] = _loadCaseGUI.RR_BearingCoordinates_GUI[2, 1];
            RR_BearingCoordinates[2, 1] = _loadCaseGUI.RR_BearingCoordinates_GUI[0, 1];
            #endregion

            #region Steering Column Bearing Attachment Points
            SteeringColumnBearing[0, 0] = _loadCaseGUI.SteeringColumnBearing_GUI[1, 0];
            SteeringColumnBearing[1, 0] = _loadCaseGUI.SteeringColumnBearing_GUI[2, 0];
            SteeringColumnBearing[2, 0] = _loadCaseGUI.SteeringColumnBearing_GUI[0, 0];

            SteeringColumnBearing[0, 1] = _loadCaseGUI.SteeringColumnBearing_GUI[1, 1];
            SteeringColumnBearing[1, 1] = _loadCaseGUI.SteeringColumnBearing_GUI[2, 1];
            SteeringColumnBearing[2, 1] = _loadCaseGUI.SteeringColumnBearing_GUI[0, 1];
            #endregion

            #endregion
        }