private static void SetConfigurationStructureDependentParameters(StabilityPointStructuresCalculationConfiguration calculationConfiguration, StabilityPointStructuresInput input) { if (input.Structure == null) { return; } calculationConfiguration.AllowedLevelIncreaseStorage = input.AllowedLevelIncreaseStorage.ToStochastConfiguration(); calculationConfiguration.AreaFlowApertures = input.AreaFlowApertures.ToStochastConfiguration(); calculationConfiguration.BankWidth = input.BankWidth.ToStochastConfiguration(); calculationConfiguration.ConstructiveStrengthLinearLoadModel = input.ConstructiveStrengthLinearLoadModel.ToStochastConfiguration(); calculationConfiguration.ConstructiveStrengthQuadraticLoadModel = input.ConstructiveStrengthQuadraticLoadModel.ToStochastConfiguration(); calculationConfiguration.CriticalOvertoppingDischarge = input.CriticalOvertoppingDischarge.ToStochastConfiguration(); calculationConfiguration.EvaluationLevel = input.EvaluationLevel; calculationConfiguration.FailureCollisionEnergy = input.FailureCollisionEnergy.ToStochastConfiguration(); calculationConfiguration.FailureProbabilityRepairClosure = input.FailureProbabilityRepairClosure; calculationConfiguration.FlowVelocityStructureClosable = input.FlowVelocityStructureClosable.ToStochastConfigurationWithMean(); calculationConfiguration.FlowWidthAtBottomProtection = input.FlowWidthAtBottomProtection.ToStochastConfiguration(); if (Enum.IsDefined(typeof(StabilityPointStructureInflowModelType), input.InflowModelType)) { calculationConfiguration.InflowModelType = (ConfigurationStabilityPointStructuresInflowModelType?) new ConfigurationStabilityPointStructuresInflowModelTypeConverter().ConvertFrom(input.InflowModelType); } calculationConfiguration.InsideWaterLevel = input.InsideWaterLevel.ToStochastConfiguration(); calculationConfiguration.InsideWaterLevelFailureConstruction = input.InsideWaterLevelFailureConstruction.ToStochastConfiguration(); calculationConfiguration.LevelCrestStructure = input.LevelCrestStructure.ToStochastConfiguration(); calculationConfiguration.LevellingCount = input.LevellingCount; if (Enum.IsDefined(typeof(LoadSchematizationType), input.LoadSchematizationType)) { calculationConfiguration.LoadSchematizationType = (ConfigurationStabilityPointStructuresLoadSchematizationType?) new ConfigurationStabilityPointStructuresLoadSchematizationTypeConverter().ConvertFrom(input.LoadSchematizationType); } calculationConfiguration.ProbabilityCollisionSecondaryStructure = input.ProbabilityCollisionSecondaryStructure; calculationConfiguration.ShipMass = input.ShipMass.ToStochastConfiguration(); calculationConfiguration.ShipVelocity = input.ShipVelocity.ToStochastConfiguration(); calculationConfiguration.StabilityLinearLoadModel = input.StabilityLinearLoadModel.ToStochastConfiguration(); calculationConfiguration.StabilityQuadraticLoadModel = input.StabilityQuadraticLoadModel.ToStochastConfiguration(); calculationConfiguration.StorageStructureArea = input.StorageStructureArea.ToStochastConfiguration(); calculationConfiguration.StructureId = input.Structure.Id; calculationConfiguration.StructureNormalOrientation = input.StructureNormalOrientation; calculationConfiguration.ThresholdHeightOpenWeir = input.ThresholdHeightOpenWeir.ToStochastConfiguration(); calculationConfiguration.VerticalDistance = input.VerticalDistance; calculationConfiguration.WidthFlowApertures = input.WidthFlowApertures.ToStochastConfiguration(); }
protected override StabilityPointStructuresCalculationConfiguration ToConfiguration(StructuresCalculationScenario <StabilityPointStructuresInput> calculation) { StabilityPointStructuresInput input = calculation.InputParameters; var calculationConfiguration = new StabilityPointStructuresCalculationConfiguration(calculation.Name) { DrainCoefficient = input.DrainCoefficient.ToStochastConfiguration(), FactorStormDurationOpenStructure = input.FactorStormDurationOpenStructure, FailureProbabilityStructureWithErosion = input.FailureProbabilityStructureWithErosion, HydraulicBoundaryLocationName = input.HydraulicBoundaryLocation?.Name, VolumicWeightWater = input.VolumicWeightWater, StormDuration = input.StormDuration.ToStochastConfigurationWithMean(), ShouldIllustrationPointsBeCalculated = input.ShouldIllustrationPointsBeCalculated, Scenario = calculation.ToScenarioConfiguration() }; SetConfigurationStructureDependentParameters(calculationConfiguration, input); calculationConfiguration.SetConfigurationForeshoreProfileDependentProperties(input); return(calculationConfiguration); }