Index: DamClients/DamUI/trunk/src/Dam/Tests/Sensors/SensorLocationTests.cs =================================================================== diff -u -r1664 -r2422 --- DamClients/DamUI/trunk/src/Dam/Tests/Sensors/SensorLocationTests.cs (.../SensorLocationTests.cs) (revision 1664) +++ DamClients/DamUI/trunk/src/Dam/Tests/Sensors/SensorLocationTests.cs (.../SensorLocationTests.cs) (revision 2422) @@ -786,8 +786,8 @@ var sensorValues = new Dictionary { { sensor, testValue } }; var sensorLocation = CreateValidSensorLocation(); - location.RiverLevel = testValue; - Assert.AreEqual(testValue, location.RiverLevel); + location.WaterHeight = testValue; + Assert.AreEqual(testValue, location.WaterHeight); sensorLocation.SourceTypePl1WaterLevelAtRiver = DataSourceTypeSensors.LocationData; Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/Importers/LocationShapeFileAttributeMap.cs =================================================================== diff -u -r2195 -r2422 --- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/Importers/LocationShapeFileAttributeMap.cs (.../LocationShapeFileAttributeMap.cs) (revision 2195) +++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/Importers/LocationShapeFileAttributeMap.cs (.../LocationShapeFileAttributeMap.cs) (revision 2422) @@ -654,8 +654,53 @@ /// NewSlopeAngleDitch /// double /// - public const string NewSlopeAngleDitchAttributeId = LocationCsvColumnNames.NewSlopeAngleDitchColumnName; + public const string NewSlopeAngleDitchAttributeId = LocationCsvColumnNames.NewSlopeAngleDitchColumnName; + /// + /// DikeTableHeight + /// CustomShape + /// DikeTableHeight.shp + /// DikeTableHeight + /// double + /// + public const string DikeTableHeightAttributeId = LocationCsvColumnNames.DikeTableHeightColumnName; + + /// + /// water_height + /// CustomShape + /// WaterHeight.shp + /// WaterHeight + /// double + /// + public const string WaterHeightAttributeId = LocationCsvColumnNames.WaterHeightColumnName; + + /// + /// water_height_low + /// CustomShape + /// WaterHeightLow.shp + /// WaterHeightLow + /// double + /// + public const string WaterHeightLowAttributeId = LocationCsvColumnNames.WaterHeightLowColumnName; + + /// + /// water_height_decimerings_hoogte + /// CustomShape + /// WaterHeightDecimeringsHoogte.shp + /// WaterHeightDecimeringsHoogte + /// double + /// + public const string WaterHeightDecimeringsHoogteAttributeId = LocationCsvColumnNames.WaterHeightDecimeringsHoogteColumnName; + + /// + /// max_waterheight + /// CustomShape + /// MaxWaterHeight.shp + /// MaxWaterHeight + /// double + /// + public const string MaxWaterHeightAttributeId = LocationCsvColumnNames.MaxWaterHeightColumnName; + #endregion internal static readonly IDictionary AttributePropertyMap; @@ -726,7 +771,12 @@ createItem(UseOriginalPlLineAssignmentsAttributeId, "use_original_plline_assignments.shp", "IsOrgPLs", (t, value) => t.IsUseOriginalPLLineAssignments = value.ToType()), createItem(XSoilGeometry2DOriginAttributeId, "XSoilGeometry2DOrigin.shp", "XG2DOrg", (t, value) => t.XSoilGeometry2DOrigin = value.ToType()), createItem(SlopeDampingPiezometricHeightPolderSideAttributeId, "SlopeDampingPiezometricHeightPolderSide.shp", "SlopeDampingPiezometricHeightPolderSide", (t, value) => t.SlopeDampingPiezometricHeightPolderSide = value.ToType() ), - + createItem(DikeTableHeightAttributeId, "DikeTableHeight.shp", "DikeTableHeight", (t, value) => t.DikeTableHeight = value.ToType() ), + createItem(WaterHeightAttributeId, "WaterHeight.shp", "WaterHeight", (t, value) => t.WaterHeight = value.ToType() ), + createItem(WaterHeightLowAttributeId, "WaterHeightLow.shp", "WaterHeightLow", (t, value) => t.WaterHeightLow = value.ToType() ), + createItem(WaterHeightDecimeringsHoogteAttributeId, "WaterHeightDecimeringsHoogte.shp", "WaterHeightDecimeringsHoogte", (t, value) => t.WaterHeightDecimeringsHoogte = value.ToType() ), + createItem(MaxWaterHeightAttributeId, "MaxWaterHeight.shp", "MaxWaterHeight", (t, value) => t.MaxWaterHeight = value.ToType() ), + createItem(StabilityDesignMethodAttributeId, "DesignParameters.shp", "StabilityDesignMethod", (t, value) => t.StabilityDesignMethod = LocationImportHelper.ToStabilityDesignMethod(value) ), createItem(SlopeAdaptionStartCotangentAttributeId, "DesignParameters.shp", "SlopeAdaptionStartCotangent", (t, value) => t.SlopeAdaptionStartCotangent = value.ToType() ), createItem(SlopeAdaptionEndCotangentAttributeId, "DesignParameters.shp", "SlopeAdaptionEndCotangent", (t, value) => t.SlopeAdaptionEndCotangent = value.ToType() ), Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/CsvImporters/CsvImporterLocations.cs =================================================================== diff -u -r2190 -r2422 --- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/CsvImporters/CsvImporterLocations.cs (.../CsvImporterLocations.cs) (revision 2190) +++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/CsvImporters/CsvImporterLocations.cs (.../CsvImporterLocations.cs) (revision 2422) @@ -117,6 +117,11 @@ public double? NewWidthDitchBottom { get; set; } public double? NewSlopeAngleDitch { get; set; } public double? NewDepthDitch { get; set; } + public double? DikeTableHeight { get; set; } + public double? WaterHeight { get; set; } + public double? WaterHeightLow { get; set; } + public double? WaterHeightDecimeringsHoogte { get; set; } + public double? MaxWaterHeight { get; set; } } public CsvImporterLocations(string fileName) @@ -214,7 +219,12 @@ int colIndexNewWidthDitchBottom = CsvReaderUtilities.GetHeaderIndexByString(headers, LocationCsvColumnNames.NewWidthDitchBottomColumnName); int colIndexNewSlopeAngleDitch = CsvReaderUtilities.GetHeaderIndexByString(headers, LocationCsvColumnNames.NewSlopeAngleDitchColumnName); int colIndexNewDepthDitch = CsvReaderUtilities.GetHeaderIndexByString(headers, LocationCsvColumnNames.NewDepthDitchColumnName); - + int colIndexDikeTableHeight = CsvReaderUtilities.GetHeaderIndexByString(headers, LocationCsvColumnNames.DikeTableHeightColumnName); + int colIndexWaterHeight = CsvReaderUtilities.GetHeaderIndexByString(headers, LocationCsvColumnNames.WaterHeightColumnName); + int colIndexWaterHeightLow = CsvReaderUtilities.GetHeaderIndexByString(headers, LocationCsvColumnNames.WaterHeightLowColumnName); + int colIndexWaterHeightDecimeringsHoogte = CsvReaderUtilities.GetHeaderIndexByString(headers, LocationCsvColumnNames.WaterHeightDecimeringsHoogteColumnName); + int colIndexMaxWaterHeight = CsvReaderUtilities.GetHeaderIndexByString(headers, LocationCsvColumnNames.MaxWaterHeightColumnName); + var index = 1; while (csv.ReadNextRecord()) { @@ -594,6 +604,31 @@ colIndex = colIndexUseNewDitchDefinition; locationRecord.UseNewDitchDefinition = Convert.ToBoolean(csv[colIndexUseNewDitchDefinition]); } + if (colIndexDikeTableHeight > -1) + { + colIndex = colIndexDikeTableHeight; + locationRecord.DikeTableHeight = Convert.ToDouble(csv[colIndexDikeTableHeight]); + } + if (colIndexWaterHeight > -1) + { + colIndex = colIndexWaterHeight; + locationRecord.WaterHeight = Convert.ToDouble(csv[colIndexWaterHeight]); + } + if (colIndexWaterHeightLow > -1) + { + colIndex = colIndexWaterHeightLow; + locationRecord.WaterHeightLow = Convert.ToDouble(csv[colIndexWaterHeightLow]); + } + if (colIndexWaterHeightDecimeringsHoogte > -1) + { + colIndex = colIndexWaterHeightDecimeringsHoogte; + locationRecord.WaterHeightDecimeringsHoogte = Convert.ToDouble(csv[colIndexWaterHeightDecimeringsHoogte]); + } + if (colIndexMaxWaterHeight > -1) + { + colIndex = colIndexMaxWaterHeight; + locationRecord.MaxWaterHeight = Convert.ToDouble(csv[colIndexMaxWaterHeight]); + } locationRecords.Add(locationRecord); } catch (Exception e) Index: DamClients/DamUI/trunk/src/Dam/Tests/TestData/CSVData/Full1DProject/csvfiles/locations.csv =================================================================== diff -u -r2190 -r2422 --- DamClients/DamUI/trunk/src/Dam/Tests/TestData/CSVData/Full1DProject/csvfiles/locations.csv (.../locations.csv) (revision 2190) +++ DamClients/DamUI/trunk/src/Dam/Tests/TestData/CSVData/Full1DProject/csvfiles/locations.csv (.../locations.csv) (revision 2422) @@ -1,3 +1,3 @@ -location_id;surfaceline_id;segment_id;geo_x;geo_y;x_soilgeometry2D_origin;Pl1_id;polderlevel;polderlevellow;head_pl2;head_pl3;head_pl4;Grass_quality;Direction;Ophoogmateriaaldijk;Ophoogmateriaalberm;Sheetpile_x;Sheetpile_y;Sheetpile_z;Sheetpile_length;use_original_plline_assignments;PenetrationLength;TrafficLoad;minimal_circle_depth;dempingsfactor_pl3;dempingsfactor_pl4;PLLineCreationMethod;level_reduction_inside;level_reduction_outside;layer_height_distribution;layer_height_deviation;safety_factor_piping;safety_factor_stability_inner_slope;safety_factor_stability_outer_slope;probability_of_failure_stability_innerslope;probability_of_failure_stability_outerslope;probability_of_failure_piping;uplift_criterion_piping;uplift_criterion_stability;Materiaaltypedijk;bp_tp;bp_hbp;bp_lbp;Baggerdiepte;distance_to_entry_point;PLLineOffsetBelowDikeTopAtRiver;PLLineOffsetBelowDikeTopAtPolder;PLLineOffsetBelowShoulderBaseInside;PLLineOffsetBelowDikeToeAtPolder;PLLineOffsetDryBelowDikeTopAtRiver;PLLineOffsetDryBelowDikeTopAtPolder;PLLineOffsetDryBelowShoulderBaseInside;PLLineOffsetDryBelowDikeToeAtPolder;StabilityShoulderGrowSlope;StabilityShoulderGrowDeltaX;StabilitySlopeAdaptionDeltaX;detrimentfactor;DikeTableHeight;TL_DegreeOfConsolidation -16-1-1-C-3-Z;16-1-1-C-3-Z;1043;124330;441312;1;16-1-1-C-3-Z;0,9;0,2;13,056;0,9;0,8;1;1;klei;klei2;1;2;3;12;TRUE;1,3;10;1,5;0,30;0,40;ExpertKnowledgeRRD;1;2;Uniform;0,1;1,2;1,3;1,4;0,01;0,02;0,03;1,1;1,2;klei;1,0;1,1;1,2;2,0;2,1;0,5;0,6;0,1;0,2;0,6;1,6;0,2;0,3;2,0;0,2;0,5;0,9;3,5;10,12 -25-2-2-A-1-A;25-2-2-A-1-A;106;66586;424173;2;25-2-2-A-1-A;-0,25;-0,25;0,8727;-0,25;-0,25;1;1;klei;klei2;1;2;3;12;FALSE;1,3;10;1,5;0,30;0,40;ExpertKnowledgeRRD;1;2;Uniform;0,1;1,2;1,3;1,4;0,01;0,02;0,03;1,1;1,2;klei;1,0;1,1;1,2;2,0;2,1;0,5;0,6;0,1;0,2;0,6;1,6;0,2;0,3;2,0;0,2;0,5;0,9;3,5;22,44 +location_id;surfaceline_id;segment_id;geo_x;geo_y;x_soilgeometry2D_origin;Pl1_id;polderlevel;polderlevellow;head_pl2;head_pl3;head_pl4;Grass_quality;Direction;Ophoogmateriaaldijk;Ophoogmateriaalberm;Sheetpile_x;Sheetpile_y;Sheetpile_z;Sheetpile_length;use_original_plline_assignments;PenetrationLength;TrafficLoad;minimal_circle_depth;dempingsfactor_pl3;dempingsfactor_pl4;PLLineCreationMethod;level_reduction_inside;level_reduction_outside;layer_height_distribution;layer_height_deviation;safety_factor_piping;safety_factor_stability_inner_slope;safety_factor_stability_outer_slope;probability_of_failure_stability_innerslope;probability_of_failure_stability_outerslope;probability_of_failure_piping;uplift_criterion_piping;uplift_criterion_stability;Materiaaltypedijk;bp_tp;bp_hbp;bp_lbp;Baggerdiepte;distance_to_entry_point;PLLineOffsetBelowDikeTopAtRiver;PLLineOffsetBelowDikeTopAtPolder;PLLineOffsetBelowShoulderBaseInside;PLLineOffsetBelowDikeToeAtPolder;PLLineOffsetDryBelowDikeTopAtRiver;PLLineOffsetDryBelowDikeTopAtPolder;PLLineOffsetDryBelowShoulderBaseInside;PLLineOffsetDryBelowDikeToeAtPolder;StabilityShoulderGrowSlope;StabilityShoulderGrowDeltaX;StabilitySlopeAdaptionDeltaX;detrimentfactor;DikeTableHeight;TL_DegreeOfConsolidation;water_height;water_height_low;water_height_decimerings_hoogte;max_waterheight +16-1-1-C-3-Z;16-1-1-C-3-Z;1043;124330;441312;1;16-1-1-C-3-Z;0,9;0,2;13,056;0,9;0,8;1;1;klei;klei2;1;2;3;12;TRUE;1,3;10;1,5;0,30;0,40;ExpertKnowledgeRRD;1;2;Uniform;0,1;1,2;1,3;1,4;0,01;0,02;0,03;1,1;1,2;klei;1,0;1,1;1,2;2,0;2,1;0,5;0,6;0,1;0,2;0,6;1,6;0,2;0,3;2,0;0,2;0,5;0,9;3,5;10,12;3,6;3,7;3,8;3,9 +25-2-2-A-1-A;25-2-2-A-1-A;106;66586;424173;2;25-2-2-A-1-A;-0,25;-0,25;0,8727;-0,25;-0,25;1;1;klei;klei2;1;2;3;12;FALSE;1,3;10;1,5;0,30;0,40;ExpertKnowledgeRRD;1;2;Uniform;0,1;1,2;1,3;1,4;0,01;0,02;0,03;1,1;1,2;klei;1,0;1,1;1,2;2,0;2,1;0,5;0,6;0,1;0,2;0,6;1,6;0,2;0,3;2,0;0,2;0,5;0,9;3,5;22,44;3,6;3,7;3,8;3,9 Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/EntityFactory.cs =================================================================== diff -u -r2233 -r2422 --- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/EntityFactory.cs (.../EntityFactory.cs) (revision 2233) +++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/EntityFactory.cs (.../EntityFactory.cs) (revision 2422) @@ -340,6 +340,11 @@ location1.ModelFactors.RequiredSafetyFactorStabilityOuterSlope = 1.13; location1.ModelFactors.UpliftCriterionPiping = 1.14; location1.ModelFactors.UpliftCriterionStability = 1.15; + location1.DikeTableHeight = 0.1; + location1.WaterHeight = 0.2; + location1.WaterHeightLow = 0.3; + location1.WaterHeightDecimeringsHoogte = 0.4; + location1.MaxWaterHeight = 0.5; dike.Locations.Add(location1); Location location2 = new Location(); Index: DamClients/DamUI/trunk/src/Dam/Tests/CsvImporterTest.cs =================================================================== diff -u -r2135 -r2422 --- DamClients/DamUI/trunk/src/Dam/Tests/CsvImporterTest.cs (.../CsvImporterTest.cs) (revision 2135) +++ DamClients/DamUI/trunk/src/Dam/Tests/CsvImporterTest.cs (.../CsvImporterTest.cs) (revision 2422) @@ -247,6 +247,11 @@ Assert.AreEqual(true, dike.Locations[0].IsUseOriginalPLLineAssignments, "dike.Locations[0].IsUseOriginalPLLineAssignments"); Assert.AreEqual(13, dike.SurfaceLines2[0].CharacteristicPoints.Count(cp => cp.CharacteristicPointType != CharacteristicPointType.None)); Assert.IsNotNull(dike.SurfaceLines2[0].CharacteristicPoints.GetGeometryPoint(CharacteristicPointType.BottomDitchPolderSide)); + Assert.AreEqual(null, dike.Locations[0].DikeTableHeight); + Assert.AreEqual(null, dike.Locations[0].WaterHeight); + Assert.AreEqual(null, dike.Locations[0].WaterHeightLow); + Assert.AreEqual(null, dike.Locations[0].WaterHeightDecimeringsHoogte); + Assert.AreEqual(null, dike.Locations[0].MaxWaterHeight); } } Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/Scenario.cs =================================================================== diff -u -r2202 -r2422 --- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/Scenario.cs (.../Scenario.cs) (revision 2202) +++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/Scenario.cs (.../Scenario.cs) (revision 2422) @@ -106,7 +106,7 @@ private Dictionary safetyFactorsFlowSlide; private string locationScenarioId; - private double riverLevel; + private double? riverLevel; private double? riverLevelLow; private double? dikeTableHeight; private double? plLineOffsetBelowDikeTopAtRiver; @@ -214,7 +214,7 @@ [Format("F2")] [Label("River level")] [Description("River level")] - public double RiverLevel + public double? RiverLevel { get { @@ -623,15 +623,15 @@ } /// - /// Gets or sets the water height decimerings hoogte. + /// Gets or sets the water height decimeringshoogte. /// /// - /// The water height decimerings hoogte. + /// The water height decimeringshoogte. /// [Browsable(false)] [Unit(UnitType.Length)] [Format("F2")] - [Label("Water height decimerings height")] + [Label("Water height decimeringshoogte")] public double? WaterHeightDecimeringsHoogte { get @@ -1209,7 +1209,7 @@ } /// - /// Determine waterlevels based on waterlevel, max waterlevel and decimeringshoogte + /// Determine waterlevels based on waterlevel, max waterlevel and decimatingheight /// /// public double[] DetermineProperWaterlevelsForProbabilisticAdvanced() @@ -1253,7 +1253,7 @@ numberFormatInfo.NumberDecimalSeparator = "."; var nameValuePairs = new Dictionary(); nameValuePairs.Add(ScenarioParameterNames.LocationScenarioId, LocationScenarioID); - nameValuePairs.Add(ScenarioParameterNames.RiverLevel, RiverLevel.ToString(numberFormatInfo)); + nameValuePairs.Add(ScenarioParameterNames.RiverLevel, RiverLevel.Value.ToString(numberFormatInfo)); if (RiverLevelLow != null) { nameValuePairs.Add(ScenarioParameterNames.RiverLevelLow, RiverLevelLow.Value.ToString(numberFormatInfo)); Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamEngineIo/FillXmlInputFromDamUi.cs =================================================================== diff -u -r2409 -r2422 --- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamEngineIo/FillXmlInputFromDamUi.cs (.../FillXmlInputFromDamUi.cs) (revision 2409) +++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamEngineIo/FillXmlInputFromDamUi.cs (.../FillXmlInputFromDamUi.cs) (revision 2422) @@ -587,7 +587,7 @@ { var designScenario = location.Scenarios[j]; var inputDesignScenario = new LocationDesignScenario(); - inputDesignScenario.RiverLevel = designScenario.RiverLevel; + inputDesignScenario.RiverLevel = designScenario.RiverLevel ?? 0.0; inputDesignScenario.Id = designScenario.LocationScenarioID; inputDesignScenario.RiverLevelLowSpecified = designScenario.RiverLevelLow.HasValue; Index: DamClients/DamUI/trunk/src/Dam/Tests/LocationTest.cs =================================================================== diff -u -r2190 -r2422 --- DamClients/DamUI/trunk/src/Dam/Tests/LocationTest.cs (.../LocationTest.cs) (revision 2190) +++ DamClients/DamUI/trunk/src/Dam/Tests/LocationTest.cs (.../LocationTest.cs) (revision 2422) @@ -109,10 +109,10 @@ { // setup const double expected = 1.1; - using (var location = new Location("test") {RiverLevel = expected}) + using (var location = new Location("test") {WaterHeight = expected}) { // checks - Assert.AreEqual(expected, location.RiverLevel); + Assert.AreEqual(expected, location.WaterHeight); } } } Index: DamClients/DamUI/trunk/src/Dam/Tests/DamEngineIo/FillXmlInputFromDamUiTests.cs =================================================================== diff -u -r2213 -r2422 --- DamClients/DamUI/trunk/src/Dam/Tests/DamEngineIo/FillXmlInputFromDamUiTests.cs (.../FillXmlInputFromDamUiTests.cs) (revision 2213) +++ DamClients/DamUI/trunk/src/Dam/Tests/DamEngineIo/FillXmlInputFromDamUiTests.cs (.../FillXmlInputFromDamUiTests.cs) (revision 2422) @@ -405,7 +405,8 @@ UpliftCriterionStability = 10.0 * i + 0.68, UpliftCriterionPiping = 10.0 * i + 0.69 }; - + // DikeTableHeight, WaterHeight, WaterHeightLow, WaterHeightDecimeringsHoogte, MaxWaterHeight + // are not written to the xml in waternetoptions, therefore don't set values for them here dike.Locations.Add(location); } } Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/CsvImporters/CsvImporterScenarios.cs =================================================================== diff -u -r2089 -r2422 --- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/CsvImporters/CsvImporterScenarios.cs (.../CsvImporterScenarios.cs) (revision 2089) +++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/CsvImporters/CsvImporterScenarios.cs (.../CsvImporterScenarios.cs) (revision 2422) @@ -58,15 +58,12 @@ public int ScenarioRecordId { get; set; } public string LocationId { get; set; } //v - - public string LocationScenarioId { get; set; } - - //v - public double WaterHeight { get; set; } //v - public double WaterHeightLow { get; set; } //o - public double DikeTableHeight { get; set; } //v - public double WaterHeightDecimatingHeight { get; set; } //o - public double MaxWaterHeight { get; set; } //o + public string LocationScenarioId { get; set; } //v + public double? WaterHeight { get; set; } //v + public double? WaterHeightLow { get; set; } //o + public double? DikeTableHeight { get; set; } //v + public double? WaterHeightDecimeringsHoogte { get; set; } //o + public double? MaxWaterHeight { get; set; } //o public double ProbabilityOfFailureStabilityInnerSlope { get; set; } //o public double ProbabilityOfFailureStabilityOuterSlope { get; set; } //o public double ProbabilityOfFailurePiping { get; set; } //o @@ -160,8 +157,8 @@ int colIndexDikeTableHeight = CsvReaderUtilities.GetHeaderIndexByString(headers, fieldDikeTableHeight); CheckColumn(colIndexDikeTableHeight, fileName, fieldDikeTableHeight); - const string fieldWaterHeightDecimatingHeight = "water_height_decimerings_hoogte"; - int colIndexWaterHeightDecimatingHeight = CsvReaderUtilities.GetHeaderIndexByString(headers, fieldWaterHeightDecimatingHeight); + const string fieldWaterHeightDecimeringsHoogte = "water_height_decimerings_hoogte"; + int colIndexWaterHeightDecimeringsHoogte = CsvReaderUtilities.GetHeaderIndexByString(headers, fieldWaterHeightDecimeringsHoogte); const string fieldMaxWaterHeight = "max_waterheight"; int colIndexMaxWaterHeight = CsvReaderUtilities.GetHeaderIndexByString(headers, fieldMaxWaterHeight); @@ -225,10 +222,10 @@ } colIndex = colIndexDikeTableHeight; scenario.DikeTableHeight = Convert.ToDouble(csv[colIndexDikeTableHeight]); - if (colIndexWaterHeightDecimatingHeight > -1) + if (colIndexWaterHeightDecimeringsHoogte > -1) { - colIndex = colIndexWaterHeightDecimatingHeight; - scenario.WaterHeightDecimatingHeight = Convert.ToDouble(csv[colIndex]); + colIndex = colIndexWaterHeightDecimeringsHoogte; + scenario.WaterHeightDecimeringsHoogte = Convert.ToDouble(csv[colIndex]); } if (colIndexMaxWaterHeight > -1) { Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/Location.cs =================================================================== diff -u -r2319 -r2422 --- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/Location.cs (.../Location.cs) (revision 2319) +++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/Location.cs (.../Location.cs) (revision 2422) @@ -122,6 +122,11 @@ public const string UseNewShoulderBaseSlope = "UseNewShoulderBaseSlope"; public const string UseNewShoulderTopSlope = "UseNewShoulderTopSlope"; public const string IntrusionVerticalWaterPressure = "IntrusionVerticalWaterPressure"; + public const string DikeTableHeight = "DikeTableHeight"; + public const string WaterHeight = "WaterHeight"; + public const string WaterHeightLow = "WaterHeightLow"; + public const string WaterHeightDecimeringsHoogte = "WaterHeightDecimeringsHoogte"; + public const string MaxWaterHeight = "MaxWaterHeight"; } [TrackChanges] @@ -191,8 +196,6 @@ private double polderLevel = 0; private bool redesignDikeHeight = true; private bool redesignDikeShoulder = true; - private double scenarioRiverLevel = 0; - private double? scenarioRiverLevelLow = null; private Segment segment; private SensorLocation sensorLocation; private string shoulderEmbankmentMaterial = ""; @@ -230,8 +233,14 @@ private double? plLineOffsetBelowDikeCrestMiddle; private IntrusionVerticalWaterPressureType? intrusionVerticalWaterPressure = IntrusionVerticalWaterPressureType.Standard; - + private double? dikeTableHeight = null; + private double? waterHeight = null; + private double? waterHeightLow = null; + private double? waterHeightDecimeringsHoogte = null; + private double? maxWaterHeight = null; + + public Location() { SoilList = null; @@ -2183,48 +2192,110 @@ } [Unit(UnitType.Length)] - [Label("River level")] - [Description("Water level in river")] + [Label("DikeTableHeight")] + [Description("Dike table height")] [Format("F3")] [Category(WaterCategory)] - [PropertyOrder(2, 6)] - public virtual double RiverLevel + [PropertyOrder(2, 14)] + [Clearable] + public virtual double? DikeTableHeight { get { - return scenarioRiverLevel; + return dikeTableHeight; } set { - DataEventPublisher.BeforeChange(this, "RiverLevel"); - scenarioRiverLevel = value; - DataEventPublisher.AfterChange(this, "RiverLevel"); + DataEventPublisher.BeforeChange(this, "DikeTableHeight"); + dikeTableHeight = value; + DataEventPublisher.AfterChange(this, "DikeTableHeight"); } } [Unit(UnitType.Length)] - [Label("River level low")] - [Description("Water level in river (summer)")] + [Label("WaterHeight")] + [Description("Water height")] [Format("F3")] [Category(WaterCategory)] - [PropertyOrder(2, 7)] + [PropertyOrder(2, 15)] [Clearable] - [Browsable(false)] - [Obsolete] - public virtual double? ScenarioRiverLevelLow + public virtual double? WaterHeight { get { - return scenarioRiverLevelLow; + return waterHeight; } set { - DataEventPublisher.BeforeChange(this, "ScenarioRiverLevelLow"); - scenarioRiverLevelLow = value; - DataEventPublisher.AfterChange(this, "ScenarioRiverLevelLow"); + DataEventPublisher.BeforeChange(this, "WaterHeight"); + waterHeight = value; + DataEventPublisher.AfterChange(this, "WaterHeight"); } } + [Unit(UnitType.Length)] + [Label("WaterHeightLow")] + [Description("Water height low")] + [Format("F3")] + [Category(WaterCategory)] + [PropertyOrder(2, 16)] + [Clearable] + public virtual double? WaterHeightLow + { + get + { + return waterHeightLow; + } + set + { + DataEventPublisher.BeforeChange(this, "WaterHeightLow"); + waterHeightLow = value; + DataEventPublisher.AfterChange(this, "WaterHeightLow"); + } + } + + [Unit(UnitType.Length)] + [Label("WaterHeightDecimeringsHoogte")] + [Description("Water height decimeringshoogte")] + [Format("F3")] + [Category(WaterCategory)] + [PropertyOrder(2, 17)] + [Clearable] + public virtual double? WaterHeightDecimeringsHoogte + { + get + { + return waterHeightDecimeringsHoogte; + } + set + { + DataEventPublisher.BeforeChange(this, "WaterHeightDecimeringsHoogte"); + waterHeightDecimeringsHoogte = value; + DataEventPublisher.AfterChange(this, "WaterHeightDecimeringsHoogte"); + } + } + + [Unit(UnitType.Length)] + [Label("MaxWaterHeight")] + [Description("Maximum water height")] + [Format("F3")] + [Category(WaterCategory)] + [PropertyOrder(2, 18)] + [Clearable] + public virtual double? MaxWaterHeight + { + get + { + return maxWaterHeight; + } + set + { + DataEventPublisher.BeforeChange(this, "MaxWaterHeight"); + maxWaterHeight = value; + DataEventPublisher.AfterChange(this, "MaxWaterHeight"); + } + } + #endregion /// @@ -2388,6 +2459,26 @@ nameValuePairs.Add(LocationParameterNames.UseNewMinDistanceDikeToeStartDitch, UseNewMinDistanceDikeToeStartDitch.ToString()); nameValuePairs.Add(LocationParameterNames.UseNewShoulderBaseSlope, UseNewShoulderBaseSlope.ToString()); nameValuePairs.Add(LocationParameterNames.UseNewShoulderTopSlope, UseNewShoulderTopSlope.ToString()); + if (DikeTableHeight.HasValue) + { + nameValuePairs.Add(LocationParameterNames.DikeTableHeight, DikeTableHeight.Value.ToString(numberFormatInfo)); + } + if (WaterHeight.HasValue) + { + nameValuePairs.Add(LocationParameterNames.WaterHeight, WaterHeight.Value.ToString(numberFormatInfo)); + } + if (WaterHeightLow.HasValue) + { + nameValuePairs.Add(LocationParameterNames.WaterHeightLow, WaterHeightLow.Value.ToString(numberFormatInfo)); + } + if (WaterHeightDecimeringsHoogte.HasValue) + { + nameValuePairs.Add(LocationParameterNames.WaterHeightDecimeringsHoogte, WaterHeightDecimeringsHoogte.Value.ToString(numberFormatInfo)); + } + if (MaxWaterHeight.HasValue) + { + nameValuePairs.Add(LocationParameterNames.MaxWaterHeight, MaxWaterHeight.Value.ToString(numberFormatInfo)); + } return nameValuePairs; } @@ -2911,6 +3002,26 @@ { UseNewShoulderTopSlope = Convert.ToBoolean(parameterValue, numberFormatInfo); } + if (parameterName.Equals(LocationParameterNames.DikeTableHeight)) + { + DikeTableHeight = Convert.ToDouble(parameterValue, numberFormatInfo); + } + if (parameterName.Equals(LocationParameterNames.WaterHeight)) + { + WaterHeight = Convert.ToDouble(parameterValue, numberFormatInfo); + } + if (parameterName.Equals(LocationParameterNames.WaterHeightLow)) + { + WaterHeightLow = Convert.ToDouble(parameterValue, numberFormatInfo); + } + if (parameterName.Equals(LocationParameterNames.WaterHeightDecimeringsHoogte)) + { + WaterHeightDecimeringsHoogte = Convert.ToDouble(parameterValue, numberFormatInfo); + } + if (parameterName.Equals(LocationParameterNames.MaxWaterHeight)) + { + MaxWaterHeight = Convert.ToDouble(parameterValue, numberFormatInfo); + } } public ModelParametersForPLLines CreateModelParametersForPLLines() @@ -3019,11 +3130,6 @@ case "DikeEmbankmentMaterial": return true; - // these will never be shown - case "RiverLevel": - return false; // Probably obsolete, because it is defined in the scenario - case "ScenarioRiverLevelLow": - return false; // Probably obsolete, because it is defined in the scenario case "DistanceToEntryPoint": return false; case "LevelReductionInside": @@ -3078,6 +3184,17 @@ return !isDesign; case "HeadPl4": return !isDesign; + case "DikeTableHeight": + return !isDesign; + case "WaterHeight": + return !isDesign; + case "WaterHeightLow": + return !isDesign; + case "WaterHeightDecimeringsHoogte": + return !isDesign; + case "MaxWaterHeight": + return !isDesign; + default: return true; } Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/Sensors/SensorLocation.cs =================================================================== diff -u -r2244 -r2422 --- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/Sensors/SensorLocation.cs (.../SensorLocation.cs) (revision 2244) +++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/Sensors/SensorLocation.cs (.../SensorLocation.cs) (revision 2422) @@ -273,9 +273,9 @@ } [Browsable(false)] - public double RiverLevel + public double? WaterHeight { - get { return Location.RiverLevel; } + get { return Location.WaterHeight; } } [Browsable(false)] @@ -423,7 +423,7 @@ if (memberName == MemberNames.WaterLevelAtRiver) { if (SourceTypePl1WaterLevelAtRiver == DataSourceTypeSensors.LocationData) - return Location.RiverLevel; + return Location.WaterHeight; if (SourceTypePl1WaterLevelAtRiver == DataSourceTypeSensors.Sensor) return sensorValues[sensor]; Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/IO/CombineImportedData.cs =================================================================== diff -u -r2421 -r2422 --- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/IO/CombineImportedData.cs (.../CombineImportedData.cs) (revision 2421) +++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/IO/CombineImportedData.cs (.../CombineImportedData.cs) (revision 2422) @@ -652,11 +652,6 @@ { Location = dikeLocation, LocationScenarioID = scenarioRecord.LocationScenarioId, - RiverLevel = scenarioRecord.WaterHeight, - RiverLevelLow = scenarioRecord.WaterHeightLow, - DikeTableHeight = scenarioRecord.DikeTableHeight, - WaterHeightDecimeringsHoogte = scenarioRecord.WaterHeightDecimatingHeight, - MaxWaterLevel = scenarioRecord.MaxWaterHeight, ModelFactors = { RequiredSafetyFactorStabilityInnerSlope = scenarioRecord.SafetyFactorStabilityInnerSlope, @@ -691,6 +686,16 @@ scenarioRecord.HeadPl3 : dikeLocation.HeadPl3; scenario.HeadPl4 = scenarioRecord.HeadPl4.HasValue ? scenarioRecord.HeadPl4 : dikeLocation.HeadPl4; + scenario.DikeTableHeight = scenarioRecord.DikeTableHeight.HasValue ? + scenarioRecord.DikeTableHeight : dikeLocation.DikeTableHeight; + scenario.RiverLevel = scenarioRecord.WaterHeight.HasValue ? + scenarioRecord.WaterHeight : dikeLocation.WaterHeight; + scenario.RiverLevelLow = scenarioRecord.WaterHeightLow.HasValue ? + scenarioRecord.WaterHeightLow : dikeLocation.WaterHeightLow; + scenario.WaterHeightDecimeringsHoogte = scenarioRecord.WaterHeightDecimeringsHoogte.HasValue ? + scenarioRecord.WaterHeightDecimeringsHoogte : dikeLocation.WaterHeightDecimeringsHoogte; + scenario.MaxWaterLevel = scenarioRecord.MaxWaterHeight.HasValue ? + scenarioRecord.MaxWaterHeight : dikeLocation.MaxWaterHeight; dikeLocation.Scenarios.Add(scenario); } @@ -847,6 +852,13 @@ location.UseNewMinDistanceDikeToeStartDitch = locationRecord.UseNewMinDistanceDikeToeStartDitch.GetValueOrDefault(location.UseNewMinDistanceDikeToeStartDitch); location.UseNewShoulderBaseSlope = locationRecord.UseNewShoulderBaseSlope.GetValueOrDefault(location.UseNewShoulderBaseSlope); location.UseNewShoulderTopSlope = locationRecord.UseNewShoulderTopSlope.GetValueOrDefault(location.UseNewShoulderTopSlope); + + location.DikeTableHeight = locationRecord.DikeTableHeight; + location.WaterHeight = locationRecord.WaterHeight; + location.WaterHeightLow = locationRecord.WaterHeightLow; + location.WaterHeightDecimeringsHoogte = locationRecord.WaterHeightDecimeringsHoogte; + location.MaxWaterHeight = locationRecord.MaxWaterHeight; + if (!errorInrecord) { dike.Locations.Add(location); Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/Importers/LocationCsvColumnNames.cs =================================================================== diff -u -r2190 -r2422 --- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/Importers/LocationCsvColumnNames.cs (.../LocationCsvColumnNames.cs) (revision 2190) +++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/Importers/LocationCsvColumnNames.cs (.../LocationCsvColumnNames.cs) (revision 2422) @@ -406,5 +406,30 @@ /// public const string NewDepthDitchColumnName = "NewDepthDitch"; + /// + /// DikeTableHeight + /// + public const string DikeTableHeightColumnName = "DikeTableHeight"; + + /// + /// water_height + /// + public const string WaterHeightColumnName = "water_height"; + + /// + /// water_height_low + /// + public const string WaterHeightLowColumnName = "water_height_low"; + + /// + /// water_height_decimerings_hoogte + /// + public const string WaterHeightDecimeringsHoogteColumnName = "water_height_decimerings_hoogte"; + + /// + /// max_waterheight + /// + public const string MaxWaterHeightColumnName = "max_waterheight"; + } } \ No newline at end of file Index: DamClients/DamUI/trunk/src/Dam/Tests/CsvImporterTestsNew.cs =================================================================== diff -u -r2417 -r2422 --- DamClients/DamUI/trunk/src/Dam/Tests/CsvImporterTestsNew.cs (.../CsvImporterTestsNew.cs) (revision 2417) +++ DamClients/DamUI/trunk/src/Dam/Tests/CsvImporterTestsNew.cs (.../CsvImporterTestsNew.cs) (revision 2422) @@ -328,11 +328,11 @@ using (var writer = File.CreateText(importFile)) { writer.WriteLine( - "location_id;surfaceline_id;segment_id;geo_x;geo_y;x_soilgeometry2D_origin;Pl1_id;polderlevel;polderlevellow;head_pl2;head_pl3;head_pl4;Grass_quality;Direction;Ophoogmateriaaldijk;Ophoogmateriaalberm;Sheetpile_x;Sheetpile_y;Sheetpile_z;Sheetpile_length;use_original_plline_assignments;PenetrationLength;TrafficLoad;minimal_circle_depth;dempingsfactor_pl3;dempingsfactor_pl4;PLLineCreationMethod;level_reduction_inside;level_reduction_outside;layer_height_distribution;layer_height_deviation;safety_factor_piping;safety_factor_stability_inner_slope;safety_factor_stability_outer_slope;probability_of_failure_stability_innerslope;probability_of_failure_stability_outerslope;probability_of_failure_piping;uplift_criterion_piping;uplift_criterion_stability;Materiaaltypedijk;bp_tp;bp_hbp;bp_lbp;Baggerdiepte;distance_to_entry_point;PLLineOffsetBelowDikeTopAtRiver;PLLineOffsetBelowDikeTopAtPolder;PLLineOffsetBelowShoulderBaseInside;PLLineOffsetBelowDikeToeAtPolder;PLLineOffsetDryBelowDikeTopAtRiver;PLLineOffsetDryBelowDikeTopAtPolder;PLLineOffsetDryBelowShoulderBaseInside;PLLineOffsetDryBelowDikeToeAtPolder;StabilityShoulderGrowSlope;StabilityShoulderGrowDeltaX;StabilitySlopeAdaptionDeltaX;detrimentfactor;DikeTableHeight;SlopeDampingPiezometricHeightPolderSide;StabilityDesignMethod;SlopeAdaptionStartCotangent;SlopeAdaptionEndCotangent;SlopeAdaptionStepCotangent; UseNewDikeTopWidth; NewDikeTopWidth;UseNewDikeSlopeInside;NewDikeSlopeInside;UseNewDikeSlopeOutside;NewDikeSlopeOutside;UseNewShoulderTopSlope;NewShoulderTopSlope;UseNewShoulderBaseSlope;NewShoulderBaseSlope;UseNewMaxHeightShoulderAsFraction;NewMaxHeightShoulderAsFraction;UseNewMinDistanceDikeToeStartDitch;NewMinDistanceDikeToeStartDitch;UseNewDitchDefinition;NewWidthDitchBottom;newSlopeAngleDitch;NewDepthDitch;ZoneType;ForbiddenZoneFactor;ZoneAreaRestSlopeCrestWidth;PLLineOffsetBelowDikeCrestMiddle;PLLineOffsetFactorBelowShoulderCrest;UsePLLineOffsetDryBelowDikeCrestMiddle;PLLineOffsetDryBelowDikeCrestMiddle;UsePLLineOffsetDryFactorBelowShoulderCrest;PLLineOffsetDryFactorBelowShoulderCrest;IntrusionVerticalWaterPressure;TL_DegreeOfConsolidation"); + "location_id;surfaceline_id;segment_id;geo_x;geo_y;x_soilgeometry2D_origin;Pl1_id;polderlevel;polderlevellow;head_pl2;head_pl3;head_pl4;Grass_quality;Direction;Ophoogmateriaaldijk;Ophoogmateriaalberm;Sheetpile_x;Sheetpile_y;Sheetpile_z;Sheetpile_length;use_original_plline_assignments;PenetrationLength;TrafficLoad;minimal_circle_depth;dempingsfactor_pl3;dempingsfactor_pl4;PLLineCreationMethod;level_reduction_inside;level_reduction_outside;layer_height_distribution;layer_height_deviation;safety_factor_piping;safety_factor_stability_inner_slope;safety_factor_stability_outer_slope;probability_of_failure_stability_innerslope;probability_of_failure_stability_outerslope;probability_of_failure_piping;uplift_criterion_piping;uplift_criterion_stability;Materiaaltypedijk;bp_tp;bp_hbp;bp_lbp;Baggerdiepte;distance_to_entry_point;PLLineOffsetBelowDikeTopAtRiver;PLLineOffsetBelowDikeTopAtPolder;PLLineOffsetBelowShoulderBaseInside;PLLineOffsetBelowDikeToeAtPolder;PLLineOffsetDryBelowDikeTopAtRiver;PLLineOffsetDryBelowDikeTopAtPolder;PLLineOffsetDryBelowShoulderBaseInside;PLLineOffsetDryBelowDikeToeAtPolder;StabilityShoulderGrowSlope;StabilityShoulderGrowDeltaX;StabilitySlopeAdaptionDeltaX;detrimentfactor;DikeTableHeight;SlopeDampingPiezometricHeightPolderSide;StabilityDesignMethod;SlopeAdaptionStartCotangent;SlopeAdaptionEndCotangent;SlopeAdaptionStepCotangent; UseNewDikeTopWidth; NewDikeTopWidth;UseNewDikeSlopeInside;NewDikeSlopeInside;UseNewDikeSlopeOutside;NewDikeSlopeOutside;UseNewShoulderTopSlope;NewShoulderTopSlope;UseNewShoulderBaseSlope;NewShoulderBaseSlope;UseNewMaxHeightShoulderAsFraction;NewMaxHeightShoulderAsFraction;UseNewMinDistanceDikeToeStartDitch;NewMinDistanceDikeToeStartDitch;UseNewDitchDefinition;NewWidthDitchBottom;newSlopeAngleDitch;NewDepthDitch;ZoneType;ForbiddenZoneFactor;ZoneAreaRestSlopeCrestWidth;PLLineOffsetBelowDikeCrestMiddle;PLLineOffsetFactorBelowShoulderCrest;UsePLLineOffsetDryBelowDikeCrestMiddle;PLLineOffsetDryBelowDikeCrestMiddle;UsePLLineOffsetDryFactorBelowShoulderCrest;PLLineOffsetDryFactorBelowShoulderCrest;IntrusionVerticalWaterPressure;TL_DegreeOfConsolidation;water_height;water_height_low;water_height_decimerings_hoogte;max_waterheight"); writer.WriteLine( - "16-1-1-C-3-Z;16-1-1-C-3-Z;1043;124330;441312;1;16-1-1-C-3-Z;0.9;0.2;13.056;0.9;0.8;1;1;klei;klei2;1;2;3;12;TRUE;1.3;10;1.5;30;40;ExpertKnowledgeRRD;1;2;Uniform;0.1;1.2;1.3;1.4;0.01;0.02;0.03;1.1;1.2;klei;1.0;1.1;1.2;2.0;2.1;0.5;0.6;0.1;0.2;0.6;1.6;0.2;0.3;2.0;0.2;0.5;0.9;3.5;0.01;OptimizedSlopeAndShoulderAdaption;3.0;6.0;0.5;TRUE;1.8;TRUE;1.9;TRUE;2.9;TRUE;2.8;TRUE;2.7;TRUE;0.6;TRUE;2.6;TRUE;1.1;1.2;1.3;ZoneAreas;0.5;1.6;1.0;0.1;TRUE;1.1;FALSE;0.11;Standard;10.1"); + "16-1-1-C-3-Z;16-1-1-C-3-Z;1043;124330;441312;1;16-1-1-C-3-Z;0.9;0.2;13.056;0.9;0.8;1;1;klei;klei2;1;2;3;12;TRUE;1.3;10;1.5;30;40;ExpertKnowledgeRRD;1;2;Uniform;0.1;1.2;1.3;1.4;0.01;0.02;0.03;1.1;1.2;klei;1.0;1.1;1.2;2.0;2.1;0.5;0.6;0.1;0.2;0.6;1.6;0.2;0.3;2.0;0.2;0.5;0.9;3.5;0.01;OptimizedSlopeAndShoulderAdaption;3.0;6.0;0.5;TRUE;1.8;TRUE;1.9;TRUE;2.9;TRUE;2.8;TRUE;2.7;TRUE;0.6;TRUE;2.6;TRUE;1.1;1.2;1.3;ZoneAreas;0.5;1.6;1.0;0.1;TRUE;1.1;FALSE;0.11;Standard;10.1;1.2;1.3;1.4;1.5"); writer.WriteLine( - "25-2-2-A-1-A;25-2-2-A-1-A;106;66586;424173;2;25-2-2-A-1-A;-0.25;-0.25;0.8727;-0.25;-0.25;1;1;klei;klei2;1;2;3;12;FALSE;1.3;10;1.5;30;40;ExpertKnowledgeRRD;1;2;Uniform;0.1;1.2;1.3;1.4;0.01;0.02;0.03;1.1;1.2;klei;1.0;1.1;1.2;2.0;2.1;0.5;0.6;0.1;0.2;0.6;1.6;0.2;0.3;2.0;0.2;0.5;0.9;3.5;0.2;SlopeAdaptionBeforeShoulderAdaption;4.5;6.5;0.25;FALSE;0.8;FALSE;0.9;FALSE;1.9;FALSE;1.8;FALSE;1.7;FALSE;0.7;FALSE;1.6;FALSE;1.4;1.5;1.6;ForbiddenZone;0.9;2.1; 1.1;0.11;FALSE; 1.0;TRUE;0.1;SemiTimeDependent;55.5"); + "25-2-2-A-1-A;25-2-2-A-1-A;106;66586;424173;2;25-2-2-A-1-A;-0.25;-0.25;0.8727;-0.25;-0.25;1;1;klei;klei2;1;2;3;12;FALSE;1.3;10;1.5;30;40;ExpertKnowledgeRRD;1;2;Uniform;0.1;1.2;1.3;1.4;0.01;0.02;0.03;1.1;1.2;klei;1.0;1.1;1.2;2.0;2.1;0.5;0.6;0.1;0.2;0.6;1.6;0.2;0.3;2.0;0.2;0.5;0.9;3.5;0.2;SlopeAdaptionBeforeShoulderAdaption;4.5;6.5;0.25;FALSE;0.8;FALSE;0.9;FALSE;1.9;FALSE;1.8;FALSE;1.7;FALSE;0.7;FALSE;1.6;FALSE;1.4;1.5;1.6;ForbiddenZone;0.9;2.1; 1.1;0.11;FALSE; 1.0;TRUE;0.1;SemiTimeDependent;55.5;2.2;2.3;2.4;2.5"); } } @@ -786,6 +786,16 @@ Assert.AreEqual(null, locationRecords[1].UsePlLineOffsetFactorBelowShoulderCrest); Assert.AreEqual(IntrusionVerticalWaterPressureType.Standard, locationRecords[0].IntrusionVerticalWaterPressure); Assert.AreEqual(IntrusionVerticalWaterPressureType.SemiTimeDependent, locationRecords[1].IntrusionVerticalWaterPressure); + Assert.AreEqual(3.5, locationRecords[0].DikeTableHeight, tolerance); + Assert.AreEqual(3.5, locationRecords[1].DikeTableHeight, tolerance); + Assert.AreEqual(1.2, locationRecords[0].WaterHeight, tolerance); + Assert.AreEqual(2.2, locationRecords[1].WaterHeight, tolerance); + Assert.AreEqual(1.3, locationRecords[0].WaterHeightLow, tolerance); + Assert.AreEqual(2.3, locationRecords[1].WaterHeightLow, tolerance); + Assert.AreEqual(1.4, locationRecords[0].WaterHeightDecimeringsHoogte, tolerance); + Assert.AreEqual(2.4, locationRecords[1].WaterHeightDecimeringsHoogte, tolerance); + Assert.AreEqual(1.5, locationRecords[0].MaxWaterHeight, tolerance); + Assert.AreEqual(2.5, locationRecords[1].MaxWaterHeight, tolerance); } [Test] @@ -803,7 +813,7 @@ Assert.AreEqual(0.0, scenarioRecords[0].WaterHeight); Assert.AreEqual(0.680, scenarioRecords[0].WaterHeightLow); Assert.AreEqual(21.110, scenarioRecords[0].DikeTableHeight); - Assert.AreEqual(0.0, scenarioRecords[0].WaterHeightDecimatingHeight); + Assert.AreEqual(0.0, scenarioRecords[0].WaterHeightDecimeringsHoogte); Assert.AreEqual(1.120, scenarioRecords[0].MaxWaterHeight); Assert.AreEqual(31.600, scenarioRecords[0].SafetyFactorPiping); Assert.AreEqual(0.0, scenarioRecords[0].SafetyFactorStabilityInnerSlope); @@ -819,7 +829,7 @@ Assert.AreEqual(0.0, scenarioRecords[1].WaterHeight); Assert.AreEqual(1.680, scenarioRecords[1].WaterHeightLow); Assert.AreEqual(22.110, scenarioRecords[1].DikeTableHeight); - Assert.AreEqual(2.0, scenarioRecords[1].WaterHeightDecimatingHeight); + Assert.AreEqual(2.0, scenarioRecords[1].WaterHeightDecimeringsHoogte); Assert.AreEqual(1.220, scenarioRecords[1].MaxWaterHeight); Assert.AreEqual(32.600, scenarioRecords[1].SafetyFactorPiping); Assert.AreEqual(1.0, scenarioRecords[1].SafetyFactorStabilityInnerSlope); @@ -846,7 +856,7 @@ Assert.AreEqual(0.0, scenarioRecords[0].WaterHeight); Assert.AreEqual(0.680, scenarioRecords[0].WaterHeightLow); Assert.AreEqual(21.110, scenarioRecords[0].DikeTableHeight); - Assert.AreEqual(0.0, scenarioRecords[0].WaterHeightDecimatingHeight); + Assert.AreEqual(0.0, scenarioRecords[0].WaterHeightDecimeringsHoogte); Assert.AreEqual(1.120, scenarioRecords[0].MaxWaterHeight); Assert.AreEqual(31.600, scenarioRecords[0].SafetyFactorPiping); Assert.AreEqual(0.0, scenarioRecords[0].SafetyFactorStabilityInnerSlope); @@ -872,7 +882,7 @@ Assert.AreEqual(0.0, scenarioRecords[1].WaterHeight); Assert.AreEqual(1.680, scenarioRecords[1].WaterHeightLow); Assert.AreEqual(22.110, scenarioRecords[1].DikeTableHeight); - Assert.AreEqual(2.0, scenarioRecords[1].WaterHeightDecimatingHeight); + Assert.AreEqual(2.0, scenarioRecords[1].WaterHeightDecimeringsHoogte); Assert.AreEqual(1.220, scenarioRecords[1].MaxWaterHeight); Assert.AreEqual(32.600, scenarioRecords[1].SafetyFactorPiping); Assert.AreEqual(1.0, scenarioRecords[1].SafetyFactorStabilityInnerSlope); Index: DamClients/DamUI/trunk/src/Dam/Tests/LoadCompatiblityTest.cs =================================================================== diff -u -r2240 -r2422 --- DamClients/DamUI/trunk/src/Dam/Tests/LoadCompatiblityTest.cs (.../LoadCompatiblityTest.cs) (revision 2240) +++ DamClients/DamUI/trunk/src/Dam/Tests/LoadCompatiblityTest.cs (.../LoadCompatiblityTest.cs) (revision 2422) @@ -124,6 +124,7 @@ LayerHeightDeviation = 0.0, DistanceToEntryPoint = 0.0, // actual value StabilityZoneType = MStabZonesType.NoZones, + DikeTableHeight = 0.0, ModelFactors = new ModelFactors { RequiredProbabilityOfFailureStabilityInnerslope = 1.0e-08, Index: DamClients/DamUI/trunk/src/Dam/Tests/Importers/LocationPropertyImporterTest.cs =================================================================== diff -u -r2206 -r2422 --- DamClients/DamUI/trunk/src/Dam/Tests/Importers/LocationPropertyImporterTest.cs (.../LocationPropertyImporterTest.cs) (revision 2206) +++ DamClients/DamUI/trunk/src/Dam/Tests/Importers/LocationPropertyImporterTest.cs (.../LocationPropertyImporterTest.cs) (revision 2422) @@ -253,6 +253,11 @@ NewWidthDitchBottom = doubleInitialValue, NewDepthDitch = doubleInitialValue, NewSlopeAngleDitch = doubleInitialValue, + DikeTableHeight = doubleInitialValue, + WaterHeight = doubleInitialValue, + WaterHeightLow = doubleInitialValue, + WaterHeightDecimeringsHoogte = doubleInitialValue, + MaxWaterHeight = doubleInitialValue, }) { mockImporter.Targets = new List { location }; @@ -336,6 +341,11 @@ Assert.AreEqual(doubleTestValue, location.SlopeAdaptionStartCotangent); Assert.AreEqual(doubleTestValue, location.SlopeAdaptionEndCotangent); Assert.AreEqual(doubleTestValue, location.SlopeAdaptionStepCotangent); + Assert.AreEqual(doubleTestValue, location.DikeTableHeight); + Assert.AreEqual(doubleTestValue, location.WaterHeight); + Assert.AreEqual(doubleTestValue, location.WaterHeightLow); + Assert.AreEqual(doubleTestValue, location.WaterHeightDecimeringsHoogte); + Assert.AreEqual(doubleTestValue, location.MaxWaterHeight); mocks.VerifyAll(); } @@ -477,7 +487,12 @@ XSoilGeometry2DOrigin = doubleInitialValue, StabilityZoneType = MStabZonesType.NoZones, SlopeDampingPiezometricHeightPolderSide = doubleInitialValue, - IntrusionVerticalWaterPressure = IntrusionVerticalWaterPressureType.Standard + IntrusionVerticalWaterPressure = IntrusionVerticalWaterPressureType.Standard, + DikeTableHeight = doubleInitialValue, + WaterHeight = doubleInitialValue, + WaterHeightLow = doubleInitialValue, + WaterHeightDecimeringsHoogte = doubleInitialValue, + MaxWaterHeight = doubleInitialValue, }) { mockImporter.Targets = new List { location }; @@ -557,6 +572,11 @@ Assert.AreEqual(doubleTestValue, location.SlopeAdaptionStartCotangent); Assert.AreEqual(doubleTestValue, location.SlopeAdaptionEndCotangent); Assert.AreEqual(doubleTestValue, location.SlopeAdaptionStepCotangent); + Assert.AreEqual(doubleTestValue, location.DikeTableHeight); + Assert.AreEqual(doubleTestValue, location.WaterHeight); + Assert.AreEqual(doubleTestValue, location.WaterHeightLow); + Assert.AreEqual(doubleTestValue, location.WaterHeightDecimeringsHoogte); + Assert.AreEqual(doubleTestValue, location.MaxWaterHeight); mocks.VerifyAll(); } Index: DamClients/DamUI/trunk/src/Dam/Tests/IO/CombineImportedDataTest.cs =================================================================== diff -u -r2418 -r2422 --- DamClients/DamUI/trunk/src/Dam/Tests/IO/CombineImportedDataTest.cs (.../CombineImportedDataTest.cs) (revision 2418) +++ DamClients/DamUI/trunk/src/Dam/Tests/IO/CombineImportedDataTest.cs (.../CombineImportedDataTest.cs) (revision 2422) @@ -85,6 +85,7 @@ ScenarioRecords = csvImporter.ScenariosRecords }; combineImportedData.AddCsvDataToDikes(); + combineImportedData.AddScenarioDataToDikes(); foreach (var errormessage in combineImportedData.ErrorMessages) { LogManager.Messages.Add(errormessage); @@ -236,6 +237,11 @@ Assert.AreEqual(2.0, location.StabilityShoulderGrowSlope, tolerance); Assert.AreEqual(0.2, location.StabilityShoulderGrowDeltaX, tolerance); Assert.AreEqual(0.5, location.StabilitySlopeAdaptionDeltaX, tolerance); + Assert.AreEqual(3.5, location.DikeTableHeight, tolerance); + Assert.AreEqual(3.6, location.WaterHeight, tolerance); + Assert.AreEqual(3.7, location.WaterHeightLow, tolerance); + Assert.AreEqual(3.8, location.WaterHeightDecimeringsHoogte, tolerance); + Assert.AreEqual(3.9, location.MaxWaterHeight, tolerance); } }