private static void SetValidAircraftData(AircraftData data) { var random = new Random(21); data.WingSurfaceArea = random.NextDouble(); data.AspectRatio = random.NextDouble(); data.OswaldFactor = random.NextDouble(); data.MaximumLiftCoefficient = random.NextDouble(); data.LiftCoefficientGradient = random.NextDouble(); data.ZeroLiftAngleOfAttack = random.NextAngle(); data.RestDragCoefficient = random.NextDouble(); data.RestDragCoefficientWithEngineFailure = random.NextDouble(); data.MaximumPitchAngle = random.NextAngle(); data.PitchGradient = random.NextAngle(); data.RollResistanceCoefficient = random.NextDouble(); data.RollResistanceWithBrakesCoefficient = random.NextDouble(); data.TakeOffWeight = random.NextDouble(); }
/// <summary> /// Creates an <see cref="KernelAircraftData"/> based on its input arguments. /// </summary> /// <param name="aircraftData">The <see cref="Data.AircraftData"/> to create an /// <see cref="KernelAircraftData"/> for.</param> /// <param name="engineData">The <see cref="EngineData"/> to create the <see cref="KernelAircraftData"/> /// for.</param> /// <returns>An <see cref="KernelAircraftData"/>.</returns> /// <exception cref="ArgumentNullException">Thrown when any argument is <c>null</c>.</exception> /// <exception cref="CreateKernelDataException">Thrown when the <see cref="KernelAircraftData"/> /// could not be created.</exception> public static KernelAircraftData Create(AircraftData aircraftData, EngineData engineData) { if (engineData == null) { throw new ArgumentNullException(nameof(engineData)); } AerodynamicsData aerodynamicsData = AerodynamicsDataFactory.Create(aircraftData); try { return(new KernelAircraftData(engineData.NrOfEngines, engineData.ThrustPerEngine, aircraftData.TakeOffWeight, aircraftData.PitchGradient, aircraftData.MaximumPitchAngle, aircraftData.RollResistanceCoefficient, aircraftData.RollResistanceWithBrakesCoefficient, aerodynamicsData)); } catch (ArgumentException e) { throw new CreateKernelDataException(e.Message, e); } }