Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamEngineIo/FillDamUiFromXmlInput.cs =================================================================== diff -u -r2570 -r2578 --- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamEngineIo/FillDamUiFromXmlInput.cs (.../FillDamUiFromXmlInput.cs) (revision 2570) +++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamEngineIo/FillDamUiFromXmlInput.cs (.../FillDamUiFromXmlInput.cs) (revision 2578) @@ -434,11 +434,11 @@ designScenario.PlLineOffsetFactorBelowShoulderCrest = inputLocationDesignScenario.PlLineOffsetFactorBelowShoulderCrest; designScenario.HeadPl3 = (inputLocationDesignScenario.HeadPl3Specified ? (double?)inputLocationDesignScenario.HeadPl3 : null); designScenario.HeadPl4 = (inputLocationDesignScenario.HeadPl4Specified ? (double?)inputLocationDesignScenario.HeadPl4 : null); - designScenario.UpliftCriterionStability = (inputLocationDesignScenario.UpliftCriterionStabilitySpecified ? (double?)inputLocationDesignScenario.UpliftCriterionStability : null); - designScenario.UpliftCriterionPiping = (inputLocationDesignScenario.UpliftCriterionPipingSpecified ? (double?)inputLocationDesignScenario.UpliftCriterionPiping : null); - designScenario.RequiredSafetyFactorStabilityInnerSlope = (inputLocationDesignScenario.RequiredSafetyFactorStabilityInnerSlopeSpecified ? (double?)inputLocationDesignScenario.RequiredSafetyFactorStabilityInnerSlope : null); - designScenario.RequiredSafetyFactorStabilityOuterSlope = (inputLocationDesignScenario.RequiredSafetyFactorStabilityOuterSlopeSpecified ? (double?)inputLocationDesignScenario.RequiredSafetyFactorStabilityOuterSlope : null); - designScenario.RequiredSafetyFactorPiping = (inputLocationDesignScenario.RequiredSafetyFactorPipingSpecified ? (double?)inputLocationDesignScenario.RequiredSafetyFactorPiping : null); + designScenario.UpliftCriterionStability = inputLocationDesignScenario.UpliftCriterionStability; + designScenario.UpliftCriterionPiping = inputLocationDesignScenario.UpliftCriterionPiping; + designScenario.RequiredSafetyFactorStabilityInnerSlope = inputLocationDesignScenario.RequiredSafetyFactorStabilityInnerSlope; + designScenario.RequiredSafetyFactorStabilityOuterSlope = inputLocationDesignScenario.RequiredSafetyFactorStabilityOuterSlope; + designScenario.RequiredSafetyFactorPiping = inputLocationDesignScenario.RequiredSafetyFactorPiping; location.Scenarios.Add(designScenario); } Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamEngineIo/FillXmlInputFromDamUi.cs =================================================================== diff -u -r2572 -r2578 --- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamEngineIo/FillXmlInputFromDamUi.cs (.../FillXmlInputFromDamUi.cs) (revision 2572) +++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamEngineIo/FillXmlInputFromDamUi.cs (.../FillXmlInputFromDamUi.cs) (revision 2578) @@ -603,16 +603,11 @@ inputDesignScenario.HeadPl3 = designScenario.HeadPl3 ?? 0.0; inputDesignScenario.HeadPl4Specified = designScenario.HeadPl4.HasValue; inputDesignScenario.HeadPl4 = designScenario.HeadPl4 ?? 0.0; - inputDesignScenario.UpliftCriterionStabilitySpecified = designScenario.UpliftCriterionStability.HasValue; - inputDesignScenario.UpliftCriterionStability = designScenario.UpliftCriterionStability ?? 0.0; - inputDesignScenario.UpliftCriterionPipingSpecified = designScenario.UpliftCriterionPiping.HasValue; - inputDesignScenario.UpliftCriterionPiping = designScenario.UpliftCriterionPiping ?? 0.0; - inputDesignScenario.RequiredSafetyFactorStabilityInnerSlopeSpecified = designScenario.RequiredSafetyFactorStabilityInnerSlope.HasValue; - inputDesignScenario.RequiredSafetyFactorStabilityInnerSlope = designScenario.RequiredSafetyFactorStabilityInnerSlope ?? 0.0; - inputDesignScenario.RequiredSafetyFactorStabilityOuterSlopeSpecified = designScenario.RequiredSafetyFactorStabilityOuterSlope.HasValue; - inputDesignScenario.RequiredSafetyFactorStabilityOuterSlope = designScenario.RequiredSafetyFactorStabilityOuterSlope ?? 0.0; - inputDesignScenario.RequiredSafetyFactorPipingSpecified = designScenario.RequiredSafetyFactorPiping.HasValue; - inputDesignScenario.RequiredSafetyFactorPiping = designScenario.RequiredSafetyFactorPiping ?? 0.0; + inputDesignScenario.UpliftCriterionStability = designScenario.UpliftCriterionStability; + inputDesignScenario.UpliftCriterionPiping = designScenario.UpliftCriterionPiping; + inputDesignScenario.RequiredSafetyFactorStabilityInnerSlope = designScenario.RequiredSafetyFactorStabilityInnerSlope; + inputDesignScenario.RequiredSafetyFactorStabilityOuterSlope = designScenario.RequiredSafetyFactorStabilityOuterSlope; + inputDesignScenario.RequiredSafetyFactorPiping = designScenario.RequiredSafetyFactorPiping; inputLocation.DesignScenarios[j] = inputDesignScenario; } Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/Scenario.cs =================================================================== diff -u -r2576 -r2578 --- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/Scenario.cs (.../Scenario.cs) (revision 2576) +++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/Scenario.cs (.../Scenario.cs) (revision 2578) @@ -21,7 +21,6 @@ using System.ComponentModel; using System.Globalization; -using System.Xml.Serialization; using Deltares.Standard; using Deltares.Standard.EventPublisher; using Deltares.Standard.Language; @@ -277,7 +276,7 @@ [Format("F2")] [Label("Required safety factor stability inner slope")] [Description("Required safety factor stability inner slope")] - public double? RequiredSafetyFactorStabilityInnerSlope + public double RequiredSafetyFactorStabilityInnerSlope { get { return ModelFactors.RequiredSafetyFactorStabilityInnerSlope; } set @@ -298,7 +297,7 @@ [Format("F2")] [Label("Required safety factor stability outer slope")] [Description("Required safety factor stability outer slope")] - public double? RequiredSafetyFactorStabilityOuterSlope + public double RequiredSafetyFactorStabilityOuterSlope { get { return ModelFactors.RequiredSafetyFactorStabilityOuterSlope; } set @@ -319,7 +318,7 @@ [Format("F2")] [Label("Required safety factor piping")] [Description("Required safety factor piping")] - public double? RequiredSafetyFactorPiping + public double RequiredSafetyFactorPiping { get { return ModelFactors.RequiredSafetyFactorPiping; } set @@ -340,7 +339,7 @@ [Format("F2")] [Label("Uplift criterion piping")] [Description("Uplift criterion piping")] - public double? UpliftCriterionPiping + public double UpliftCriterionPiping { get { return ModelFactors.UpliftCriterionPiping; } set @@ -361,7 +360,7 @@ [Format("F2")] [Label("Uplift criterion stability")] [Description("Uplift criterion stability")] - public double? UpliftCriterionStability + public double UpliftCriterionStability { get { return ModelFactors.UpliftCriterionStability; } set @@ -614,7 +613,7 @@ } return (ModelFactors.UpliftCriterionStability == null ? defaultUpliftCriterionStability.Value - : ModelFactors.UpliftCriterionStability.Value); + : ModelFactors.UpliftCriterionStability); } /// @@ -628,7 +627,7 @@ { throw new ScenarioException(String.Format(LocalizationManager.GetTranslatedText(this, "NoUpliftCriterionForPiping"), Location.Name, ToString())); } - return (ModelFactors.UpliftCriterionPiping == null ? defaultUpliftCriterionPiping.Value : ModelFactors.UpliftCriterionPiping.Value); + return (ModelFactors.UpliftCriterionPiping == null ? defaultUpliftCriterionPiping.Value : ModelFactors.UpliftCriterionPiping); } /// @@ -642,7 +641,7 @@ { throw new ScenarioException(String.Format(LocalizationManager.GetTranslatedText(this, "NoRequiredSafetyFactorPiping"), Location.Name, ToString())); } - return (ModelFactors.RequiredSafetyFactorPiping == null ? defaultRequiredSafetyFactorPiping.Value : ModelFactors.RequiredSafetyFactorPiping.Value); + return (ModelFactors.RequiredSafetyFactorPiping == null ? defaultRequiredSafetyFactorPiping.Value : ModelFactors.RequiredSafetyFactorPiping); } /// @@ -944,10 +943,8 @@ Location.Name, LocationScenarioID, RiverLevel, RiverLevelLow.HasValue ? RiverLevelLow.Value.ToString(CultureInfo.InvariantCulture) : "?", DikeTableHeight.HasValue ? DikeTableHeight.Value.ToString(CultureInfo.InvariantCulture) : "?", - ModelFactors.RequiredSafetyFactorStabilityInnerSlope.HasValue ? - ModelFactors.RequiredSafetyFactorStabilityInnerSlope.Value.ToString(CultureInfo.InvariantCulture) : "?", - ModelFactors.RequiredSafetyFactorStabilityOuterSlope.HasValue ? - ModelFactors.RequiredSafetyFactorStabilityOuterSlope.Value.ToString(CultureInfo.InvariantCulture) : "?", + ModelFactors.RequiredSafetyFactorStabilityInnerSlope.ToString(CultureInfo.InvariantCulture), + ModelFactors.RequiredSafetyFactorStabilityOuterSlope.ToString(CultureInfo.InvariantCulture), PlLineOffsetBelowDikeTopAtRiver.ToString(CultureInfo.InvariantCulture), PlLineOffsetBelowDikeToeAtPolder.ToString(CultureInfo.InvariantCulture), PlLineOffsetBelowDikeTopAtPolder.ToString(CultureInfo.InvariantCulture), @@ -984,26 +981,11 @@ } if (ModelFactors != null) { - if (ModelFactors.RequiredSafetyFactorStabilityInnerSlope != null) - { - nameValuePairs.Add(ScenarioParameterNames.RequiredSafetyFactorStabilityInnerSlope, ModelFactors.RequiredSafetyFactorStabilityInnerSlope.Value.ToString(numberFormatInfo)); - } - if (ModelFactors.RequiredSafetyFactorStabilityOuterSlope != null) - { - nameValuePairs.Add(ScenarioParameterNames.RequiredSafetyFactorStabilityOuterSlope, ModelFactors.RequiredSafetyFactorStabilityOuterSlope.Value.ToString(numberFormatInfo)); - } - if (ModelFactors.RequiredSafetyFactorPiping != null) - { - nameValuePairs.Add(ScenarioParameterNames.RequiredSafetyFactorPiping, ModelFactors.RequiredSafetyFactorPiping.Value.ToString(numberFormatInfo)); - } - if (ModelFactors.UpliftCriterionPiping != null) - { - nameValuePairs.Add(ScenarioParameterNames.UpliftCriterionPiping, ModelFactors.UpliftCriterionPiping.Value.ToString(numberFormatInfo)); - } - if (ModelFactors.UpliftCriterionStability != null) - { - nameValuePairs.Add(ScenarioParameterNames.UpliftCriterionStability, ModelFactors.UpliftCriterionStability.Value.ToString(numberFormatInfo)); - } + nameValuePairs.Add(ScenarioParameterNames.RequiredSafetyFactorStabilityInnerSlope, ModelFactors.RequiredSafetyFactorStabilityInnerSlope.ToString(numberFormatInfo)); + nameValuePairs.Add(ScenarioParameterNames.RequiredSafetyFactorStabilityOuterSlope, ModelFactors.RequiredSafetyFactorStabilityOuterSlope.ToString(numberFormatInfo)); + nameValuePairs.Add(ScenarioParameterNames.RequiredSafetyFactorPiping, ModelFactors.RequiredSafetyFactorPiping.ToString(numberFormatInfo)); + nameValuePairs.Add(ScenarioParameterNames.UpliftCriterionPiping, ModelFactors.UpliftCriterionPiping.ToString(numberFormatInfo)); + nameValuePairs.Add(ScenarioParameterNames.UpliftCriterionStability, ModelFactors.UpliftCriterionStability.ToString(numberFormatInfo)); } nameValuePairs.Add(ScenarioParameterNames.PlLineOffsetBelowDikeTopAtRiver, PlLineOffsetBelowDikeTopAtRiver.ToString(numberFormatInfo)); nameValuePairs.Add(ScenarioParameterNames.PlLineOffsetBelowDikeTopAtPolder, PlLineOffsetBelowDikeTopAtPolder.ToString(numberFormatInfo)); Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/ModelFactors.cs =================================================================== diff -u -r2576 -r2578 --- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/ModelFactors.cs (.../ModelFactors.cs) (revision 2576) +++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/ModelFactors.cs (.../ModelFactors.cs) (revision 2578) @@ -25,26 +25,29 @@ { public class ModelFactors { - public virtual double? RequiredSafetyFactorStabilityInnerSlope { get; set; } - public virtual double? RequiredSafetyFactorStabilityOuterSlope { get; set; } - public virtual double? RequiredSafetyFactorPiping { get; set; } - public virtual double? UpliftCriterionPiping { get; set; } - public virtual double? UpliftCriterionStability { get; set; } + private double defaultSafetyFactorStabilityInnerSlope = 1.0; + private double defaultSafetyFactorStabilityOuterSlope = 1.0; + private double defaultSafetyFactorPiping = 1.0; + private double defaultUpliftCriterionStability = 1.2; + private double defaultUpliftCriterionPiping = 1.2; - [XmlIgnore] - public double?[] AllValues + /// + /// Constructor + /// + public ModelFactors() { - get - { - return new [] - { - RequiredSafetyFactorStabilityInnerSlope, - RequiredSafetyFactorStabilityOuterSlope, - RequiredSafetyFactorPiping, - UpliftCriterionPiping, - UpliftCriterionStability - }; - } + RequiredSafetyFactorStabilityInnerSlope = defaultSafetyFactorStabilityInnerSlope; + RequiredSafetyFactorStabilityOuterSlope = defaultSafetyFactorStabilityOuterSlope; + RequiredSafetyFactorPiping = defaultSafetyFactorPiping; + UpliftCriterionStability = defaultUpliftCriterionStability; + UpliftCriterionPiping = defaultUpliftCriterionPiping; } + + public double RequiredSafetyFactorStabilityInnerSlope { get; set; } + public double RequiredSafetyFactorStabilityOuterSlope { get; set; } + public double RequiredSafetyFactorPiping { get; set; } + public double UpliftCriterionStability { get; set; } + public double UpliftCriterionPiping { get; set; } + } }