Cross00

This is a MATLAB program for solving a continuous beam using the Cross Process. Euler-Bernoulli flexural behavior is assumed (Navier beam theory). This is an initial version without any GUI (Graphics User Interface)>

This program implements the Cross Process for continuous beams with uniformly distributed loads in each spam.

For more details of this process, refer to the book "Análise de Estruturas: Conceitos e Métodos Básicos", Second Edition, by Luiz Fernando Martha, Elsevier, 2017.

Contents

Object oriented classes

This program adopts an Object Oriented Programming (OOP) paradigm, in which the following OOP classes are implemented:

Author

Luiz Fernando Martha

History

@version 1.00

Initial version: August 2017

Initially prepared for the course CIV 2801 - Fundamentos de Computação Gráfica, 2017, second term, Department of Civil Engineering, PUC-Rio.

Clear memory

clc;
clear all;
close all;

Test model

nmemb = 3;
EI = ones(1,nmemb) * 10000;  % array member flexural stiffness values [kNm^2]
len = zeros(1,nmemb);        % array of member lengths [m]
q = zeros(1,nmemb);          % array of vertical distributed load (top-down positive) [kN/m]
len(1) = 8;
len(2) = 6;
len(3) = 8;
q(1) = 8;
q(2) = 6;
q(3) = 9;
supinit = 0;                 % flag for simply supported init node
supend = 1;                  % flag for end node with fixed rotation
decplc = 2;                  % number of decimal places for moments

Solve model iteratively and print each stage

solver = CrossSolver(nmemb,supinit,supend,decplc,EI,len,q);
% solver.goThruSolver();
solver.printModelInfo(1);
solver.initMoments();
step = 0;
while solver.autoStepSolver() ~= 0
    step = step + 1;
    fprintf(1,'\n\n******** Step: %d ********\n', step );
    solver.printResults(1);
end