Force calculator was repaired for buckling calculations

This commit is contained in:
Evgeny Redikultsev
2024-03-08 17:16:00 +05:00
parent 4359b2c49b
commit 0a453c5a95
18 changed files with 382 additions and 146 deletions

View File

@@ -11,6 +11,9 @@ namespace StructureHelperCommon.Models.Loggers
public static string DimensionLess => "(dimensionless)";
public static string MethodBasedOn => "Method of calculation based on ";
public static string CalculationHasDone => "Calculation has done succesfully";
public static string Summary => "Summary";
public static string Maximum => "Maximum";
public static string Minimum => "Minimum";
public static string CalculatorType(object obj) => string.Format("Calculator type: {0}", obj.GetType());
}
}

View File

@@ -42,5 +42,6 @@ namespace StructureHelperCommon.Models.Parameters
ColumnLabels = columnLabels;
}
}
public ArrayParameter(int rowCount, List<string> columnLabels) : this(rowCount, columnLabels.Count, columnLabels) { }
}
}

View File

@@ -5,6 +5,9 @@ using System.Linq;
using System.Text;
using System.Threading.Tasks;
//Copyright (c) 2023 Redikultsev Evgeny, Ekaterinburg, Russia
//All rights reserved.
namespace StructureHelperCommon.Models.Sections
{
public class AccidentalEccentricityLogic : IAccidentalEccentricityLogic
@@ -64,10 +67,10 @@ namespace StructureHelperCommon.Models.Sections
minEccentricity, yEccentricity,
yFullEccentricity);
TraceLogger?.AddMessage(mesEy);
var xSign = InitialForceTuple.Mx == 0 ? 1 : Math.Sign(InitialForceTuple.Mx);
var ySign = InitialForceTuple.My == 0 ? 1 : Math.Sign(InitialForceTuple.My);
var mx = InitialForceTuple.Nz * yFullEccentricity * xSign;
var my = InitialForceTuple.Nz * xFullEccentricity * ySign;
var xSign = InitialForceTuple.Mx == 0d ? -1d : Math.Sign(InitialForceTuple.Mx);
var ySign = InitialForceTuple.My == 0d ? -1d : Math.Sign(InitialForceTuple.My);
var mx = (-1d) * InitialForceTuple.Nz * yFullEccentricity * xSign;
var my = (-1d) * InitialForceTuple.Nz * xFullEccentricity * ySign;
TraceLogger?.AddMessage(string.Format("Bending moment arbitrary X-axis Mx = {0} * {1} = {2}", InitialForceTuple.Nz, yFullEccentricity, mx), TraceLogStatuses.Debug);
TraceLogger?.AddMessage(string.Format("Bending moment arbitrary Y-axis My = {0} * {1} = {2}", InitialForceTuple.Nz, xFullEccentricity, my), TraceLogStatuses.Debug);