SlideShare uma empresa Scribd logo
Pág.
Pág. 2
EXPERIÊNCIA NA PUC-RIO NO DESENVOLVIMENTO DE
SOFTWARE EDUCACIONAL EM MATLAB
Luiz Fernando Martha
DESENVOLVENDO UM SOFTWARE PARA CÁLCULO
ESTRUTURAL EM MATLAB
Rafael Rangel
Pág.
EXPERIÊNCIA NA PUC-RIO NO
DESENVOLVIMENTO DE SOFTWARE
EDUCACIONAL EM MATLAB
3
• O MATLAB é um ambiente de programação com alto nível de abstração
que permite a criação de aplicativos gráficos-interativos com muita
rapidez
• Professores e alunos podem criar programas de simulação com alta
qualidade de interface gráfica com pouco conhecimento de técnicas de
computação gráfica
• O MATLAB é uma poderosa ferramenta para o ensino de engenharia,
matemática, física e química não só pelo ambiente de programação, mas
também porque aplicativos educacionais stand-alones podem ser
desenvolvidos e utilizados no aprendizado em virtualmente todas as
áreas técnico-científicas
Pág. 4
• O Instituto Tecgraf/PUC-Rio, seguindo tradição e experiência no
desenvolvimento de software educacional para engenharia, está ativo
no uso do MATLAB para aumentar sua contribuição na área
EXPERIÊNCIA NA PUC-RIO NO
DESENVOLVIMENTO DE SOFTWARE
EDUCACIONAL EM MATLAB
• Outros departamentos e laboratórios também já iniciaram
desenvolvimentos de programas educacionais
• O Centro Técnico Científico (CTC) da PUC-Rio está atento para essa
nova realidade e planeja cursos para desenvolvimento de aplicativos
gráficos no ambiente MATLAB
• Dois exemplos:
e-Mohr: programa gráfico interativo para ensino de círculo de Mohr para
estado bidimensional de tensões
LESM: Linear Elements Structure Model, software para análise estrutural
Pág.
e-Mohr2
5
Este programa demostra como funciona o Círculo de
Mohr para estado plano de tensões, de uma forma
gráfica e interativa. Foi desenvolvido no contexto da
programação orientada a objetos (POO).
Autor:
Emersson Torres
(mestrado em Eng. Civil)
emersson@aluno.puc-rio.br
Pág.
Círculo de Mohr
6
Método gráfico para representar o comportamento
da tensão em um ponto de um elemento.
Pág.
Pontos de Controle
7
No programa, as componentes de tensão podem
ser ajustadas através da manipulação interativa
do mouse.
Pág.
Diagrama de Fluxo
8
Emouse
MohrEm
eCircle
eLine
MohrActionPoint
MohrInput
MohrPlotMohrStress
eQuad
eArc
dirPlot
exLine
Pág.
Classe Emouse
9
mouseMove
ebuttonDown
ebuttonUp
set( gcf, 'windowbuttonmotionfcn', @mouseMove );
set( gcf, 'windowbuttondownfcn', @ebuttonDown );
set( gcf, 'windowbuttonupfcn', @ebuttonUp );
Pág.
MohrActionPoint
10
Detecta se o ponto do cursor do mouse
está em um dos pontos de ação.
x = radius * cos( angle ) + xc;
y = radius * sin( angle ) + yc;
p = inpolygon( mousePX, mousePY, x, y );
Pág. 11
DESENVOLVENDO UM SOFTWARE
PARA CÁLCULO ESTRUTURAL EM
MATLAB
Pág.
Software para Análise Estrutural
12
• Análise Estrutural:
Estudo dos efeitos de cargas sobre estruturas físicas,
representadas por modelos simplificados, para a determinação de
seus deslocamentos e esforços internos.
• Modelo Estrutural:
Idealização da estrutura real assumindo diversas hipóteses
simplificadoras sobre o seu comportamento que permitam a sua
modelagem matemática.
• Métodos de Análise:
Consistem na discretização de um modelo estrutural em um conjunto
de parâmetros cujos valores são calculados para representar as
soluções analíticas contínuas, considerando o equilíbrio, a
compatibilidade de deslocamentos e as propriedades dos materiais.
Ex: Método dos Deslocamentos, Rigidez Direta, Elementos Finitos, etc.
Pág. 13
Software para Análise Estrutural
Um software de análise estrutural permite o cáculo rápido e preciso dos
resultados desejados, além da vizualização dos modelos e resultados através
de técnicas de computação gráfica.
Pág. 14
Software para Análise Estrutural
Um software de análise estrutural permite o cáculo rápido e preciso dos
resultados desejados, além da vizualização dos modelos e resultados através
de técnicas de computação gráfica.
Pág. 15
LESM – Linear Elements Structure Model
• Modelos estruturais reticulados.
• Método da Rigidez Direta.
Pág. 16
LESM – Linear Elements Structure Model
• Modelo com desenho da configuração deformada
Pág. 17
LESM – Linear Elements Structure Model
• Modelo com desenho do diagrama de momentos fletores
Pág. 18
Desenvolvimento de um Software de Análise
Estrutural
Mecânica Computacional = Princípios Mecânicos + Ciência da Computação
Mecânica Computacional é a disciplina que utiliza métodos computacionais para
estudar fenômenos governados pelos princípios da mecânica.
• Obtenção de um modelo matemático do problema.
• Criação de um modelo discreto aproximado a partir de um modelo contínuo
original
• Implementação de um algoritmo para calcular os valores dos parâmetros
discretos
Busca-se sempre técnicas de programação que visam a maior eficiência
computacional para a implementação do método de análise e obtenção dos
resultados.
Pág. 19
Desenvolvimento de um Software de Análise
Estrutural
Estágios de Processamento:
• Pré-processamento: Fornecimento, captura e preparação dos dados do
modelo à ser analisado (interface gráfica).
• Processamento: Cálculo dos resultados baseado nos dados fornecidos.
• Pós-processamento: Disponibilização dos resultados através de saídas
gráficas (sistema gráfico)
Dados do
modelo
Método
de análise
Resultados
numéricos
Computação
gráfica
Resultados
gráficos
Pré-processamento Processamento de dados Pós-Processamento
Pág. 20
• Um código aberto e didático para o ensino do Método da Rigidez Direta.
• Priorização da clareza do código em relação à eficiência.
• Facilidade no desenvolvimento de uma interface gráfica e visualização dos
resultados.
Motivação
Pág. 21
Vantagens do uso do MATLAB para
Aplicações de Mecânica Computacional
• Linguagem de programação de alto nível:
Nível de abstração elevado, longe do código de máquina e próximo à
linguagem humana.
MATLAB é uma linguagem de programação interpretada e considerada de 4ª
geração.
Pág. 22
• Variáveis Matriciais:
* Todas as variáveis são interpretadas como matrizes.
* Operações matriciais entre as variáveis podem ser executadas
facilmente
Ex.: [A]{X} = {B} X = B  A;
Torna muito mais fácil a implementação de um método matricial como é o caso
do Método da Rigidez Direta
Não é necessário declarar variáveis e seus tipos.
Vantagens do uso do MATLAB para
Aplicações de Mecânica Computacional
Pág. 23
Vantagens do uso do MATLAB para
Aplicações de Mecânica Computacional
• Ambiente de desenvolvimento integrado:
Ambiente de Programação com Orientação a Objetos
+
Desenvolvimento de Interface
+
Sistema Gráfico
+
Álgebra Simbólica
Pág. 24
Programação Orientada a Objetos (OOP)
OOP permite a expansão do programa
sem a alteração de das classes já
existentes.
Baseia-se na composição e interação de unidades de sotware chamadas objetos.
Definições importantes:
• Classe: Representa um conjunto de variáveis e funções que agrupam objetos.
• Objetos: São instâncias de uma classe.
• Atributos: São as variáveis que representam as características dos objetos.
• Métodos: São as funções que definem as habilidades de um objeto.
• Herança: Permite o aproveitamento do código de uma classe base para
implementações específicas em subclasses.
Pág. 25
Classes Anm: Implementam funções que se diferenciam entre os tipos de modelo
estrutural.
Classes Draw: Responsáveis por implementar funções para desenhar o modelo e os
diagramas dos resultados.
Classe Drv: Classe que dirige o processo de análise e que possui todas as
informações do modelo
Classes Elem: Implementam funções relacionadas à rigidez que se diferenciam
entre os tipos de modelos matemáticos das barras.
Classes Lelem: Implementam funções relacionadas ao carregamento que se
diferenciam entre os tipos de modelos matemáticos das barras.
Classe Material: Classe com as propriedades físicas dos materiais.
Classes Print: Responsáveis por imprimir os resultados da análise em forma textual.
Classe Section: Classe com as propriedades geométricas das seções transversais.
Classe Node: Classe com informações sobre os pontos de discretização do modelo.
Organização do programa em arquivos .m com scrpits (rotinas) de código.
Programação Orientada a Objetos (OOP)
Pág. 26
Programação Orientada a Objetos (OOP)
Diagrama de Classes (padrão UML):
Apresenta uma visão estática da organização das classes do programa e
a forma com a qual elas se relacionam.
O MATLAB fornece um ambiente de compilação dos arquivos em um executável
stand-alone.
Pág. 27
O Ambiente GUIDE
Orientação a Eventos
• Ambiente para o desenvolvimento de interface gráfica de forma interativa.
• Os componentes são adicionados por meio de sistema de drag-and-drop.
• Um arquivo .m baseado no paradigma de Orientação a Eventos é
automaticamente gerado
• O fluxo do código é guiado por indicações externas chamadas eventos.
• Eventos são as diferentes ações que usuários podem realizar sobre os
componentes adicionados à interface.
• Cada evento está associado à uma função chamada Callback, disparada
quando se verifica a ocorrência de tal evento, que define a reação do programa.
Button1_click_CallbackFuntion
{...}
Button2_click_CallbackFuntion
{...}
Button3_click_CallbackFuntion
{...}Click
Pág. 28
Livescript e Álgebra Simbólica
• Ambiente de manipulação de equações matemáticas e expressões em forma
simbólica.
• Utilizado para gerar as expressões dos modelos matemáticos que representam
o comportamento das barras.
Pág. 29
Documentação
• O comando Publish:
A documentação do código é geralmente feita através de comentários,
sendo importante para deixá-lo claro e compreensível.
O MATLAB, através de uma certa disciplina de comentários e o comando
Publish, permite criar arquivos formatados apresentáveis para serem
publicados e compartilhados.
Arquivo .m Arquivo .html
Pág. 30
• Diagramas UML (Unified Modeling Language):
Auxiliam a vizualização da comunicação entre as classes e objetos do
programa, através de diagramas padronizados.
Documentação
www.tecgraf.puc-rio/lesm
Diagrama de Atividade Diagrama de Sequência
Pág.
OBRIGADO!
Luiz Fernando Martha – lfm@tecgraf@puc-rio.br
Rafael Lopez Rangel – rafaelrangel@tecgraf.puc-rio.br
www.tecgraf.puc-rio/lesm

