public void SimulationRange()
        {
            if (SimulationParmeters.StepError < 1)
            {
                return;
            }

            var parameters = new SimualtionGOMS.Parameters(
                keyboard: SimulationParmeters.Keyboard,
                handMoving: SimulationParmeters.HandMoving,
                menthal: SimulationParmeters.Menthal,
                positioning: SimulationParmeters.Positioning);

            var(outerNodes, mapping) = ConvertOuterNodes(OuterNodes, NodeMappings);
            var stepError = (SimulationParmeters.MaxError - SimulationParmeters.MinError) / SimulationParmeters.StepError;

            TimeErrorPairs.Clear();

            for (int i = 0; i <= SimulationParmeters.StepError; i++)
            {
                var errorPropability = SimulationParmeters.MinError + i * stepError;
                var result           = SimualtionGOMS.SimulationGOMS.Simulate(parameters, outerNodes, mapping, errorPropability);
                var tePair           = new TimeFromErrorPair {
                    Error = errorPropability, Time = result
                };
                TimeErrorPairs.Add(tePair);
            }
        }
        public double Simulation(double errorPropability)
        {
            var parameters = new SimualtionGOMS.Parameters(
                keyboard: SimulationParmeters.Keyboard,
                handMoving: SimulationParmeters.HandMoving,
                menthal: SimulationParmeters.Menthal,
                positioning: SimulationParmeters.Positioning);

            var(outerNodes, mapping) = ConvertOuterNodes(OuterNodes, NodeMappings);

            return(SimualtionGOMS.SimulationGOMS.Simulate(parameters, outerNodes, mapping, errorPropability));
        }