LibMaterial update strategy was fixed
This commit is contained in:
@@ -81,6 +81,10 @@ namespace StructureHelper.Windows.ViewModels.Calculations.Calculators
|
|||||||
MessageBoxIcon.Information);
|
MessageBoxIcon.Information);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
valueList.Add(result.CrackedStrainTuple.Mx);
|
||||||
|
valueList.Add(result.CrackedStrainTuple.My);
|
||||||
|
valueList.Add(result.CrackedStrainTuple.Nz);
|
||||||
|
|
||||||
valueList.Add(result.ReducedStrainTuple.Mx);
|
valueList.Add(result.ReducedStrainTuple.Mx);
|
||||||
valueList.Add(result.ReducedStrainTuple.My);
|
valueList.Add(result.ReducedStrainTuple.My);
|
||||||
valueList.Add(result.ReducedStrainTuple.Nz);
|
valueList.Add(result.ReducedStrainTuple.Nz);
|
||||||
@@ -145,7 +149,8 @@ namespace StructureHelper.Windows.ViewModels.Calculations.Calculators
|
|||||||
}
|
}
|
||||||
private static string[] GetCrackLabels(IUnit unitForce, IUnit unitMoment, IUnit unitCurvature)
|
private static string[] GetCrackLabels(IUnit unitForce, IUnit unitMoment, IUnit unitCurvature)
|
||||||
{
|
{
|
||||||
const string crc = "CrcSofteningFactor";
|
const string crc = "Crc";
|
||||||
|
const string crcFactor = "CrcSofteningFactor";
|
||||||
return new string[]
|
return new string[]
|
||||||
{
|
{
|
||||||
$"{GeometryNames.MomFstName}, {unitMoment.Name}",
|
$"{GeometryNames.MomFstName}, {unitMoment.Name}",
|
||||||
@@ -154,9 +159,12 @@ namespace StructureHelper.Windows.ViewModels.Calculations.Calculators
|
|||||||
$"{GeometryNames.CurvFstName}, {unitCurvature.Name}",
|
$"{GeometryNames.CurvFstName}, {unitCurvature.Name}",
|
||||||
$"{GeometryNames.CurvSndName}, {unitCurvature.Name}",
|
$"{GeometryNames.CurvSndName}, {unitCurvature.Name}",
|
||||||
$"{GeometryNames.StrainTrdName}",
|
$"{GeometryNames.StrainTrdName}",
|
||||||
$"{crc}Ix",
|
$"{crc}{GeometryNames.CurvFstName}, {unitCurvature.Name}",
|
||||||
$"{crc}Iy",
|
$"{crc}{GeometryNames.CurvSndName}, {unitCurvature.Name}",
|
||||||
$"{crc}Az",
|
$"{crc}{GeometryNames.StrainTrdName}",
|
||||||
|
$"{crcFactor}Ix",
|
||||||
|
$"{crcFactor}Iy",
|
||||||
|
$"{crcFactor}Az",
|
||||||
$"PsiFactor"
|
$"PsiFactor"
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -176,6 +176,7 @@ namespace StructureHelperCommon.Models.Materials.Libraries
|
|||||||
new ConcreteMaterialEntity(new Guid("2f5b70b9-f4c1-470d-ac27-a39a7093b6ea"))
|
new ConcreteMaterialEntity(new Guid("2f5b70b9-f4c1-470d-ac27-a39a7093b6ea"))
|
||||||
{
|
{
|
||||||
CodeType = codeType,
|
CodeType = codeType,
|
||||||
|
Code = code,
|
||||||
Name = "B30",
|
Name = "B30",
|
||||||
MainStrength = 30e6
|
MainStrength = 30e6
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -13,8 +13,9 @@ namespace StructureHelperLogics.Models.Materials
|
|||||||
public void Update(ILibMaterial targetObject, ILibMaterial sourceObject)
|
public void Update(ILibMaterial targetObject, ILibMaterial sourceObject)
|
||||||
{
|
{
|
||||||
targetObject.MaterialEntity = sourceObject.MaterialEntity;
|
targetObject.MaterialEntity = sourceObject.MaterialEntity;
|
||||||
|
var tmpSafetyFactors = new List<IMaterialSafetyFactor>(sourceObject.SafetyFactors);
|
||||||
targetObject.SafetyFactors.Clear();
|
targetObject.SafetyFactors.Clear();
|
||||||
foreach (var item in sourceObject.SafetyFactors)
|
foreach (var item in tmpSafetyFactors)
|
||||||
{
|
{
|
||||||
targetObject.SafetyFactors.Add(item.Clone() as IMaterialSafetyFactor);
|
targetObject.SafetyFactors.Add(item.Clone() as IMaterialSafetyFactor);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -94,6 +94,7 @@ namespace StructureHelperLogics.NdmCalculations.Cracking
|
|||||||
result.FactorOfCrackAppearance = factorOfCrackAppearance;
|
result.FactorOfCrackAppearance = factorOfCrackAppearance;
|
||||||
result.TupleOfCrackAppearance = ForceTupleService.InterpolateTuples(EndTuple, StartTuple, factorOfCrackAppearance);
|
result.TupleOfCrackAppearance = ForceTupleService.InterpolateTuples(EndTuple, StartTuple, factorOfCrackAppearance);
|
||||||
var reducedStrainTuple = GetReducedStrainTuple(factorOfCrackAppearance, psiS);
|
var reducedStrainTuple = GetReducedStrainTuple(factorOfCrackAppearance, psiS);
|
||||||
|
result.CrackedStrainTuple = GetStrainTuple(EndTuple);
|
||||||
result.ReducedStrainTuple = reducedStrainTuple;
|
result.ReducedStrainTuple = reducedStrainTuple;
|
||||||
result.SofteningFactors=GetSofteningFactors(reducedStrainTuple);
|
result.SofteningFactors=GetSofteningFactors(reducedStrainTuple);
|
||||||
result.PsiS = psiS;
|
result.PsiS = psiS;
|
||||||
@@ -128,7 +129,7 @@ namespace StructureHelperLogics.NdmCalculations.Cracking
|
|||||||
result.TupleOfCrackAppearance = (IForceTuple)StartTuple.Clone();
|
result.TupleOfCrackAppearance = (IForceTuple)StartTuple.Clone();
|
||||||
softeningLogic.ForceRatio = result.FactorOfCrackAppearance;
|
softeningLogic.ForceRatio = result.FactorOfCrackAppearance;
|
||||||
result.PsiS = softeningLogic.GetSofteningFactor();
|
result.PsiS = softeningLogic.GetSofteningFactor();
|
||||||
result.ReducedStrainTuple = GetStrainTuple(EndTuple);
|
result.CrackedStrainTuple = result.ReducedStrainTuple = GetStrainTuple(EndTuple);
|
||||||
result.SofteningFactors = GetSofteningFactors(result.ReducedStrainTuple);
|
result.SofteningFactors = GetSofteningFactors(result.ReducedStrainTuple);
|
||||||
result.IsSectionCracked = true;
|
result.IsSectionCracked = true;
|
||||||
result.Description += "Section cracked in start tuple";
|
result.Description += "Section cracked in start tuple";
|
||||||
@@ -137,7 +138,7 @@ namespace StructureHelperLogics.NdmCalculations.Cracking
|
|||||||
{
|
{
|
||||||
result.IsValid = true;
|
result.IsValid = true;
|
||||||
result.IsSectionCracked = false;
|
result.IsSectionCracked = false;
|
||||||
result.ReducedStrainTuple = GetStrainTuple(EndTuple);
|
result.CrackedStrainTuple = result.ReducedStrainTuple = GetStrainTuple(EndTuple);
|
||||||
result.SofteningFactors = GetSofteningFactors(result.ReducedStrainTuple);
|
result.SofteningFactors = GetSofteningFactors(result.ReducedStrainTuple);
|
||||||
result.Description = "Section is not cracked";
|
result.Description = "Section is not cracked";
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ namespace StructureHelperLogics.NdmCalculations.Cracking
|
|||||||
public IForceTuple StartTuple { get; set; }
|
public IForceTuple StartTuple { get; set; }
|
||||||
public IForceTuple EndTuple { get; set; }
|
public IForceTuple EndTuple { get; set; }
|
||||||
public IForceTuple TupleOfCrackAppearance { get; set; }
|
public IForceTuple TupleOfCrackAppearance { get; set; }
|
||||||
|
public StrainTuple CrackedStrainTuple { get; set; }
|
||||||
public StrainTuple ReducedStrainTuple { get; set; }
|
public StrainTuple ReducedStrainTuple { get; set; }
|
||||||
public StrainTuple SofteningFactors { get; set; }
|
public StrainTuple SofteningFactors { get; set; }
|
||||||
public IEnumerable<INdm> NdmCollection { get; set; }
|
public IEnumerable<INdm> NdmCollection { get; set; }
|
||||||
|
|||||||
@@ -45,8 +45,8 @@ namespace StructureHelperLogics.NdmCalculations.Cracking
|
|||||||
public ExpSofteningLogic()
|
public ExpSofteningLogic()
|
||||||
{
|
{
|
||||||
FiMin = 0.2d;
|
FiMin = 0.2d;
|
||||||
PowerFactor = 1d;
|
PowerFactor = 2d;
|
||||||
BettaFactor = 0.8;
|
BettaFactor = 0.8d;
|
||||||
}
|
}
|
||||||
public double GetSofteningFactor()
|
public double GetSofteningFactor()
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user