Mais conteúdo relacionado

Semelhante a Apresentação Prof. Luis Fernando Martha e Rafael Rangel

Openday PUC-RIO - Ferramenta gráfica para modelagem e análise em Engenharia E...
Openday PUC-RIO - Ferramenta gráfica para modelagem e análise em Engenharia E...Openday PUC-RIO - Ferramenta gráfica para modelagem e análise em Engenharia E...
Openday PUC-RIO - Ferramenta gráfica para modelagem e análise em Engenharia E...Opencadd Advanced Technology
 
Gestão de Projectos de SW OO Métricas Estimações e Planificações
Gestão de Projectos de SW OO Métricas Estimações e PlanificaçõesGestão de Projectos de SW OO Métricas Estimações e Planificações
Gestão de Projectos de SW OO Métricas Estimações e PlanificaçõesRogerio P C do Nascimento
 
Machine Learning: Do Notebook ao modelo em produção
Machine Learning: Do Notebook ao modelo em produçãoMachine Learning: Do Notebook ao modelo em produção
Machine Learning: Do Notebook ao modelo em produçãoMarlesson Santana
 
MC-102 — Aula 01 Introdução à Programação de Computadores.pdf
MC-102 — Aula 01 Introdução à Programação de Computadores.pdfMC-102 — Aula 01 Introdução à Programação de Computadores.pdf
MC-102 — Aula 01 Introdução à Programação de Computadores.pdfLuanaBatista74
 
