Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/CsvImporters/CsvImporterSoils.cs
===================================================================
diff -u -r4262 -r4538
--- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/CsvImporters/CsvImporterSoils.cs (.../CsvImporterSoils.cs) (revision 4262)
+++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/CsvImporters/CsvImporterSoils.cs (.../CsvImporterSoils.cs) (revision 4538)
@@ -82,6 +82,7 @@
int colIndexRatioSuPc = CsvReaderUtilities.GetHeaderIndexByString(headers, CsvColumnNames.RatioSuPcColumnName);
int colIndexUsePop = CsvReaderUtilities.GetHeaderIndexByString(headers, CsvColumnNames.UsePopColumnName);
int colIndexPop = CsvReaderUtilities.GetHeaderIndexByString(headers, CsvColumnNames.PopColumnName);
+ int colIndexSigmaTauCurveName = CsvReaderUtilities.GetHeaderIndexByString(headers, CsvColumnNames.SigmaTauCurveNameColumnName);
while (csv.ReadNextRecord())
{
@@ -121,6 +122,12 @@
soil.UsePop = Convert.ToBoolean(csv[currentColIndex]);
}
+ if (colIndexSigmaTauCurveName > -1)
+ {
+ currentColIndex = colIndexSigmaTauCurveName;
+ soil.SigmaTauCurveName = csv[currentColIndex];
+ }
+
soil.Pop = FetchOptionalColumn(colIndexPop, csv);
ImportedItems.Add(soil);
@@ -175,6 +182,7 @@
public double? DiameterD70 { get; set; }
public double? PermeabilityX { get; set; }
public ShearStrengthModel ShearStrengthModel { get; set; }
+ public string SigmaTauCurveName { get; set; } = "";
public double? StrengthIncreaseExponent { get; set; }
public double? RatioSuPc { get; set; }
public bool UsePop { get; set; }
Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/Deltares.Dam.Tests.csproj
===================================================================
diff -u -r4512 -r4538
--- DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/Deltares.Dam.Tests.csproj (.../Deltares.Dam.Tests.csproj) (revision 4512)
+++ DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/Deltares.Dam.Tests.csproj (.../Deltares.Dam.Tests.csproj) (revision 4538)
@@ -1209,6 +1209,9 @@
PreserveNewest
+
+ PreserveNewest
+
Index: DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/CsvImporterTestsNew.cs
===================================================================
diff -u -r4341 -r4538
--- DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/CsvImporterTestsNew.cs (.../CsvImporterTestsNew.cs) (revision 4341)
+++ DamClients/DamUI/trunk/src/Dam/Deltares.Dam.Tests/CsvImporterTestsNew.cs (.../CsvImporterTestsNew.cs) (revision 4538)
@@ -769,6 +769,7 @@
Assert.That(soilRecord.RatioSuPc, Is.EqualTo(0.220));
Assert.That(soilRecord.UsePop, Is.False);
Assert.That(soilRecord.Pop, Is.EqualTo(10.000));
+ Assert.That(soilRecord.SigmaTauCurveName, Is.EqualTo(""));
soilRecord = soilRecords[1];
Assert.That(soilRecord.SoilName, Is.EqualTo("Klei"));
@@ -780,11 +781,12 @@
Assert.That(soilRecord.FrictionAngle, Is.EqualTo(18.500));
Assert.That(soilRecord.DiameterD70, Is.EqualTo(210.00));
Assert.That(soilRecord.PermeabilityX, Is.EqualTo(0.001));
- Assert.That(soilRecord.ShearStrengthModel, Is.EqualTo(ShearStrengthModel.CPhi));
+ Assert.That(soilRecord.ShearStrengthModel, Is.EqualTo(ShearStrengthModel.StressTable));
Assert.That(soilRecord.StrengthIncreaseExponent, Is.EqualTo(0.700));
Assert.That(soilRecord.RatioSuPc, Is.EqualTo(0.220));
Assert.That(soilRecord.UsePop, Is.False);
Assert.That(soilRecord.Pop, Is.EqualTo(10.000));
+ Assert.That(soilRecord.SigmaTauCurveName, Is.EqualTo("CurveKlei"));
soilRecord = soilRecords[2];
Assert.That(soilRecord.SoilName, Is.EqualTo("Veen"));
@@ -801,6 +803,7 @@
Assert.That(soilRecord.RatioSuPc, Is.EqualTo(0.220));
Assert.That(soilRecord.UsePop, Is.False);
Assert.That(soilRecord.Pop, Is.EqualTo(10.000));
+ Assert.That(soilRecord.SigmaTauCurveName, Is.EqualTo(""));
}
[Test]
@@ -913,10 +916,10 @@
private static void CreateFullSoilsFile(string filePath)
{
using StreamWriter writer = File.CreateText(filePath);
- writer.WriteLine("soil_name;soil_color;soil_type;saturated_unit_weight;unsaturated_unit_weight;cohesion;friction_angle;diameter_d70;permeability_x;shear_strength_model;strength_increase_exponent;ratio_su_pc;use_pop;pop");
- writer.WriteLine("Zand;#A6EBFC;Sand;20.000;18.000;0.000;30.000;210.00;0.001;CPhi;0.700;0.220;False;10.000");
- writer.WriteLine("Klei;#FFFFFF;Clay;17.500;17.500;3.500;18.500;210.00;0.001;CPhi;0.700;0.220;False;10.000");
- writer.WriteLine("Veen;#A4FFA6;Peat;11.000;11.000;2.000;20.500;210.00;0.001;CuCalculated;0.700;0.220;False;10.000");
+ writer.WriteLine("soil_name;soil_color;soil_type;saturated_unit_weight;unsaturated_unit_weight;cohesion;friction_angle;diameter_d70;permeability_x;shear_strength_model;strength_increase_exponent;ratio_su_pc;use_pop;pop;sigma_tau_curve_name");
+ writer.WriteLine("Zand;#A6EBFC;Sand;20.000;18.000;0.000;30.000;210.00;0.001;CPhi;0.700;0.220;False;10.000;");
+ writer.WriteLine("Klei;#FFFFFF;Clay;17.500;17.500;3.500;18.500;210.00;0.001;SigmaTauCurve;0.700;0.220;False;10.000;CurveKlei");
+ writer.WriteLine("Veen;#A4FFA6;Peat;11.000;11.000;2.000;20.500;210.00;0.001;CuCalculated;0.700;0.220;False;10.000;");
}
private static void CreateMinimalSoilsFile(string filePath)
Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamEngineIo/ConversionHelper.cs
===================================================================
diff -u -r4419 -r4538
--- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamEngineIo/ConversionHelper.cs (.../ConversionHelper.cs) (revision 4419)
+++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/DamEngineIo/ConversionHelper.cs (.../ConversionHelper.cs) (revision 4538)
@@ -1290,11 +1290,14 @@
},
{
"CuCalculated", ShearStrengthModel.CuCalculated
+ },
+ {
+ "SigmaTauCurve", ShearStrengthModel.StressTable
}
};
- if ((shearStrengthModel != "CPhi") && (shearStrengthModel != "CuCalculated"))
+ if ((shearStrengthModel != "CPhi") && (shearStrengthModel != "CuCalculated") && (shearStrengthModel != "SigmaTauCurve"))
{
- throw new NotImplementedException();
+ throw new NotImplementedException(String.Format("Unknown Shearstrength Model '{0}' ", [shearStrengthModel]));
}
return translationTable[shearStrengthModel];
}
Index: DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/Importers/CsvColumnNames.cs
===================================================================
diff -u -r4178 -r4538
--- DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/Importers/CsvColumnNames.cs (.../CsvColumnNames.cs) (revision 4178)
+++ DamClients/DamUI/trunk/src/DamClientsLibrary/Deltares.Dam.Data/Importers/CsvColumnNames.cs (.../CsvColumnNames.cs) (revision 4538)
@@ -424,6 +424,11 @@
/// shear_strength_model
///
public const string ShearStrengthModelColumnName = "shear_strength_model";
+
+ ///
+ /// The sigma tau curve name
+ ///
+ public const string SigmaTauCurveNameColumnName = "sigma_tau_curve_name";
///
/// strength_increase_exponent