• Sonuç bulunamadı

O sistema CAE desenvolvido, denominado WinCollapse, foi estruturado em dois módulos principais: o módulo FEMModel, que implementa o modelo de elementos finitos utilizado pelo módulo de análise, e o módulo Collapse, que implementa a formulação para análise limite de pórticos planos.

O módulo FEMModel (FIGURA 3.28) é formado pelas classes CModel, CNode,

CElement, CSection e CMaterial. Estas classes representam as entidades básicas do

modelo discreto de elementos finitos para análise limite de pórticos planos, e receberam o prefixo “C” para diferenciá-las das classes do Modelador Estrutural CAD. A classe

CNode faz a abstração dos nós da estrutura, e seus atributos são: as coordenadas nodais,

de apoio aplicadas. A abstração dos elementos finitos lineares é realizada pela classe

CElement. Esta classe possui, além de atributos para representar o carregamento e os

graus de liberdade ativos, uma coleção de objetos ou instâncias da classe CNode, um objeto Material e um objeto CSection. A classe CSection representa as seções transversais aplicadas ao objeto CElement. Seus atributos representam as propriedades geométricas dessas seções. A classe CMaterial representa os materiais aplicados aos elementos lineares. Cada objeto do tipo CMaterial armazena dados sobre as propriedades físicas a ele relacionadas. A classe CModel foi desenhada para representar o modelo estrutural, armazenando todos os elementos que compõem uma determinada estrutura através de listas encadeadas de objetos das classes CElement, CNode,

CMaterial e CSection.

FIGURA 3.28 – Classes do Modelador 2006: componente FEModel

O módulo Collapse (FIGURA 3.29) apresenta uma estrutura de classes que abstrai os componentes necessários para um sistema genérico de análise estrutural. As classes apresentadas, com exceção de Driver e Model, são classes abstratas. Para cada uma destas classes foram implementadas uma ou mais classes concretas para realizar a análise do sistema em abordagem cinemática via programação linear, utilizando o

algoritmo desenvolvido por FRANCO e PONTER15 apud SOARES (2006), e através do método da combinação de mecanismos.

FIGURA 3.29 – Classes do componente Collapse

O fluxo dos procedimentos interativos entre as classes deste componente, para realizar o processamento da análise estrutural, foi apresentado por SOARES na forma de um diagrama de seqüência16.(FIGURA 3.30)

Para executar a análise limite de pórticos planos, desenvolveu-se a classe

RigidBeam, derivada da classe CElement, que representa o elemento finito de viga

15

FRANCO J.R.Q. and PONTER A.R.S, “A general approximate technique for the finite element shakedown and limit analysis of axisymmetrical shells – Part I – Theory and fundamental relations”,

International Journal for Numerical Methods in Engineering, Vol. 40, pp. 3495-3513, (1997).

FRANCO J.R.Q. and PONTER A.R.S, “A general approximate technique for the finite element shakedown and limit analysis of axisymmetrical shells – Part II – Numerical applications”, International

Journal for Numerical Methods in Engineering, Vol. 40, pp. 3515-3536, (1997)

16

O diagrama de seqüência é um diagrama da UML que mostra as interações entre elementos em uma sequancia temporal (QUATRANI, 1998).

rígida. A classe CAssembler realiza a montagem das matrizes, dos vetores e dos objetos associados ao problema estrutural, acessando o modelo estrutural através de um objeto do tipo CModel, e o modelo de análise através do objeto do tipo CAnalysisModel. A classe Solver abstrai o processo de solução do problema estrutural. O gerenciamento dos dados, envolvendo a leitura de dados de entrada e a persistência dos resultados é realizada pela classe CDataManager. O gerenciamento geral da execução do sistema e da interação entre as classes é realizado pela classe CDriver.

FIGURA 3.30 – Diagrama de seqüência: Funcionalidade geral do sistema WinCollapse (figura extraída de SOARES, 2006)

Análise comparativa com o framework proposto

Assim como o Modelador Gráfico 3D o REMFrame apresenta uma classe

Section que realiza a abstração das seções transversais aplicadas ao objeto Bar. Para a

definição das propriedades geométricas das seções ambos trabalhos utilizaram o PROPFIG, um sistema que realiza o cálculo de diversas propriedades geométricas de seções transversais simples e compostas. Inicialmente implementado na linguagem Pascal ele foi re-implementado segundo a POO para ambos os sistemas. Soares implementou o tratamento das propriedades geométricas em uma hierarquia de classes definida a partir da classe base Section, com representação apenas das seções simples. Na presente tese separou-se representação geométrica, realizada pela hierarquia da classe Shape, do cálculo das propriedades geométricas implementada na hierarquia da classe GeomPropHandler. A classe Section é capaz de representar seções compostas formadas por um conjunto de objetos do tipo Shape, retornando as propriedades geométricas da seção composta através do somatório das propriedades de cada objeto

Shape que possui uma referência para um objeto do tipo GeomPropHandler.Nesta

organização foram utilizados os padrões Bridge e Strategy (GAMMA et al, 2000). As classes do módulo FEMModel apresentam uma forte semelhança com as classes implementadas pelo REMFrame, porém a estrutura final de relacionamentos apresenta algumas diferenças. No REMFrame a classe Model não armazena os dicionários de materiais e de seções, que ficam a cargo da classe Project. Um objeto do tipo Bar não possui referências diretas para nós, material e seções, armazenando apenas os identificadores dos elementos a ele aplicados.

Em relação ao módulo Collapse, o REMFrame apresenta a classe DataManager que realiza o gerenciamento dos dados, semelhantemente ao realizado pela classe

CDataManager. Podemos traçar um paralelo entre as funcionalidades gerais da classe CDriver do Collapse e a classe ProjectController do REMFrame, uma vez que o

gerenciamento geral da execução fica a cargo desta última, que realiza o repasse de solicitações das aplicações para as diversas classes de dados do framework.