示例#1
0
        public static double GetApproximatedResult(IScheme scheme, IModel model, Dictionary <int, double[, ]> elementBoundaryDisplacements, double x)
        {
            ResultHelper.GetBoundaryNodes(scheme, model, x, out int startNodeNumber, out int endNodeNumber);
            int elementNumber = -1;

            if (startNodeNumber >= 1 && endNodeNumber >= 1)
            {
                elementNumber = ResultHelper.GetElementNumberContainingNodes(scheme, startNodeNumber, endNodeNumber);
            }
            if (elementNumber >= 1)
            {
                return(GetAlongTheMemberResult(scheme, model, elementBoundaryDisplacements, x, startNodeNumber, elementNumber));
            }
            return(0);
        }
示例#2
0
        /*** Private methods ***************************************************************************************************/

        private static double CalculateResultShear(IScheme scheme, IModel model, Dictionary <int, double[, ]> elementBoundaryDisplacements, double doublePosition)
        {
            ResultHelper.GetBoundaryNodes(scheme, model, doublePosition, out int startNodeNumber, out int endNodeNumber);
            int elementNumber = -1;

            if (startNodeNumber >= 1 && endNodeNumber >= 1)
            {
                elementNumber = ResultHelper.GetElementNumberContainingNodes(scheme, startNodeNumber, endNodeNumber);
            }
            if (elementNumber >= 1)
            {
                return(GetAlongTheMemberResult(model, elementBoundaryDisplacements, elementNumber));
            }
            return(0);
        }