Skip to content

Commit

Permalink
Merge pull request #42 from MagmaWorks/feature/en-cement-class
Browse files Browse the repository at this point in the history
Cement Class
  • Loading branch information
kpne authored Nov 8, 2024
2 parents e3cf75d + e876d88 commit 2dbb89a
Show file tree
Hide file tree
Showing 4 changed files with 16 additions and 2 deletions.
9 changes: 9 additions & 0 deletions Materials/IMaterials/StandardMaterials/EN/ENCementClass.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
namespace MagmaWorks.Taxonomy.Materials
{
public enum ENCementClass
{
S,
N,
R
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ namespace MagmaWorks.Taxonomy.Materials
public interface IENConcreteMaterial : IENMaterial<ENConcreteGrade>
{
ENConcreteExposureClass ExposureClass { get; }
ENCementClass CementClass { get; }
Length MaximumAggregateSize { get; }

/// <summary>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,15 +40,17 @@ public void CreateStandardENC30_37GermanNAConcreteMaterialWithExposureClassAndMa
ENConcreteGrade grade = ENConcreteGrade.C30_37;
NationalAnnex nationalAnnex = NationalAnnex.Germany;
ENConcreteExposureClass exposureClass = ENConcreteExposureClass.XF2;
ENCementClass cementClass = ENCementClass.S;
Length maxAggregateSize = new Length(40, LengthUnit.Millimeter);

// Act
IENConcreteMaterial material = new ENConcreteMaterial(grade, nationalAnnex, exposureClass, maxAggregateSize);
IENConcreteMaterial material = new ENConcreteMaterial(grade, nationalAnnex, exposureClass, maxAggregateSize, cementClass);

// Assert
Assert.Equal(NationalAnnex.Germany, material.Standard.NationalAnnex);
Assert.Equal(ENConcreteGrade.C30_37, material.Grade);
Assert.Equal(ENConcreteExposureClass.XF2, material.ExposureClass);
Assert.Equal(ENCementClass.S, material.CementClass);
Assert.Equal(40, material.MaximumAggregateSize.Millimeters);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ namespace MagmaWorks.Taxonomy.Materials.StandardMaterials.EN
{
public class ENConcreteMaterial : IENConcreteMaterial
{
public ENCementClass CementClass { get; set; } = ENCementClass.N;
public ENConcreteExposureClass ExposureClass { get; set; } = ENConcreteExposureClass.XC1;
public ENConcreteGrade Grade { get; set; } = ENConcreteGrade.C30_37;
public IEurocode Standard { get; set; } = new EN1992(EN1992Part.Part1_1, NationalAnnex.RecommendedValues);
Expand All @@ -27,8 +28,9 @@ public ENConcreteMaterial(ENConcreteGrade grade, NationalAnnex nationalAnnex)
}

public ENConcreteMaterial(ENConcreteGrade grade, NationalAnnex nationalAnnex,
ENConcreteExposureClass exposureClass, Length maxAggregateSize)
ENConcreteExposureClass exposureClass, Length maxAggregateSize, ENCementClass cementClass)
{
CementClass = cementClass;
Standard = new EN1992(EN1992Part.Part1_1, nationalAnnex);
Grade = grade;
ExposureClass = exposureClass;
Expand Down

0 comments on commit 2dbb89a

Please sign in to comment.