Conceitos e técnicas de programação aula 2
Conceitos e técnicas de programação aula 2Conceitos e técnicas de programação aula 2
Conceitos e técnicas de programação aula 2Robson Ferreira
 
Introdução à utilização de openFrameworks para o desenvolvimento de aplicaçõ...
Introdução à utilização de openFrameworks para  o desenvolvimento de aplicaçõ...Introdução à utilização de openFrameworks para  o desenvolvimento de aplicaçõ...
Introdução à utilização de openFrameworks para o desenvolvimento de aplicaçõ...Christopher Cerqueira
 
Introdução à Engenharia de Software e UML
Introdução à Engenharia de Software e UMLIntrodução à Engenharia de Software e UML
Introdução à Engenharia de Software e UMLNatanael Simões
 
Saam & arquiteturas_iu_halan
Saam & arquiteturas_iu_halanSaam & arquiteturas_iu_halan
Saam & arquiteturas_iu_halanHalan Ridolphi
 
Intro padroesprojetoadaptertemplateobserver
Intro padroesprojetoadaptertemplateobserverIntro padroesprojetoadaptertemplateobserver
Intro padroesprojetoadaptertemplateobserverEduardo Jorge
 
Projeto de Software - PIC Eletrônico - Gerência de Projetos UFAM 2012/2
Projeto de Software - PIC Eletrônico - Gerência de Projetos UFAM 2012/2Projeto de Software - PIC Eletrônico - Gerência de Projetos UFAM 2012/2
Projeto de Software - PIC Eletrônico - Gerência de Projetos UFAM 2012/2Urique Hoffmann
 
Algoritmos de Estimação de Distribuição Aplicados à Estimativa de Software
Algoritmos de Estimação de Distribuição Aplicados à Estimativa de SoftwareAlgoritmos de Estimação de Distribuição Aplicados à Estimativa de Software
Algoritmos de Estimação de Distribuição Aplicados à Estimativa de SoftwareJosé Corrêa Viana
 
Aula6 programação
Aula6 programaçãoAula6 programação
Aula6 programaçãoIFPB
 

Semelhante a Apresentação Prof. Luis Fernando Martha e Rafael Rangel (20)

Openday PUC-RIO - Ferramenta gráfica para modelagem e análise em Engenharia E...
Openday PUC-RIO - Ferramenta gráfica para modelagem e análise em Engenharia E...Openday PUC-RIO - Ferramenta gráfica para modelagem e análise em Engenharia E...
Openday PUC-RIO - Ferramenta gráfica para modelagem e análise em Engenharia E...
 
apostila matlab
apostila matlabapostila matlab
apostila matlab
 
Apostila matlab
Apostila matlabApostila matlab
Apostila matlab
 
Apostila 20 matlab
Apostila 20 matlabApostila 20 matlab
Apostila 20 matlab
 
Pi raciocinio lógico
Pi   raciocinio lógicoPi   raciocinio lógico
Pi raciocinio lógico
 
Gestão de Projectos de SW OO Métricas Estimações e Planificações
Gestão de Projectos de SW OO Métricas Estimações e PlanificaçõesGestão de Projectos de SW OO Métricas Estimações e Planificações
Gestão de Projectos de SW OO Métricas Estimações e Planificações
 
Machine Learning: Do Notebook ao modelo em produção
Machine Learning: Do Notebook ao modelo em produçãoMachine Learning: Do Notebook ao modelo em produção
Machine Learning: Do Notebook ao modelo em produção
 
MC-102 — Aula 01 Introdução à Programação de Computadores.pdf
MC-102 — Aula 01 Introdução à Programação de Computadores.pdfMC-102 — Aula 01 Introdução à Programação de Computadores.pdf
MC-102 — Aula 01 Introdução à Programação de Computadores.pdf
 
Conceitos e técnicas de programação aula 2
Conceitos e técnicas de programação aula 2Conceitos e técnicas de programação aula 2
Conceitos e técnicas de programação aula 2
 
Introdução à utilização de openFrameworks para o desenvolvimento de aplicaçõ...
Introdução à utilização de openFrameworks para  o desenvolvimento de aplicaçõ...Introdução à utilização de openFrameworks para  o desenvolvimento de aplicaçõ...
Introdução à utilização de openFrameworks para o desenvolvimento de aplicaçõ...
 
Introdução à Engenharia de Software e UML
Introdução à Engenharia de Software e UMLIntrodução à Engenharia de Software e UML
Introdução à Engenharia de Software e UML
 
Diagrama Automatizado
Diagrama AutomatizadoDiagrama Automatizado
Diagrama Automatizado
 
Simulador de Processos EMSO
Simulador de Processos EMSOSimulador de Processos EMSO
Simulador de Processos EMSO
 
ava facul uva unijorge (146).pdf
ava facul uva unijorge (146).pdfava facul uva unijorge (146).pdf
ava facul uva unijorge (146).pdf
 
Saam & arquiteturas_iu_halan
Saam & arquiteturas_iu_halanSaam & arquiteturas_iu_halan
Saam & arquiteturas_iu_halan
 
Intro padroesprojetoadaptertemplateobserver
Intro padroesprojetoadaptertemplateobserverIntro padroesprojetoadaptertemplateobserver
Intro padroesprojetoadaptertemplateobserver
 
Projeto de Software - PIC Eletrônico - Gerência de Projetos UFAM 2012/2
Projeto de Software - PIC Eletrônico - Gerência de Projetos UFAM 2012/2Projeto de Software - PIC Eletrônico - Gerência de Projetos UFAM 2012/2
Projeto de Software - PIC Eletrônico - Gerência de Projetos UFAM 2012/2
 
Algoritmos de Estimação de Distribuição Aplicados à Estimativa de Software
Algoritmos de Estimação de Distribuição Aplicados à Estimativa de SoftwareAlgoritmos de Estimação de Distribuição Aplicados à Estimativa de Software
Algoritmos de Estimação de Distribuição Aplicados à Estimativa de Software
 
