Buckling calculator was changed, accidental eccentricity logic was added

This commit is contained in:
Evgeny Redikultsev
2024-02-25 15:31:09 +05:00
parent 541f23c0a8
commit bf72f6d347
28 changed files with 676 additions and 145 deletions

View File

@@ -1,4 +1,6 @@
using System;
using StructureHelperCommon.Models;
using StructureHelperCommon.Models.Loggers;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
@@ -8,8 +10,13 @@ namespace StructureHelperLogics.NdmCalculations.Buckling
{
internal class RCStiffnessLogicSP63 : IRCStiffnessLogic
{
const double initialKs = 0.7d;
const double initialKc = 0.15d;
const double deltaEAddition = 0.3d;
IConcretePhiLLogic phiLLogic { get; }
IConcreteDeltaELogic deltaELogic { get; }
public IShiftTraceLogger? TraceLogger { get; set; }
public RCStiffnessLogicSP63() : this(new ConstPhiLLogic(), new ConstDeltaELogic()) { }
@@ -21,12 +28,17 @@ namespace StructureHelperLogics.NdmCalculations.Buckling
public (double Kc, double Ks) GetStiffnessCoeffitients()
{
const double initialKs = 0.7d;
const double initialKc = 0.15d;
const double deltaEAddition = 0.3d;
if (TraceLogger is not null)
{
phiLLogic.TraceLogger = TraceLogger.GetSimilarTraceLogger(50);
deltaELogic.TraceLogger = TraceLogger.GetSimilarTraceLogger(50);
}
double phiL = phiLLogic.GetPhil();
double deltaE = deltaELogic.GetDeltaE();
TraceLogger?.AddMessage(string.Format("Factor of relative eccentricity DeltaE = {0}", deltaE));
double kc = initialKc / (phiL * (deltaEAddition + deltaE));
var messageString = string.Format("Factor of stiffness of concrete Kc = {0} / ({1} * ({2} + {3})) = {4}, {5}", initialKc, phiL, deltaEAddition, deltaE, kc, LoggerStrings.DimensionLess);
TraceLogger?.AddMessage(messageString);
return (kc, initialKs);
}
}