Geometry property results have been added

This commit is contained in:
Evgeny Redikultsev
2023-04-29 20:39:05 +05:00
parent fe2adb49ff
commit 749c864edd
35 changed files with 550 additions and 73 deletions

View File

@@ -36,7 +36,7 @@ namespace StructureHelperLogics.NdmCalculations.Analyses.ByForces
var checkResult = CheckInputData();
if (checkResult != "")
{
Result = new ForcesResults() { IsValid = false, Desctription = checkResult };
Result = new ForcesResults() { IsValid = false, Description = checkResult };
return;
}
else
@@ -86,7 +86,7 @@ namespace StructureHelperLogics.NdmCalculations.Analyses.ByForces
if (bucklingResult.IsValid != true)
{
result.IsValid = false;
result.Desctription += $"Buckling result:\n{bucklingResult.Desctription}\n";
result.Description += $"Buckling result:\n{bucklingResult.Description}\n";
}
newTuple = CalculateBuckling(newTuple, bucklingResult);
result = GetPrimitiveStrainMatrix(ndms, newTuple);
@@ -94,7 +94,7 @@ namespace StructureHelperLogics.NdmCalculations.Analyses.ByForces
catch (Exception ex)
{
result.IsValid = false;
result.Desctription = $"Buckling error:\n{ex}\n";
result.Description = $"Buckling error:\n{ex}\n";
}
}
result.DesignForceTuple.LimitState = limitState;

View File

@@ -57,19 +57,19 @@ namespace StructureHelperLogics.NdmCalculations.Analyses.ByForces
var calcResult = calculator.Result;
if (calcResult.AccuracyRate <= accuracy.IterationAccuracy)
{
return new ForcesTupleResult() { IsValid = true, Desctription = "Analysis is done succsefully", LoaderResults = calcResult };
return new ForcesTupleResult() { IsValid = true, Description = "Analysis is done succsefully", LoaderResults = calcResult };
}
else
{
return new ForcesTupleResult() { IsValid = false, Desctription = "Required accuracy rate has not achived", LoaderResults = calcResult };
return new ForcesTupleResult() { IsValid = false, Description = "Required accuracy rate has not achived", LoaderResults = calcResult };
}
}
catch (Exception ex)
{
var result = new ForcesTupleResult() { IsValid = false };
if (ex.Message == "Calculation result is not valid: stiffness matrix is equal to zero") { result.Desctription = "Stiffness matrix is equal to zero \nProbably section was collapsed"; }
else { result.Desctription = $"Error is appeared due to analysis. Error: {ex}"; }
if (ex.Message == "Calculation result is not valid: stiffness matrix is equal to zero") { result.Description = "Stiffness matrix is equal to zero \nProbably section was collapsed"; }
else { result.Description = $"Error is appeared due to analysis. Error: {ex}"; }
return result;
}
}

View File

@@ -10,7 +10,7 @@ namespace StructureHelperLogics.NdmCalculations.Analyses.ByForces
{
public bool IsValid { get; set; }
public List<IForcesTupleResult> ForcesResultList { get; }
public string Desctription { get; set; }
public string Description { get; set; }
public ForcesResults()
{

View File

@@ -16,7 +16,7 @@ namespace StructureHelperLogics.NdmCalculations.Analyses.ByForces
/// <summary>
/// Text of result of calculations
/// </summary>
public string Desctription { get; set; }
public string Description { get; set; }
/// <summary>
/// Keep result of calculations from ndm-library
/// </summary>

View File

@@ -4,7 +4,7 @@ namespace StructureHelperLogics.NdmCalculations.Analyses.ByForces
{
public interface IForcesResults : INdmResult
{
string Desctription { get; set; }
string Description { get; set; }
List<IForcesTupleResult> ForcesResultList { get; }
bool IsValid { get; set; }
}

View File

@@ -12,6 +12,6 @@ namespace StructureHelperLogics.NdmCalculations.Analyses
/// True if result of calculation is valid
/// </summary>
bool IsValid { get; set; }
string Desctription { get; set; }
string Description { get; set; }
}
}

View File

@@ -31,7 +31,7 @@ namespace StructureHelperLogics.NdmCalculations.Buckling
private (double EtaAlongX, double EtaAlongY) GetBucklingCoefficients()
{
var stiffness = GetStiffness();
criticalForceLogic.LongForce = options.CalcForceTuple.Nz;
criticalForceLogic.LongitudinalForce = options.CalcForceTuple.Nz;
criticalForceLogic.StiffnessEI = stiffness.DX;
criticalForceLogic.DesignLength = options.CompressedMember.GeometryLength * options.CompressedMember.LengthFactorY;
var etaAlongY = criticalForceLogic.GetEtaFactor();
@@ -77,8 +77,8 @@ namespace StructureHelperLogics.NdmCalculations.Buckling
{
var gravityCenter = GeometryOperations.GetGravityCenter(ndmCollection);
var concreteInertia = GeometryOperations.GetMomentsOfInertiaMod(concreteNdms, gravityCenter);
var otherInertia = GeometryOperations.GetMomentsOfInertiaMod(otherNdms, gravityCenter);
var concreteInertia = GeometryOperations.GetReducedMomentsOfInertia(concreteNdms, gravityCenter);
var otherInertia = GeometryOperations.GetReducedMomentsOfInertia(otherNdms, gravityCenter);
var stiffnessX = stiffnessLogicX.GetStiffnessCoeffitients();
var dX = stiffnessX.Kc * concreteInertia.MomentX + stiffnessX.Ks * otherInertia.MomentX;
@@ -127,7 +127,7 @@ namespace StructureHelperLogics.NdmCalculations.Buckling
var checkResult = CheckInputData();
if (checkResult != "")
{
Result = new ConcreteBucklingResult() { IsValid = false, Desctription = checkResult };
Result = new ConcreteBucklingResult() { IsValid = false, Description = checkResult };
return;
}
else

View File

@@ -12,7 +12,7 @@ namespace StructureHelperLogics.NdmCalculations.Buckling
/// <inheritdoc/>
public bool IsValid { get; set; }
/// <inheritdoc/>
public string Desctription { get; set; }
public string Description { get; set; }
/// <inheritdoc/>
public double EtaFactorAlongX { get; set; }
/// <inheritdoc/>

View File

@@ -10,7 +10,7 @@ namespace StructureHelperLogics.NdmCalculations.Buckling
{
internal class EilerCriticalForceLogic : IEilerCriticalForceLogic
{
public double LongForce { get; set; }
public double LongitudinalForce { get; set; }
public double StiffnessEI { get; set; }
public double DesignLength { get; set; }
@@ -22,13 +22,13 @@ namespace StructureHelperLogics.NdmCalculations.Buckling
public double GetEtaFactor()
{
if (LongForce >= 0d) return 1d;
if (LongitudinalForce >= 0d) return 1d;
var Ncr = GetCriticalForce();
if (LongForce <= Ncr)
if (LongitudinalForce <= Ncr)
{
throw new StructureHelperException(ErrorStrings.LongitudinalForceMustBeLessThanCriticalForce);
}
double eta = 1 / (1 - LongForce / Ncr);
double eta = 1 / (1 - LongitudinalForce / Ncr);
return eta;
}
}

View File

@@ -8,7 +8,7 @@ namespace StructureHelperLogics.NdmCalculations.Buckling
{
internal interface IEilerCriticalForceLogic : ICriticalBucklingForceLogic
{
double LongForce { get; set; }
double LongitudinalForce { get; set; }
double StiffnessEI { get; set; }
double DesignLength { get; set; }