Curso matlab
Curso matlabCurso matlab
Curso matlab
 
Aula6 programação
Aula6 programaçãoAula6 programação
Aula6 programação
 

Mais de Opencadd Advanced Technology

Openday PUC-RIO - Indústria 4.0 e aplicação no segmento de ar condicionado
Openday PUC-RIO - Indústria 4.0 e aplicação no segmento de ar condicionadoOpenday PUC-RIO - Indústria 4.0 e aplicação no segmento de ar condicionado
Openday PUC-RIO - Indústria 4.0 e aplicação no segmento de ar condicionadoOpencadd Advanced Technology
 
Openday PUC-RIO - Determinação da Trajetória ótima em pistas de corrida com r...
Openday PUC-RIO - Determinação da Trajetória ótima em pistas de corrida com r...Openday PUC-RIO - Determinação da Trajetória ótima em pistas de corrida com r...
Openday PUC-RIO - Determinação da Trajetória ótima em pistas de corrida com r...Opencadd Advanced Technology
 
Openday PUC-RIO - Detecção de Operação Anormal em Aero Geradores
Openday PUC-RIO - Detecção de Operação Anormal em Aero GeradoresOpenday PUC-RIO - Detecção de Operação Anormal em Aero Geradores
Openday PUC-RIO - Detecção de Operação Anormal em Aero GeradoresOpencadd Advanced Technology
 
Openday PUC-RIO - Transmissão de dados pela luz visível
Openday PUC-RIO - Transmissão de dados pela luz visívelOpenday PUC-RIO - Transmissão de dados pela luz visível
Openday PUC-RIO - Transmissão de dados pela luz visívelOpencadd Advanced Technology
 
Indústria 4.0 - Vantagens e Impactos para a sociedade. Fabiana Tarabal
Indústria 4.0 - Vantagens e Impactos para a sociedade. Fabiana TarabalIndústria 4.0 - Vantagens e Impactos para a sociedade. Fabiana Tarabal
Indústria 4.0 - Vantagens e Impactos para a sociedade. Fabiana TarabalOpencadd Advanced Technology
 
Desenvolvimento de software autônomo para determinação e controle de órbita e...
Desenvolvimento de software autônomo para determinação e controle de órbita e...Desenvolvimento de software autônomo para determinação e controle de órbita e...
Desenvolvimento de software autônomo para determinação e controle de órbita e...Opencadd Advanced Technology
 
Simulação e desenvolvimento de algoritmos de tempo real usando Matlab/Simulin...
Simulação e desenvolvimento de algoritmos de tempo real usando Matlab/Simulin...Simulação e desenvolvimento de algoritmos de tempo real usando Matlab/Simulin...
Simulação e desenvolvimento de algoritmos de tempo real usando Matlab/Simulin...Opencadd Advanced Technology
 
Breve histórico da engenharia de sistemas no Brasil e as Iniciativas atuais d...
Breve histórico da engenharia de sistemas no Brasil e as Iniciativas atuais d...Breve histórico da engenharia de sistemas no Brasil e as Iniciativas atuais d...
Breve histórico da engenharia de sistemas no Brasil e as Iniciativas atuais d...Opencadd Advanced Technology
 
Utilização da Engenharia de Requisitos: Onde, quando e como utilizar
Utilização da Engenharia de Requisitos: Onde, quando e como utilizarUtilização da Engenharia de Requisitos: Onde, quando e como utilizar
Utilização da Engenharia de Requisitos: Onde, quando e como utilizarOpencadd Advanced Technology
 

Mais de Opencadd Advanced Technology (20)

Openday PUC-RIO - Indústria 4.0 e aplicação no segmento de ar condicionado
Openday PUC-RIO - Indústria 4.0 e aplicação no segmento de ar condicionadoOpenday PUC-RIO - Indústria 4.0 e aplicação no segmento de ar condicionado
Openday PUC-RIO - Indústria 4.0 e aplicação no segmento de ar condicionado
 
Openday PUC-RIO - Determinação da Trajetória ótima em pistas de corrida com r...
Openday PUC-RIO - Determinação da Trajetória ótima em pistas de corrida com r...Openday PUC-RIO - Determinação da Trajetória ótima em pistas de corrida com r...
Openday PUC-RIO - Determinação da Trajetória ótima em pistas de corrida com r...
 
Openday PUC-RIO - Detecção de Operação Anormal em Aero Geradores
Openday PUC-RIO - Detecção de Operação Anormal em Aero GeradoresOpenday PUC-RIO - Detecção de Operação Anormal em Aero Geradores
Openday PUC-RIO - Detecção de Operação Anormal em Aero Geradores
 
Openday PUC-RIO - Transmissão de dados pela luz visível
Openday PUC-RIO - Transmissão de dados pela luz visívelOpenday PUC-RIO - Transmissão de dados pela luz visível
Openday PUC-RIO - Transmissão de dados pela luz visível
 
Openday PUC-RIO - Engenharia de Requisitos
Openday PUC-RIO - Engenharia de RequisitosOpenday PUC-RIO - Engenharia de Requisitos
Openday PUC-RIO - Engenharia de Requisitos
 
INOVADEF - Apresentação Brigadeiro Romão
INOVADEF - Apresentação Brigadeiro RomãoINOVADEF - Apresentação Brigadeiro Romão
INOVADEF - Apresentação Brigadeiro Romão
 
INOVADEF - Apresentação Marcelo Lopes
INOVADEF - Apresentação Marcelo LopesINOVADEF - Apresentação Marcelo Lopes
INOVADEF - Apresentação Marcelo Lopes
 
INOVADEF - Apresentação Sender Rocha
INOVADEF - Apresentação Sender RochaINOVADEF - Apresentação Sender Rocha
INOVADEF - Apresentação Sender Rocha
 
Apresentação Allyson Chiarini
Apresentação Allyson ChiariniApresentação Allyson Chiarini
Apresentação Allyson Chiarini
 
Apresentação Osvaldo Maia
Apresentação Osvaldo MaiaApresentação Osvaldo Maia
Apresentação Osvaldo Maia
 
