Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/WaveConditions/WaveConditionsCalculationInput.cs
===================================================================
diff -u -r069a138c1b625306224a0385e8a49165be0ef6d3 -r3b9088c00c08d2d55eeb857a6a21a4c43b90fd60
--- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/WaveConditions/WaveConditionsCalculationInput.cs (.../WaveConditionsCalculationInput.cs) (revision 069a138c1b625306224a0385e8a49165be0ef6d3)
+++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/WaveConditions/WaveConditionsCalculationInput.cs (.../WaveConditionsCalculationInput.cs) (revision 3b9088c00c08d2d55eeb857a6a21a4c43b90fd60)
@@ -41,6 +41,7 @@
/// Creates a new instance of the class.
///
/// The id of the section to use during the calculation.
+ /// The normal of the section to use during the calculation.
/// The id of the hydraulic station to use during the calculation.
/// The norm to use during the calculation.
/// The foreland points to use during the calculation.
@@ -50,6 +51,7 @@
/// The b-value to use during the calculation.
/// As a part of the constructor, the is automatically converted into a reliability index.
protected WaveConditionsCalculationInput(int sectionId,
+ double sectionNormal,
long hydraulicBoundaryLocationId,
double norm,
IEnumerable forelandPoints,
@@ -65,7 +67,7 @@
this.waterLevel = waterLevel;
this.a = a;
this.b = b;
- section = new HydraRingSection(sectionId, double.NaN, double.NaN);
+ section = new HydraRingSection(sectionId, double.NaN, sectionNormal);
}
public override HydraRingFailureMechanismType FailureMechanismType
Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/WaveConditions/WaveConditionsCosineCalculationInput.cs
===================================================================
diff -u -rdc9032117524ced6472a6b0a5fdbc8f10e6e2faa -r3b9088c00c08d2d55eeb857a6a21a4c43b90fd60
--- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/WaveConditions/WaveConditionsCosineCalculationInput.cs (.../WaveConditionsCosineCalculationInput.cs) (revision dc9032117524ced6472a6b0a5fdbc8f10e6e2faa)
+++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/WaveConditions/WaveConditionsCosineCalculationInput.cs (.../WaveConditionsCosineCalculationInput.cs) (revision 3b9088c00c08d2d55eeb857a6a21a4c43b90fd60)
@@ -35,6 +35,7 @@
/// Creates a new instance of the class.
///
/// The id of the section to use during the calculation.
+ /// The normal of the section to use during the calculation.
/// The id of the hydraulic station to use during the calculation.
/// The norm to use during the calculation.
/// The foreland points to use during the calculation.
@@ -44,6 +45,7 @@
/// The b-value to use during the calculation.
/// The c-value to use during the calculation.
public WaveConditionsCosineCalculationInput(int sectionId,
+ double sectionNormal,
long hydraulicBoundaryLocationId,
double norm,
IEnumerable forelandPoints,
@@ -53,6 +55,7 @@
double b,
double c)
: base(sectionId,
+ sectionNormal,
hydraulicBoundaryLocationId,
norm,
forelandPoints,
Index: Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/WaveConditions/WaveConditionsTrapezoidCalculationInput.cs
===================================================================
diff -u -rdc9032117524ced6472a6b0a5fdbc8f10e6e2faa -r3b9088c00c08d2d55eeb857a6a21a4c43b90fd60
--- Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/WaveConditions/WaveConditionsTrapezoidCalculationInput.cs (.../WaveConditionsTrapezoidCalculationInput.cs) (revision dc9032117524ced6472a6b0a5fdbc8f10e6e2faa)
+++ Ringtoets/HydraRing/src/Ringtoets.HydraRing.Calculation/Data/Input/WaveConditions/WaveConditionsTrapezoidCalculationInput.cs (.../WaveConditionsTrapezoidCalculationInput.cs) (revision 3b9088c00c08d2d55eeb857a6a21a4c43b90fd60)
@@ -36,6 +36,7 @@
/// Creates a new instance of the class.
///
/// The id of the section to use during the calculation.
+ /// The normal of the section to use during the calculation.
/// The id of the hydraulic station to use during the calculation.
/// The norm to use during the calculation.
/// The foreland points to use during the calculation.
@@ -46,6 +47,7 @@
/// The beta1-value to use during the calculation.
/// The beta2-value to use during the calculation.
public WaveConditionsTrapezoidCalculationInput(int sectionId,
+ double sectionNormal,
long hydraulicBoundaryLocationId,
double norm,
IEnumerable forelandPoints,
@@ -56,6 +58,7 @@
double beta1,
double beta2)
: base(sectionId,
+ sectionNormal,
hydraulicBoundaryLocationId,
norm,
forelandPoints,
Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/WaveConditions/WaveConditionsCalculationInputTest.cs
===================================================================
diff -u -r069a138c1b625306224a0385e8a49165be0ef6d3 -r3b9088c00c08d2d55eeb857a6a21a4c43b90fd60
--- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/WaveConditions/WaveConditionsCalculationInputTest.cs (.../WaveConditionsCalculationInputTest.cs) (revision 069a138c1b625306224a0385e8a49165be0ef6d3)
+++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/WaveConditions/WaveConditionsCalculationInputTest.cs (.../WaveConditionsCalculationInputTest.cs) (revision 3b9088c00c08d2d55eeb857a6a21a4c43b90fd60)
@@ -38,6 +38,7 @@
{
// Setup
const int sectionId = 111;
+ const double sectionNormal = 90;
const int hydraulicBoundaryLocationId = 222;
const int norm = 333;
var forelandPoints = Enumerable.Empty();
@@ -48,6 +49,7 @@
// Call
var waveConditionsCalculationInput = new WaveConditionsCalculationInputImplementation(sectionId,
+ sectionNormal,
hydraulicBoundaryLocationId,
norm,
forelandPoints,
@@ -67,6 +69,7 @@
Assert.AreEqual(hydraulicBoundaryLocationId, waveConditionsCalculationInput.HydraulicBoundaryLocationId);
Assert.IsNotNull(waveConditionsCalculationInput.Section);
Assert.AreEqual(sectionId, waveConditionsCalculationInput.Section.SectionId);
+ Assert.AreEqual(sectionNormal, waveConditionsCalculationInput.Section.CrossSectionNormal);
HydraRingVariableAssert.AreEqual(GetExpectedVariables(waterLevel, a, b).ToArray(), waveConditionsCalculationInput.Variables.ToArray());
Assert.AreSame(forelandPoints, waveConditionsCalculationInput.ForelandsPoints);
Assert.AreSame(breakWater, waveConditionsCalculationInput.BreakWater);
@@ -76,6 +79,7 @@
private class WaveConditionsCalculationInputImplementation : WaveConditionsCalculationInput
{
public WaveConditionsCalculationInputImplementation(int sectionId,
+ double sectionNormal,
long hydraulicBoundaryLocationId,
double norm,
IEnumerable forelandPoints,
@@ -84,6 +88,7 @@
double a,
double b)
: base(sectionId,
+ sectionNormal,
hydraulicBoundaryLocationId,
norm,
forelandPoints,
Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/WaveConditions/WaveConditionsCosineCalculationInputTest.cs
===================================================================
diff -u -r069a138c1b625306224a0385e8a49165be0ef6d3 -r3b9088c00c08d2d55eeb857a6a21a4c43b90fd60
--- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/WaveConditions/WaveConditionsCosineCalculationInputTest.cs (.../WaveConditionsCosineCalculationInputTest.cs) (revision 069a138c1b625306224a0385e8a49165be0ef6d3)
+++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/WaveConditions/WaveConditionsCosineCalculationInputTest.cs (.../WaveConditionsCosineCalculationInputTest.cs) (revision 3b9088c00c08d2d55eeb857a6a21a4c43b90fd60)
@@ -37,18 +37,20 @@
{
// Setup
const int sectionId = 111;
+ const double sectionNormal = 90;
const int hydraulicBoundaryLocationId = 222;
const int norm = 333;
var forelandPoints = Enumerable.Empty();
var breakWater = new HydraRingBreakWater(1, 4.4);
- // Call
const double waterLevel = 5.5;
const double a = 6.6;
const double b = 7.7;
const double c = 8.8;
+ // Call
var waveConditionsCosineCalculationInput = new WaveConditionsCosineCalculationInput(sectionId,
+ sectionNormal,
hydraulicBoundaryLocationId,
norm,
forelandPoints,
@@ -69,6 +71,7 @@
Assert.AreEqual(hydraulicBoundaryLocationId, waveConditionsCosineCalculationInput.HydraulicBoundaryLocationId);
Assert.IsNotNull(waveConditionsCosineCalculationInput.Section);
Assert.AreEqual(sectionId, waveConditionsCosineCalculationInput.Section.SectionId);
+ Assert.AreEqual(sectionNormal, waveConditionsCosineCalculationInput.Section.CrossSectionNormal);
HydraRingVariableAssert.AreEqual(GetExpectedVariables(waterLevel, a, b, c).ToArray(), waveConditionsCosineCalculationInput.Variables.ToArray());
Assert.AreSame(forelandPoints, waveConditionsCosineCalculationInput.ForelandsPoints);
Assert.AreSame(breakWater, waveConditionsCosineCalculationInput.BreakWater);
@@ -83,6 +86,7 @@
{
// Call
var waveConditionsCosineCalculationInput = new WaveConditionsCosineCalculationInput(111,
+ 1.1,
222,
333,
Enumerable.Empty(),
Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/WaveConditions/WaveConditionsTrapezoidCalculationInputTest.cs
===================================================================
diff -u -r069a138c1b625306224a0385e8a49165be0ef6d3 -r3b9088c00c08d2d55eeb857a6a21a4c43b90fd60
--- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/WaveConditions/WaveConditionsTrapezoidCalculationInputTest.cs (.../WaveConditionsTrapezoidCalculationInputTest.cs) (revision 069a138c1b625306224a0385e8a49165be0ef6d3)
+++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Data/Input/WaveConditions/WaveConditionsTrapezoidCalculationInputTest.cs (.../WaveConditionsTrapezoidCalculationInputTest.cs) (revision 3b9088c00c08d2d55eeb857a6a21a4c43b90fd60)
@@ -37,6 +37,7 @@
{
// Setup
const int sectionId = 111;
+ const double sectionNormal = 90;
const int hydraulicBoundaryLocationId = 222;
const int norm = 333;
var forelandPoints = Enumerable.Empty();
@@ -49,6 +50,7 @@
// Call
var waveConditionsTrapezoidCalculationInput = new WaveConditionsTrapezoidCalculationInput(sectionId,
+ sectionNormal,
hydraulicBoundaryLocationId,
norm,
forelandPoints,
@@ -70,6 +72,7 @@
Assert.AreEqual(hydraulicBoundaryLocationId, waveConditionsTrapezoidCalculationInput.HydraulicBoundaryLocationId);
Assert.IsNotNull(waveConditionsTrapezoidCalculationInput.Section);
Assert.AreEqual(sectionId, waveConditionsTrapezoidCalculationInput.Section.SectionId);
+ Assert.AreEqual(sectionNormal, waveConditionsTrapezoidCalculationInput.Section.CrossSectionNormal);
HydraRingVariableAssert.AreEqual(GetExpectedVariables(waterLevel, a, b, beta1, beta2).ToArray(), waveConditionsTrapezoidCalculationInput.Variables.ToArray());
Assert.AreSame(forelandPoints, waveConditionsTrapezoidCalculationInput.ForelandsPoints);
Assert.AreSame(breakWater, waveConditionsTrapezoidCalculationInput.BreakWater);
@@ -84,6 +87,7 @@
{
// Call
var waveConditionsTrapezoidCalculationInput = new WaveConditionsTrapezoidCalculationInput(111,
+ 1.1,
222,
333,
Enumerable.Empty(),
Index: Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Integration/HydraRingConfigurationServiceIntegrationTest.cs
===================================================================
diff -u -rad087c2c09d8ad804036ca7f9064fbdee6e97fb9 -r3b9088c00c08d2d55eeb857a6a21a4c43b90fd60
--- Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Integration/HydraRingConfigurationServiceIntegrationTest.cs (.../HydraRingConfigurationServiceIntegrationTest.cs) (revision ad087c2c09d8ad804036ca7f9064fbdee6e97fb9)
+++ Ringtoets/HydraRing/test/Ringtoets.HydraRing.Calculation.Test/Integration/HydraRingConfigurationServiceIntegrationTest.cs (.../HydraRingConfigurationServiceIntegrationTest.cs) (revision 3b9088c00c08d2d55eeb857a6a21a4c43b90fd60)
@@ -565,6 +565,7 @@
hydraRingConfigurationService.AddHydraRingCalculationInput(
new WaveConditionsCosineCalculationInput(1,
+ 56.23,
hydraulicBoundaryLocationId,
10000,
forelandPoints,
@@ -578,7 +579,7 @@
"INSERT INTO [HydraulicModels] VALUES (3, 1, 'WTI 2017');" + Environment.NewLine +
Environment.NewLine +
"DELETE FROM [Sections];" + Environment.NewLine +
- "INSERT INTO [Sections] VALUES (1, 1, 1, 1, 1, 0, 0, 0, 0, 700004, 700004, 100, 0, 0);" + Environment.NewLine +
+ "INSERT INTO [Sections] VALUES (1, 1, 1, 1, 1, 0, 0, 0, 0, 700004, 700004, 100, 56.23, 0);" + Environment.NewLine +
Environment.NewLine +
"DELETE FROM [DesignTables];" + Environment.NewLine +
"INSERT INTO [DesignTables] VALUES (1, 3, 1, 1, 7, 114, 0, 0, 0, 0, 5, 15, 3.71901648545568);" + Environment.NewLine +
@@ -661,6 +662,7 @@
hydraRingConfigurationService.AddHydraRingCalculationInput(
new WaveConditionsTrapezoidCalculationInput(1,
+ 86.48,
hydraulicBoundaryLocationId,
10000,
forelandPoints,
@@ -675,7 +677,7 @@
"INSERT INTO [HydraulicModels] VALUES (3, 1, 'WTI 2017');" + Environment.NewLine +
Environment.NewLine +
"DELETE FROM [Sections];" + Environment.NewLine +
- "INSERT INTO [Sections] VALUES (1, 1, 1, 1, 1, 0, 0, 0, 0, 700004, 700004, 100, 0, 0);" + Environment.NewLine +
+ "INSERT INTO [Sections] VALUES (1, 1, 1, 1, 1, 0, 0, 0, 0, 700004, 700004, 100, 86.48, 0);" + Environment.NewLine +
Environment.NewLine +
"DELETE FROM [DesignTables];" + Environment.NewLine +
"INSERT INTO [DesignTables] VALUES (1, 3, 1, 1, 7, 114, 0, 0, 0, 0, 5, 15, 3.71901648545568);" + Environment.NewLine +
Index: Ringtoets/Revetment/src/Ringtoets.Revetment.Service/WaveConditionsCalculationService.cs
===================================================================
diff -u -r3a89e41054c6cfe6babdc150e8282cbe4a6dc672 -r3b9088c00c08d2d55eeb857a6a21a4c43b90fd60
--- Ringtoets/Revetment/src/Ringtoets.Revetment.Service/WaveConditionsCalculationService.cs (.../WaveConditionsCalculationService.cs) (revision 3a89e41054c6cfe6babdc150e8282cbe4a6dc672)
+++ Ringtoets/Revetment/src/Ringtoets.Revetment.Service/WaveConditionsCalculationService.cs (.../WaveConditionsCalculationService.cs) (revision 3b9088c00c08d2d55eeb857a6a21a4c43b90fd60)
@@ -34,7 +34,6 @@
using Ringtoets.HydraRing.IO;
using Ringtoets.Revetment.Data;
using Ringtoets.Revetment.Service.Properties;
-
using RingtoetsCommonServiceResources = Ringtoets.Common.Service.Properties.Resources;
using RingtoetsCommonFormsResources = Ringtoets.Common.Forms.Properties.Resources;
@@ -76,7 +75,7 @@
CalculationServiceHelper.LogValidationEndTime(name);
return false;
}
-
+
string validationErrorMessage = ValidateWaveConditionsInput(input);
if (!string.IsNullOrEmpty(validationErrorMessage))
{
@@ -138,6 +137,7 @@
WaveConditionsInput input)
{
return new WaveConditionsCosineCalculationInput(1,
+ input.Orientation,
input.HydraulicBoundaryLocation.Id,
norm,
GetForeshore(input),
@@ -158,7 +158,6 @@
return input.UseForeshore ? input.ForeshoreGeometry.Select(c => new HydraRingForelandPoint(c.X, c.Y)) : new HydraRingForelandPoint[0];
}
-
private static string ValidateHydraulicBoundaryDatabase(HydraulicBoundaryDatabase hydraulicBoundaryDatabase)
{
if (hydraulicBoundaryDatabase == null)
@@ -178,7 +177,7 @@
private static string ValidateWaveConditionsInput(WaveConditionsInput input)
{
- if (input.HydraulicBoundaryLocation == null)
+ if (input.HydraulicBoundaryLocation == null)
{
return Resources.WaveConditionsCalculationService_ValidateInput_No_hydraulic_boundary_location_selected;
}
Index: Ringtoets/Revetment/test/Ringtoets.Revetment.Service.Test/WaveConditionsCalculationServiceTest.cs
===================================================================
diff -u -r3a89e41054c6cfe6babdc150e8282cbe4a6dc672 -r3b9088c00c08d2d55eeb857a6a21a4c43b90fd60
--- Ringtoets/Revetment/test/Ringtoets.Revetment.Service.Test/WaveConditionsCalculationServiceTest.cs (.../WaveConditionsCalculationServiceTest.cs) (revision 3a89e41054c6cfe6babdc150e8282cbe4a6dc672)
+++ Ringtoets/Revetment/test/Ringtoets.Revetment.Service.Test/WaveConditionsCalculationServiceTest.cs (.../WaveConditionsCalculationServiceTest.cs) (revision 3b9088c00c08d2d55eeb857a6a21a4c43b90fd60)
@@ -332,6 +332,7 @@
private static WaveConditionsCosineCalculationInput CreateInput(double waterLevel, double a, double b, double c, double norm, WaveConditionsInput input, bool useForeshore, bool useBreakWater)
{
return new WaveConditionsCosineCalculationInput(1,
+ input.Orientation,
input.HydraulicBoundaryLocation.Id,
norm,
useForeshore ?
@@ -370,6 +371,8 @@
}
Assert.AreEqual(expectedInput.HydraulicBoundaryLocationId, actualInput.HydraulicBoundaryLocationId);
+ Assert.AreEqual(expectedInput.Section.SectionId, actualInput.Section.SectionId);
+ Assert.AreEqual(expectedInput.Section.CrossSectionNormal, actualInput.Section.CrossSectionNormal);
HydraRingVariableAssert.AreEqual(expectedInput.Variables.ToArray(), actualInput.Variables.ToArray());
}