Indústria 4.0 - Vantagens e Impactos para a sociedade. Fabiana Tarabal
Indústria 4.0 - Vantagens e Impactos para a sociedade. Fabiana TarabalIndústria 4.0 - Vantagens e Impactos para a sociedade. Fabiana Tarabal
Indústria 4.0 - Vantagens e Impactos para a sociedade. Fabiana Tarabal
 
Licenciamento math works
Licenciamento math worksLicenciamento math works
Licenciamento math works
 
Webinar Classificação Images com MATLAB
Webinar Classificação Images com MATLABWebinar Classificação Images com MATLAB
Webinar Classificação Images com MATLAB
 
Webinar Novidades da Release R2017b
Webinar Novidades da Release R2017bWebinar Novidades da Release R2017b
Webinar Novidades da Release R2017b
 
Desenvolvimento de software autônomo para determinação e controle de órbita e...
Desenvolvimento de software autônomo para determinação e controle de órbita e...Desenvolvimento de software autônomo para determinação e controle de órbita e...
Desenvolvimento de software autônomo para determinação e controle de órbita e...
 
Simulação e desenvolvimento de algoritmos de tempo real usando Matlab/Simulin...
Simulação e desenvolvimento de algoritmos de tempo real usando Matlab/Simulin...Simulação e desenvolvimento de algoritmos de tempo real usando Matlab/Simulin...
Simulação e desenvolvimento de algoritmos de tempo real usando Matlab/Simulin...
 
Breve histórico da engenharia de sistemas no Brasil e as Iniciativas atuais d...
Breve histórico da engenharia de sistemas no Brasil e as Iniciativas atuais d...Breve histórico da engenharia de sistemas no Brasil e as Iniciativas atuais d...
Breve histórico da engenharia de sistemas no Brasil e as Iniciativas atuais d...
 
Utilização da Engenharia de Requisitos: Onde, quando e como utilizar
Utilização da Engenharia de Requisitos: Onde, quando e como utilizarUtilização da Engenharia de Requisitos: Onde, quando e como utilizar
Utilização da Engenharia de Requisitos: Onde, quando e como utilizar
 
Visão Computacional
Visão ComputacionalVisão Computacional
Visão Computacional
 
Webinar SDR
Webinar SDRWebinar SDR
Webinar SDR
 

Último

Nós Propomos! Infraestruturas em Proença-a-Nova
Nós Propomos! Infraestruturas em Proença-a-NovaNós Propomos! Infraestruturas em Proença-a-Nova
Nós Propomos! Infraestruturas em Proença-a-NovaIlda Bicacro
 
Os Tempos Verbais em Inglês-tempos -dos-
Os Tempos Verbais em Inglês-tempos -dos-Os Tempos Verbais em Inglês-tempos -dos-
Os Tempos Verbais em Inglês-tempos -dos-carloseduardogonalve36
 
Labor e Trabalho em A Condição Humana de Hannah Arendt .pdf
Labor e Trabalho em A Condição Humana de Hannah Arendt .pdfLabor e Trabalho em A Condição Humana de Hannah Arendt .pdf
Labor e Trabalho em A Condição Humana de Hannah Arendt .pdfemeio123
 
Atividade do poema sobre mãe de mário quintana.pdf
Atividade do poema sobre mãe de mário quintana.pdfAtividade do poema sobre mãe de mário quintana.pdf
Atividade do poema sobre mãe de mário quintana.pdfmaria794949
 
Slides Lição 8, Central Gospel, Os 144 Mil Que Não Se Curvarão Ao Anticristo....
Slides Lição 8, Central Gospel, Os 144 Mil Que Não Se Curvarão Ao Anticristo....Slides Lição 8, Central Gospel, Os 144 Mil Que Não Se Curvarão Ao Anticristo....
Slides Lição 8, Central Gospel, Os 144 Mil Que Não Se Curvarão Ao Anticristo....LuizHenriquedeAlmeid6
 
Multiplicação - Caça-número
Multiplicação - Caça-número Multiplicação - Caça-número
Multiplicação - Caça-número Mary Alvarenga
 
GRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdf
GRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdfGRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdf
GRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdfrarakey779
 
AULA Saúde e tradição-3º Bimestre tscqv.pptx
AULA Saúde e tradição-3º Bimestre tscqv.pptxAULA Saúde e tradição-3º Bimestre tscqv.pptx
AULA Saúde e tradição-3º Bimestre tscqv.pptxGraycyelleCavalcanti
 
prova do exame nacional Port. 2008 - 2ª fase - Criterios.pdf
prova do exame nacional Port. 2008 - 2ª fase - Criterios.pdfprova do exame nacional Port. 2008 - 2ª fase - Criterios.pdf
prova do exame nacional Port. 2008 - 2ª fase - Criterios.pdfssuser06ee57
 
Slides Lição 8, Betel, Ordenança para confessar os pecados e perdoar as ofens...
Slides Lição 8, Betel, Ordenança para confessar os pecados e perdoar as ofens...Slides Lição 8, Betel, Ordenança para confessar os pecados e perdoar as ofens...
Slides Lição 8, Betel, Ordenança para confessar os pecados e perdoar as ofens...LuizHenriquedeAlmeid6
 
UFCD_9184_Saúde, nutrição, higiene, segurança, repouso e conforto da criança ...
UFCD_9184_Saúde, nutrição, higiene, segurança, repouso e conforto da criança ...UFCD_9184_Saúde, nutrição, higiene, segurança, repouso e conforto da criança ...
UFCD_9184_Saúde, nutrição, higiene, segurança, repouso e conforto da criança ...Manuais Formação
 
bem estar animal em proteção integrada componente animal
bem estar animal em proteção integrada componente animalbem estar animal em proteção integrada componente animal
bem estar animal em proteção integrada componente animalcarlamgalves5
 
5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf
5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf
5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdfedjailmax
 
livro para educação infantil conceitos sensorial
livro para educação infantil conceitos sensoriallivro para educação infantil conceitos sensorial
livro para educação infantil conceitos sensorialNeuroppIsnayaLciaMar
 
Meu corpo - Ruth Rocha e Anna Flora livro
Meu corpo - Ruth Rocha e Anna Flora livroMeu corpo - Ruth Rocha e Anna Flora livro
Meu corpo - Ruth Rocha e Anna Flora livroBrenda Fritz
 
Atividades-Sobre-o-Conto-Venha-Ver-o-Por-Do-Sol.docx
Atividades-Sobre-o-Conto-Venha-Ver-o-Por-Do-Sol.docxAtividades-Sobre-o-Conto-Venha-Ver-o-Por-Do-Sol.docx
Atividades-Sobre-o-Conto-Venha-Ver-o-Por-Do-Sol.docxSolangeWaltre
 
04_GuiaDoCurso_Neurociência, Psicologia Positiva e Mindfulness.pdf
04_GuiaDoCurso_Neurociência, Psicologia Positiva e Mindfulness.pdf04_GuiaDoCurso_Neurociência, Psicologia Positiva e Mindfulness.pdf
04_GuiaDoCurso_Neurociência, Psicologia Positiva e Mindfulness.pdfARIANAMENDES11
 
Memórias_póstumas_de_Brás_Cubas_ Machado_de_Assis
Memórias_póstumas_de_Brás_Cubas_ Machado_de_AssisMemórias_póstumas_de_Brás_Cubas_ Machado_de_Assis
Memórias_póstumas_de_Brás_Cubas_ Machado_de_Assisbrunocali007
 
São Filipe Neri, fundador da a Congregação do Oratório 1515-1595.pptx
São Filipe Neri, fundador da a Congregação do Oratório 1515-1595.pptxSão Filipe Neri, fundador da a Congregação do Oratório 1515-1595.pptx
São Filipe Neri, fundador da a Congregação do Oratório 1515-1595.pptxMartin M Flynn
 
Campanha 18 de. Maio laranja dds.pptx
Campanha 18 de.    Maio laranja dds.pptxCampanha 18 de.    Maio laranja dds.pptx
Campanha 18 de. Maio laranja dds.pptxlucioalmeida2702
 

Último (20)

Nós Propomos! Infraestruturas em Proença-a-Nova
Nós Propomos! Infraestruturas em Proença-a-NovaNós Propomos! Infraestruturas em Proença-a-Nova
Nós Propomos! Infraestruturas em Proença-a-Nova
 
Os Tempos Verbais em Inglês-tempos -dos-
Os Tempos Verbais em Inglês-tempos -dos-Os Tempos Verbais em Inglês-tempos -dos-
Os Tempos Verbais em Inglês-tempos -dos-
 
Labor e Trabalho em A Condição Humana de Hannah Arendt .pdf
Labor e Trabalho em A Condição Humana de Hannah Arendt .pdfLabor e Trabalho em A Condição Humana de Hannah Arendt .pdf
Labor e Trabalho em A Condição Humana de Hannah Arendt .pdf
 
Atividade do poema sobre mãe de mário quintana.pdf
Atividade do poema sobre mãe de mário quintana.pdfAtividade do poema sobre mãe de mário quintana.pdf
Atividade do poema sobre mãe de mário quintana.pdf
 
Slides Lição 8, Central Gospel, Os 144 Mil Que Não Se Curvarão Ao Anticristo....
Slides Lição 8, Central Gospel, Os 144 Mil Que Não Se Curvarão Ao Anticristo....Slides Lição 8, Central Gospel, Os 144 Mil Que Não Se Curvarão Ao Anticristo....
Slides Lição 8, Central Gospel, Os 144 Mil Que Não Se Curvarão Ao Anticristo....
 
Multiplicação - Caça-número
Multiplicação - Caça-número Multiplicação - Caça-número
Multiplicação - Caça-número
 
GRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdf
GRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdfGRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdf
GRAMÁTICA NORMATIVA DA LÍNGUA PORTUGUESA UM GUIA COMPLETO DO IDIOMA.pdf
 
AULA Saúde e tradição-3º Bimestre tscqv.pptx
AULA Saúde e tradição-3º Bimestre tscqv.pptxAULA Saúde e tradição-3º Bimestre tscqv.pptx
AULA Saúde e tradição-3º Bimestre tscqv.pptx
 
prova do exame nacional Port. 2008 - 2ª fase - Criterios.pdf
prova do exame nacional Port. 2008 - 2ª fase - Criterios.pdfprova do exame nacional Port. 2008 - 2ª fase - Criterios.pdf
prova do exame nacional Port. 2008 - 2ª fase - Criterios.pdf
 
Slides Lição 8, Betel, Ordenança para confessar os pecados e perdoar as ofens...
Slides Lição 8, Betel, Ordenança para confessar os pecados e perdoar as ofens...Slides Lição 8, Betel, Ordenança para confessar os pecados e perdoar as ofens...
Slides Lição 8, Betel, Ordenança para confessar os pecados e perdoar as ofens...
 
UFCD_9184_Saúde, nutrição, higiene, segurança, repouso e conforto da criança ...
UFCD_9184_Saúde, nutrição, higiene, segurança, repouso e conforto da criança ...UFCD_9184_Saúde, nutrição, higiene, segurança, repouso e conforto da criança ...
UFCD_9184_Saúde, nutrição, higiene, segurança, repouso e conforto da criança ...
 
bem estar animal em proteção integrada componente animal
bem estar animal em proteção integrada componente animalbem estar animal em proteção integrada componente animal
bem estar animal em proteção integrada componente animal
 
5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf
5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf
5ca0e9_ea0307e5baa1478490e87a15cb4ee530.pdf
 
livro para educação infantil conceitos sensorial
livro para educação infantil conceitos sensoriallivro para educação infantil conceitos sensorial
livro para educação infantil conceitos sensorial
 
Meu corpo - Ruth Rocha e Anna Flora livro
Meu corpo - Ruth Rocha e Anna Flora livroMeu corpo - Ruth Rocha e Anna Flora livro
Meu corpo - Ruth Rocha e Anna Flora livro
 
Atividades-Sobre-o-Conto-Venha-Ver-o-Por-Do-Sol.docx
Atividades-Sobre-o-Conto-Venha-Ver-o-Por-Do-Sol.docxAtividades-Sobre-o-Conto-Venha-Ver-o-Por-Do-Sol.docx
Atividades-Sobre-o-Conto-Venha-Ver-o-Por-Do-Sol.docx
 
04_GuiaDoCurso_Neurociência, Psicologia Positiva e Mindfulness.pdf
04_GuiaDoCurso_Neurociência, Psicologia Positiva e Mindfulness.pdf04_GuiaDoCurso_Neurociência, Psicologia Positiva e Mindfulness.pdf
04_GuiaDoCurso_Neurociência, Psicologia Positiva e Mindfulness.pdf
 
Memórias_póstumas_de_Brás_Cubas_ Machado_de_Assis
Memórias_póstumas_de_Brás_Cubas_ Machado_de_AssisMemórias_póstumas_de_Brás_Cubas_ Machado_de_Assis
Memórias_póstumas_de_Brás_Cubas_ Machado_de_Assis
 
São Filipe Neri, fundador da a Congregação do Oratório 1515-1595.pptx
São Filipe Neri, fundador da a Congregação do Oratório 1515-1595.pptxSão Filipe Neri, fundador da a Congregação do Oratório 1515-1595.pptx
São Filipe Neri, fundador da a Congregação do Oratório 1515-1595.pptx
 
Campanha 18 de. Maio laranja dds.pptx
Campanha 18 de.    Maio laranja dds.pptxCampanha 18 de.    Maio laranja dds.pptx
Campanha 18 de. Maio laranja dds.pptx
 

Apresentação Prof. Luis Fernando Martha e Rafael Rangel

  • 2. Pág. 2 EXPERIÊNCIA NA PUC-RIO NO DESENVOLVIMENTO DE SOFTWARE EDUCACIONAL EM MATLAB Luiz Fernando Martha DESENVOLVENDO UM SOFTWARE PARA CÁLCULO ESTRUTURAL EM MATLAB Rafael Rangel
  • 3. Pág. EXPERIÊNCIA NA PUC-RIO NO DESENVOLVIMENTO DE SOFTWARE EDUCACIONAL EM MATLAB 3 • O MATLAB é um ambiente de programação com alto nível de abstração que permite a criação de aplicativos gráficos-interativos com muita rapidez • Professores e alunos podem criar programas de simulação com alta qualidade de interface gráfica com pouco conhecimento de técnicas de computação gráfica • O MATLAB é uma poderosa ferramenta para o ensino de engenharia, matemática, física e química não só pelo ambiente de programação, mas também porque aplicativos educacionais stand-alones podem ser desenvolvidos e utilizados no aprendizado em virtualmente todas as áreas técnico-científicas
  • 4. Pág. 4 • O Instituto Tecgraf/PUC-Rio, seguindo tradição e experiência no desenvolvimento de software educacional para engenharia, está ativo no uso do MATLAB para aumentar sua contribuição na área EXPERIÊNCIA NA PUC-RIO NO DESENVOLVIMENTO DE SOFTWARE EDUCACIONAL EM MATLAB • Outros departamentos e laboratórios também já iniciaram desenvolvimentos de programas educacionais • O Centro Técnico Científico (CTC) da PUC-Rio está atento para essa nova realidade e planeja cursos para desenvolvimento de aplicativos gráficos no ambiente MATLAB • Dois exemplos: e-Mohr: programa gráfico interativo para ensino de círculo de Mohr para estado bidimensional de tensões LESM: Linear Elements Structure Model, software para análise estrutural
  • 5. Pág. e-Mohr2 5 Este programa demostra como funciona o Círculo de Mohr para estado plano de tensões, de uma forma gráfica e interativa. Foi desenvolvido no contexto da programação orientada a objetos (POO). Autor: Emersson Torres (mestrado em Eng. Civil) emersson@aluno.puc-rio.br
  • 6. Pág. Círculo de Mohr 6 Método gráfico para representar o comportamento da tensão em um ponto de um elemento.
  • 7. Pág. Pontos de Controle 7 No programa, as componentes de tensão podem ser ajustadas através da manipulação interativa do mouse.
  • 9. Pág. Classe Emouse 9 mouseMove ebuttonDown ebuttonUp set( gcf, 'windowbuttonmotionfcn', @mouseMove ); set( gcf, 'windowbuttondownfcn', @ebuttonDown ); set( gcf, 'windowbuttonupfcn', @ebuttonUp );
  • 10. Pág. MohrActionPoint 10 Detecta se o ponto do cursor do mouse está em um dos pontos de ação. x = radius * cos( angle ) + xc; y = radius * sin( angle ) + yc; p = inpolygon( mousePX, mousePY, x, y );
  • 11. Pág. 11 DESENVOLVENDO UM SOFTWARE PARA CÁLCULO ESTRUTURAL EM MATLAB
  • 12. Pág. Software para Análise Estrutural 12 • Análise Estrutural: Estudo dos efeitos de cargas sobre estruturas físicas, representadas por modelos simplificados, para a determinação de seus deslocamentos e esforços internos. • Modelo Estrutural: Idealização da estrutura real assumindo diversas hipóteses simplificadoras sobre o seu comportamento que permitam a sua modelagem matemática. • Métodos de Análise: Consistem na discretização de um modelo estrutural em um conjunto de parâmetros cujos valores são calculados para representar as soluções analíticas contínuas, considerando o equilíbrio, a compatibilidade de deslocamentos e as propriedades dos materiais. Ex: Método dos Deslocamentos, Rigidez Direta, Elementos Finitos, etc.
  • 13. Pág. 13 Software para Análise Estrutural Um software de análise estrutural permite o cáculo rápido e preciso dos resultados desejados, além da vizualização dos modelos e resultados através de técnicas de computação gráfica.
  • 14. Pág. 14 Software para Análise Estrutural Um software de análise estrutural permite o cáculo rápido e preciso dos resultados desejados, além da vizualização dos modelos e resultados através de técnicas de computação gráfica.
  • 15. Pág. 15 LESM – Linear Elements Structure Model • Modelos estruturais reticulados. • Método da Rigidez Direta.
  • 16. Pág. 16 LESM – Linear Elements Structure Model • Modelo com desenho da configuração deformada
  • 17. Pág. 17 LESM – Linear Elements Structure Model • Modelo com desenho do diagrama de momentos fletores
  • 18. Pág. 18 Desenvolvimento de um Software de Análise Estrutural Mecânica Computacional = Princípios Mecânicos + Ciência da Computação Mecânica Computacional é a disciplina que utiliza métodos computacionais para estudar fenômenos governados pelos princípios da mecânica. • Obtenção de um modelo matemático do problema. • Criação de um modelo discreto aproximado a partir de um modelo contínuo original • Implementação de um algoritmo para calcular os valores dos parâmetros discretos Busca-se sempre técnicas de programação que visam a maior eficiência computacional para a implementação do método de análise e obtenção dos resultados.
  • 19. Pág. 19 Desenvolvimento de um Software de Análise Estrutural Estágios de Processamento: • Pré-processamento: Fornecimento, captura e preparação dos dados do modelo à ser analisado (interface gráfica). • Processamento: Cálculo dos resultados baseado nos dados fornecidos. • Pós-processamento: Disponibilização dos resultados através de saídas gráficas (sistema gráfico) Dados do modelo Método de análise Resultados numéricos Computação gráfica Resultados gráficos Pré-processamento Processamento de dados Pós-Processamento
  • 20. Pág. 20 • Um código aberto e didático para o ensino do Método da Rigidez Direta. • Priorização da clareza do código em relação à eficiência. • Facilidade no desenvolvimento de uma interface gráfica e visualização dos resultados. Motivação
  • 21. Pág. 21 Vantagens do uso do MATLAB para Aplicações de Mecânica Computacional • Linguagem de programação de alto nível: Nível de abstração elevado, longe do código de máquina e próximo à linguagem humana. MATLAB é uma linguagem de programação interpretada e considerada de 4ª geração.
  • 22. Pág. 22 • Variáveis Matriciais: * Todas as variáveis são interpretadas como matrizes. * Operações matriciais entre as variáveis podem ser executadas facilmente Ex.: [A]{X} = {B} X = B A; Torna muito mais fácil a implementação de um método matricial como é o caso do Método da Rigidez Direta Não é necessário declarar variáveis e seus tipos. Vantagens do uso do MATLAB para Aplicações de Mecânica Computacional
  • 23. Pág. 23 Vantagens do uso do MATLAB para Aplicações de Mecânica Computacional • Ambiente de desenvolvimento integrado: Ambiente de Programação com Orientação a Objetos + Desenvolvimento de Interface + Sistema Gráfico + Álgebra Simbólica
  • 24. Pág. 24 Programação Orientada a Objetos (OOP) OOP permite a expansão do programa sem a alteração de das classes já existentes. Baseia-se na composição e interação de unidades de sotware chamadas objetos. Definições importantes: • Classe: Representa um conjunto de variáveis e funções que agrupam objetos. • Objetos: São instâncias de uma classe. • Atributos: São as variáveis que representam as características dos objetos. • Métodos: São as funções que definem as habilidades de um objeto. • Herança: Permite o aproveitamento do código de uma classe base para implementações específicas em subclasses.
  • 25. Pág. 25 Classes Anm: Implementam funções que se diferenciam entre os tipos de modelo estrutural. Classes Draw: Responsáveis por implementar funções para desenhar o modelo e os diagramas dos resultados. Classe Drv: Classe que dirige o processo de análise e que possui todas as informações do modelo Classes Elem: Implementam funções relacionadas à rigidez que se diferenciam entre os tipos de modelos matemáticos das barras. Classes Lelem: Implementam funções relacionadas ao carregamento que se diferenciam entre os tipos de modelos matemáticos das barras. Classe Material: Classe com as propriedades físicas dos materiais. Classes Print: Responsáveis por imprimir os resultados da análise em forma textual. Classe Section: Classe com as propriedades geométricas das seções transversais. Classe Node: Classe com informações sobre os pontos de discretização do modelo. Organização do programa em arquivos .m com scrpits (rotinas) de código. Programação Orientada a Objetos (OOP)
  • 26. Pág. 26 Programação Orientada a Objetos (OOP) Diagrama de Classes (padrão UML): Apresenta uma visão estática da organização das classes do programa e a forma com a qual elas se relacionam. O MATLAB fornece um ambiente de compilação dos arquivos em um executável stand-alone.
  • 27. Pág. 27 O Ambiente GUIDE Orientação a Eventos • Ambiente para o desenvolvimento de interface gráfica de forma interativa. • Os componentes são adicionados por meio de sistema de drag-and-drop. • Um arquivo .m baseado no paradigma de Orientação a Eventos é automaticamente gerado • O fluxo do código é guiado por indicações externas chamadas eventos. • Eventos são as diferentes ações que usuários podem realizar sobre os componentes adicionados à interface. • Cada evento está associado à uma função chamada Callback, disparada quando se verifica a ocorrência de tal evento, que define a reação do programa. Button1_click_CallbackFuntion {...} Button2_click_CallbackFuntion {...} Button3_click_CallbackFuntion {...}Click
  • 28. Pág. 28 Livescript e Álgebra Simbólica • Ambiente de manipulação de equações matemáticas e expressões em forma simbólica. • Utilizado para gerar as expressões dos modelos matemáticos que representam o comportamento das barras.
  • 29. Pág. 29 Documentação • O comando Publish: A documentação do código é geralmente feita através de comentários, sendo importante para deixá-lo claro e compreensível. O MATLAB, através de uma certa disciplina de comentários e o comando Publish, permite criar arquivos formatados apresentáveis para serem publicados e compartilhados. Arquivo .m Arquivo .html
  • 30. Pág. 30 • Diagramas UML (Unified Modeling Language): Auxiliam a vizualização da comunicação entre as classes e objetos do programa, através de diagramas padronizados. Documentação www.tecgraf.puc-rio/lesm Diagrama de Atividade Diagrama de Sequência
  • 31. Pág. OBRIGADO! Luiz Fernando Martha – lfm@tecgraf@puc-rio.br Rafael Lopez Rangel – rafaelrangel@tecgraf.puc-rio.br www.tecgraf.puc-rio/lesm