Este documento apresenta um mini-curso de MATLAB com os seguintes tópicos: 1) Introdução ao MATLAB, 2) Matlab Básico, 3) Programação em Matlab, 4) Matemática Simbólica, 5) Interfaces gráficas e Toolbox, 6) Simulink. O documento inclui referências bibliográficas e informações sobre os professores.
Course in GNU Octave / Matlab and Applications for Engineers (in Portuguese: ...Tiago Oliveira Weber
Course in GNU Octave / Matlab and Applications for Engineers (in Portuguese: "Curso de GNU Octave / Matlab e Aplicações para Engenheiros"). This material was initially presented at the II Computer Engineering Academic Week in March 2018 at UFSC - Campus Araranguá - Presentation in Portuguese.
O documento apresenta uma introdução ao software MATLAB, abordando conceitos básicos, operações com matrizes, polinômios, cálculo diferencial e integral e equações diferenciais. É descrito o ambiente de trabalho do MATLAB, com explicações sobre variáveis, operadores matemáticos, funções trigonométricas, exponenciais e funções para resolução de sistemas lineares e cálculo de determinantes, raízes de polinômios e limites, derivadas, integrais e equações diferenciais.
O documento apresenta uma introdução ao software Matlab, descrevendo suas principais características e funcionalidades. Em especial, destaca-se que o Matlab é uma linguagem técnica de alta performance para computação, visualização e programação em ambiente matemático, com aplicações como modelagem, simulação, análise de dados e desenvolvimento de aplicações científicas e de engenharia. Além disso, o documento explica os principais componentes do Matlab, como o ambiente de desenvolvimento, biblioteca de funções, linguagem de programação e ferrament
1) O documento apresenta um curso introdutório sobre o MATLAB, software para computação numérica.
2) Aborda conceitos básicos como variáveis, operações matemáticas, manipulação de matrizes e vetores, além de gráficos e programação.
3) Inclui exemplos de comandos e funções do MATLAB, como criação de variáveis, operações com matrizes, gerar vetores e plotar gráficos.
1. O documento apresenta um tutorial sobre o uso do software livre GNU Octave, que é uma ferramenta de cálculo numérico e científico similar ao Matlab.
2. O tutorial explica conceitos básicos como operações matemáticas, definir variáveis, formatar números, criar gráficos e definir funções.
3. O documento também fornece exemplos de código do Octave para ilustrar cada tópico abordado.
Course in GNU Octave / Matlab and Applications for Engineers (in Portuguese: ...Tiago Oliveira Weber
Course in GNU Octave / Matlab and Applications for Engineers (in Portuguese: "Curso de GNU Octave / Matlab e Aplicações para Engenheiros"). This material was initially presented at the II Computer Engineering Academic Week in March 2018 at UFSC - Campus Araranguá - Presentation in Portuguese.
O documento apresenta uma introdução ao software MATLAB, abordando conceitos básicos, operações com matrizes, polinômios, cálculo diferencial e integral e equações diferenciais. É descrito o ambiente de trabalho do MATLAB, com explicações sobre variáveis, operadores matemáticos, funções trigonométricas, exponenciais e funções para resolução de sistemas lineares e cálculo de determinantes, raízes de polinômios e limites, derivadas, integrais e equações diferenciais.
O documento apresenta uma introdução ao software Matlab, descrevendo suas principais características e funcionalidades. Em especial, destaca-se que o Matlab é uma linguagem técnica de alta performance para computação, visualização e programação em ambiente matemático, com aplicações como modelagem, simulação, análise de dados e desenvolvimento de aplicações científicas e de engenharia. Além disso, o documento explica os principais componentes do Matlab, como o ambiente de desenvolvimento, biblioteca de funções, linguagem de programação e ferrament
1) O documento apresenta um curso introdutório sobre o MATLAB, software para computação numérica.
2) Aborda conceitos básicos como variáveis, operações matemáticas, manipulação de matrizes e vetores, além de gráficos e programação.
3) Inclui exemplos de comandos e funções do MATLAB, como criação de variáveis, operações com matrizes, gerar vetores e plotar gráficos.
1. O documento apresenta um tutorial sobre o uso do software livre GNU Octave, que é uma ferramenta de cálculo numérico e científico similar ao Matlab.
2. O tutorial explica conceitos básicos como operações matemáticas, definir variáveis, formatar números, criar gráficos e definir funções.
3. O documento também fornece exemplos de código do Octave para ilustrar cada tópico abordado.
Este documento apresenta uma introdução ao uso do MATLAB e da toolbox de sinais. Ele explica conceitos básicos como variáveis, vetores, matrizes e operações matemáticas, além de funções como zeros, ones e eye para criação de matrizes especiais. O documento também mostra exemplos de operações com vetores e escalares.
Este documento fornece uma introdução aos principais conceitos e funcionalidades do Matlab, um software de computação numérica. Aborda os tipos de dados fundamentais como matrizes e vetores, métodos para inicializar e acessar elementos de matrizes, formatação e visualização de dados numéricos e gráficos, e operações matemáticas básicas em Matlab.
Este documento apresenta uma apostila sobre o uso do software Matlab para cálculo numérico. Ele introduz os principais comandos e ambientes do Matlab, explica operações matemáticas, gerenciamento de variáveis, plotagem de gráficos e controle de fluxo. Além disso, aborda tópicos como cálculo matricial, geradores de vetores, arquivos M de comandos e funções.
O documento resume os principais tópicos de uma aula sobre Matlab, incluindo o que é Matlab, suas janelas, variáveis, operadores, estruturas de controle de fluxo e funções.
Este documento apresenta um exemplo sobre tanques acoplados e fornece as equações que descrevem o fluxo entre os tanques. É mostrado como linearizar as equações para definir a função de transferência e como calcular a variação no nível do tanque 2 quando o nível do tanque 1 é alterado linearmente. O documento também apresenta os principais objetos e propriedades para desenvolvimento de interfaces gráficas no MATLAB.
Este documento apresenta um curso de MATLAB Avançado e Simulink dividido em duas partes. A primeira parte aborda conceitos básicos de MATLAB, criação e manipulação de matrizes, gráficos e processamento de imagens. A segunda parte tratará de variáveis simbólicas, programas em interface gráfica e Simulink.
Este documento apresenta um curso básico de MATLAB, abordando conceitos como tipos de variáveis, criação e manipulação de matrizes, operações básicas, criação e manipulação de gráficos, funções, equações diferenciais, loops e condicionais. O curso inclui exemplos de código e exercícios para fixar os conceitos apresentados.
O documento descreve o que é o MATLAB, um software para resolução de problemas numéricos e visualização computacional desenvolvido pela Mathworks Inc. O MATLAB possui características como ser multiplataforma, ter um ambiente interativo e uma linguagem de alto nível para ganho de tempo de implementação. O documento também discute vantagens, desvantagens e alternativas ao MATLAB.
O documento discute o Simulink, um pacote de software para modelagem, simulação e análise de sistemas dinâmicos. Ele é mais poderoso do que o Matlab para analisar sistemas não-lineares e variantes no tempo. O documento fornece exemplos de como modelar e simular sistemas termodinâmicos de uma casa usando blocos como Constant, Scope e Subsystem.
O documento define matrizes em C e fornece exemplos de sua declaração, atribuição de valores, preenchimento e exibição. Ele também apresenta uma série de exercícios sobre matrizes que envolvem preenchimento, cálculo de soma, média, maior e menor valor.
Este documento descreve um minicurso sobre o programa gnuplot, um software livre e de código aberto para criação de gráficos 2D e 3D. O minicurso será realizado entre os dias 2 a 6 de fevereiro de 2015 e abordará tópicos como instalação e uso básico do gnuplot, plotagem de gráficos bidimensionais e tridimensionais, personalização de gráficos e recursos adicionais.
Este documento apresenta um tutorial introdutório sobre o software SciLab, focando em:
1) Conceitos básicos como operações numéricas, variáveis, vetores e matrizes;
2) Comandos básicos como who, whos, pwd e ls;
3) Sintaxe para criação e manipulação de vetores e matrizes numéricas.
1. O documento apresenta uma série de 23 exercícios de fixação sobre funções e recursividade em linguagem de programação. 2. Os exercícios abordam tópicos como funções para verificar se um número é positivo ou negativo, calcular somatórios, fatorial, série de Fibonacci e validação de números primos. 3. Alguns exercícios pedem para implementar as soluções de forma recursiva.
Este documento introduz conceitos básicos de cálculo numérico. Aborda o que é um algoritmo e como ele deve ser estruturado para resolver problemas de forma eficiente. Também explica as principais etapas para modelagem matemática e resolução numérica de problemas, incluindo modelagem, escolha de métodos numéricos e critérios de parada.
1) O documento apresenta conceitos sobre expressões em algoritmos e programação, incluindo expressões aritméticas, lógicas e literais;
2) São definidos e exemplificados os principais operadores aritméticos, relacionais e lógicos utilizados em expressões;
3) Também são explicadas funções nativas do Portugol como Exp, RaizQ, Quad e Pi.
Este capítulo discute a modelagem de sistemas contínuos no tempo no Simulink. Apresenta o bloco integrador, fundamenta para modelar sistemas descritos por equações diferenciais, e exemplifica a modelagem de sistemas escalares lineares e o uso de funções de transferência.
O documento fornece uma introdução ao programa Mathematica, discutindo sua história, funcionalidades e como obtê-lo. É um programa computacional desenvolvido para matemática que resolve cálculos numéricos e gráficos. O documento também resume comandos básicos como adição, subtração, integrais, derivadas e construção de gráficos.
O documento discute erros numéricos, representação de números e conversão entre bases numéricas. Aborda 1) as fontes possíveis de erros em simulações numéricas, como imprecisão nos dados e operações; 2) a representação finita de números em computadores, notadamente a necessidade de arredondamento; 3) métodos para conversão entre bases binária e decimal.
Complexidade de Algoritmos, Notação assintótica, Algoritmos polinomiais e in...Universidade de São Paulo
Este documento discute a complexidade de algoritmos e a notação assintótica. Apresenta como a análise de complexidade de algoritmos reduz um algoritmo a uma função matemática que representa o número de instruções executadas em função do tamanho da entrada. Explora os conceitos de limite assintótico superior, inferior e estrito e como eles são usados para classificar algoritmos de acordo com sua taxa de crescimento, ignorando constantes e termos de menor ordem.
Este documento fornece uma introdução aos conceitos básicos de algoritmos e programação, incluindo:
1) Apresenta o Visualg como uma ferramenta para editar, interpretar e executar algoritmos usando uma linguagem próxima do português.
2) Discute as três formas comuns de representar algoritmos: fluxogramas, Portugol e pseudocódigo. O curso irá utilizar fluxogramas e Portugol.
3) Explica conceitos-chave como variáveis, tipos de dados, comentários, comandos de entrada e saída.
Este guia apresenta os principais comandos e funcionalidades do MatLab para alunos de engenharia. O documento introduz comandos básicos, operações com vetores e matrizes, funções matemáticas, plotagem de gráficos e programação de rotinas no MatLab.
Analise de funções de transferencia de malha fechada com MatlabDavid Luna Santos
Este documento analisa funções de transferência de sistemas de controle de malha fechada com MATLAB. Descreve como sistemas de controle com realimentação comparam a saída e entrada de referência e usam a diferença como controle. Também analisa dois sistemas específicos sob diferentes entradas e traça seus lugares de raízes para determinar estabilidade e tipo.
Este documento apresenta uma introdução ao uso do MATLAB e da toolbox de sinais. Ele explica conceitos básicos como variáveis, vetores, matrizes e operações matemáticas, além de funções como zeros, ones e eye para criação de matrizes especiais. O documento também mostra exemplos de operações com vetores e escalares.
Este documento fornece uma introdução aos principais conceitos e funcionalidades do Matlab, um software de computação numérica. Aborda os tipos de dados fundamentais como matrizes e vetores, métodos para inicializar e acessar elementos de matrizes, formatação e visualização de dados numéricos e gráficos, e operações matemáticas básicas em Matlab.
Este documento apresenta uma apostila sobre o uso do software Matlab para cálculo numérico. Ele introduz os principais comandos e ambientes do Matlab, explica operações matemáticas, gerenciamento de variáveis, plotagem de gráficos e controle de fluxo. Além disso, aborda tópicos como cálculo matricial, geradores de vetores, arquivos M de comandos e funções.
O documento resume os principais tópicos de uma aula sobre Matlab, incluindo o que é Matlab, suas janelas, variáveis, operadores, estruturas de controle de fluxo e funções.
Este documento apresenta um exemplo sobre tanques acoplados e fornece as equações que descrevem o fluxo entre os tanques. É mostrado como linearizar as equações para definir a função de transferência e como calcular a variação no nível do tanque 2 quando o nível do tanque 1 é alterado linearmente. O documento também apresenta os principais objetos e propriedades para desenvolvimento de interfaces gráficas no MATLAB.
Este documento apresenta um curso de MATLAB Avançado e Simulink dividido em duas partes. A primeira parte aborda conceitos básicos de MATLAB, criação e manipulação de matrizes, gráficos e processamento de imagens. A segunda parte tratará de variáveis simbólicas, programas em interface gráfica e Simulink.
Este documento apresenta um curso básico de MATLAB, abordando conceitos como tipos de variáveis, criação e manipulação de matrizes, operações básicas, criação e manipulação de gráficos, funções, equações diferenciais, loops e condicionais. O curso inclui exemplos de código e exercícios para fixar os conceitos apresentados.
O documento descreve o que é o MATLAB, um software para resolução de problemas numéricos e visualização computacional desenvolvido pela Mathworks Inc. O MATLAB possui características como ser multiplataforma, ter um ambiente interativo e uma linguagem de alto nível para ganho de tempo de implementação. O documento também discute vantagens, desvantagens e alternativas ao MATLAB.
O documento discute o Simulink, um pacote de software para modelagem, simulação e análise de sistemas dinâmicos. Ele é mais poderoso do que o Matlab para analisar sistemas não-lineares e variantes no tempo. O documento fornece exemplos de como modelar e simular sistemas termodinâmicos de uma casa usando blocos como Constant, Scope e Subsystem.
O documento define matrizes em C e fornece exemplos de sua declaração, atribuição de valores, preenchimento e exibição. Ele também apresenta uma série de exercícios sobre matrizes que envolvem preenchimento, cálculo de soma, média, maior e menor valor.
Este documento descreve um minicurso sobre o programa gnuplot, um software livre e de código aberto para criação de gráficos 2D e 3D. O minicurso será realizado entre os dias 2 a 6 de fevereiro de 2015 e abordará tópicos como instalação e uso básico do gnuplot, plotagem de gráficos bidimensionais e tridimensionais, personalização de gráficos e recursos adicionais.
Este documento apresenta um tutorial introdutório sobre o software SciLab, focando em:
1) Conceitos básicos como operações numéricas, variáveis, vetores e matrizes;
2) Comandos básicos como who, whos, pwd e ls;
3) Sintaxe para criação e manipulação de vetores e matrizes numéricas.
1. O documento apresenta uma série de 23 exercícios de fixação sobre funções e recursividade em linguagem de programação. 2. Os exercícios abordam tópicos como funções para verificar se um número é positivo ou negativo, calcular somatórios, fatorial, série de Fibonacci e validação de números primos. 3. Alguns exercícios pedem para implementar as soluções de forma recursiva.
Este documento introduz conceitos básicos de cálculo numérico. Aborda o que é um algoritmo e como ele deve ser estruturado para resolver problemas de forma eficiente. Também explica as principais etapas para modelagem matemática e resolução numérica de problemas, incluindo modelagem, escolha de métodos numéricos e critérios de parada.
1) O documento apresenta conceitos sobre expressões em algoritmos e programação, incluindo expressões aritméticas, lógicas e literais;
2) São definidos e exemplificados os principais operadores aritméticos, relacionais e lógicos utilizados em expressões;
3) Também são explicadas funções nativas do Portugol como Exp, RaizQ, Quad e Pi.
Este capítulo discute a modelagem de sistemas contínuos no tempo no Simulink. Apresenta o bloco integrador, fundamenta para modelar sistemas descritos por equações diferenciais, e exemplifica a modelagem de sistemas escalares lineares e o uso de funções de transferência.
O documento fornece uma introdução ao programa Mathematica, discutindo sua história, funcionalidades e como obtê-lo. É um programa computacional desenvolvido para matemática que resolve cálculos numéricos e gráficos. O documento também resume comandos básicos como adição, subtração, integrais, derivadas e construção de gráficos.
O documento discute erros numéricos, representação de números e conversão entre bases numéricas. Aborda 1) as fontes possíveis de erros em simulações numéricas, como imprecisão nos dados e operações; 2) a representação finita de números em computadores, notadamente a necessidade de arredondamento; 3) métodos para conversão entre bases binária e decimal.
Complexidade de Algoritmos, Notação assintótica, Algoritmos polinomiais e in...Universidade de São Paulo
Este documento discute a complexidade de algoritmos e a notação assintótica. Apresenta como a análise de complexidade de algoritmos reduz um algoritmo a uma função matemática que representa o número de instruções executadas em função do tamanho da entrada. Explora os conceitos de limite assintótico superior, inferior e estrito e como eles são usados para classificar algoritmos de acordo com sua taxa de crescimento, ignorando constantes e termos de menor ordem.
Este documento fornece uma introdução aos conceitos básicos de algoritmos e programação, incluindo:
1) Apresenta o Visualg como uma ferramenta para editar, interpretar e executar algoritmos usando uma linguagem próxima do português.
2) Discute as três formas comuns de representar algoritmos: fluxogramas, Portugol e pseudocódigo. O curso irá utilizar fluxogramas e Portugol.
3) Explica conceitos-chave como variáveis, tipos de dados, comentários, comandos de entrada e saída.
Este guia apresenta os principais comandos e funcionalidades do MatLab para alunos de engenharia. O documento introduz comandos básicos, operações com vetores e matrizes, funções matemáticas, plotagem de gráficos e programação de rotinas no MatLab.
Analise de funções de transferencia de malha fechada com MatlabDavid Luna Santos
Este documento analisa funções de transferência de sistemas de controle de malha fechada com MATLAB. Descreve como sistemas de controle com realimentação comparam a saída e entrada de referência e usam a diferença como controle. Também analisa dois sistemas específicos sob diferentes entradas e traça seus lugares de raízes para determinar estabilidade e tipo.
Este documento trata dos principais tópicos de Mecânica Aplicada e Resistência dos Materiais. Apresenta os sistemas de unidades mais comuns, conceitos básicos de estática de pontos materiais e corpos rígidos, análise de estruturas, centróide e baricentro, movimento circular, transmissão de potência, torção simples, resistência dos materiais, tração, compressão, flexão e torção.
Este documento descreve uma disciplina de pós-graduação em estatística multivariada. A disciplina ensina técnicas como regressão linear múltipla, análise de componentes principais e análise discriminante. Os alunos aprenderão a modelar fenômenos naturais usando essas técnicas estatísticas e aplicá-las em seus trabalhos de conclusão de curso.
O documento descreve sinais senoidais, incluindo sua forma de onda, expressão matemática, período, frequência, amplitude, fase e valor eficaz. Exemplos mostram como calcular esses parâmetros para funções senoidais dadas e como determinar a função senoidal a partir de um gráfico.
O documento discute cinco objetivos de desempenho para satisfazer consumidores: qualidade, velocidade, confiabilidade, flexibilidade e custo. Qualidade refere-se à conformidade com as expectativas do consumidor. Velocidade é o tempo entre requisição e recebimento. Confiabilidade envolve entregar produtos e serviços no tempo prometido. Flexibilidade permite alterar a operação. Custo refere-se a produzir bens e serviços ao menor preço possível.
Este documento é um projeto final de semestre apresentado para avaliação do Curso Técnico em Administração do Colégio Estadual Barbosa Rodrigues de Gravataí no ano de 2012. O trabalho foi orientado pelos professores Fulano de Tal e Fulano de Tal e contém introdução, desenvolvimento dividido em capítulos, conclusão e referências.
O documento descreve conceitos básicos do MATLAB, incluindo: (1) como iniciar o MATLAB, as janelas exibidas e como entrar com comandos; (2) operações aritméticas, formatação de números e funções matemáticas básicas; e (3) como gerar vetores, variáveis e comentários no MATLAB.
O documento apresenta uma revisão de álgebra linear com foco em matrizes, incluindo definições e operações com matrizes como transposição, adição, multiplicação por escalar e entre matrizes, determinante, matriz singular, inversa e sistemas de equações lineares. Também apresenta como utilizar funções no Excel para operações com matrizes como transposição, soma, determinante e inversa.
Cartilha de Octave para Matematica Computacional.pdfEdkallenn Lima
Este documento apresenta uma introdução ao software livre GNU Octave, que possui funcionalidades similares ao Matlab para computação científica e numérica. O documento descreve como instalar e usar o Octave, incluindo operações matemáticas básicas, vetores, matrizes, strings e estruturas de dados.
Este documento apresenta um resumo de redes neurais para inferência estatística. Ele introduz conceitos básicos de redes neurais, o software Matlab e a toolbox Netlab. O documento descreve como gerar dados de treinamento fictícios, definir a arquitetura de uma rede neural multicamada e treiná-la usando os algoritmos de otimização do Matlab.
Plano de aula po1 capitulo 2 revisão algebra 2015 vrs 0001Luis Duncan
1. O documento apresenta uma revisão de álgebra linear com foco em matrizes, incluindo definições, tipos, operações e cálculos com matrizes.
2. É apresentada a notação de matrizes e vários tipos como matrizes quaisquer, nulas, quadradas e identidade.
3. São explicadas operações com matrizes como adição, multiplicação por escalar, multiplicação entre matrizes, determinante, matriz singular, não singular e inversa.
Solução de equações não lineares weslleyWeslley Assis
O documento discute métodos numéricos para resolver equações não lineares. Aborda três pontos principais: 1) A necessidade de usar métodos numéricos para encontrar raízes quando não há solução exata; 2) O princípio básico dos métodos iterativos, que melhoram aproximações sucessivas até atingir a precisão desejada; 3) As duas fases dos métodos numéricos - isolamento da raiz em um intervalo inicial e refinamento das aproximações.
O documento apresenta os objetivos e conteúdos de uma disciplina sobre algoritmos e estruturas de dados. Os tópicos incluem listas lineares, pilhas, filas, classificação de dados, recursividade e tipos abstratos de dados.
O documento apresenta os objetivos e conteúdos de uma disciplina de Algoritmos e Estrutura de Dados II. Os tópicos incluem listas lineares, pilhas, filas, classificação de dados e listas ligadas, com foco em definir formalmente estruturas de dados e selecioná-las para aplicações.
Este documento descreve algoritmos de classificação de tabelas, incluindo o método da seleção e o método da bolha. O método da seleção classifica uma tabela encontrando o menor elemento em cada posição, resultando em um tempo de execução quadrático O(n2). O método da bolha sobe cada elemento até encontrar sua posição correta, tendo também um tempo quadrático no pior caso, mas um tempo médio de O(n2) devido ao número médio de inversões em uma permutação ser proporcional a n2.
O documento discute estruturas de dados vetoriais e matriciais em programação, definindo vetores e matrizes, explicando como declará-los e acessar seus elementos, e fornecendo exemplos de código para manipulação dessas estruturas.
O documento discute estruturas de dados para armazenar temporariamente conjuntos de valores, introduzindo vetores (arrays) como uma estrutura estática que permite armazenar múltiplos valores do mesmo tipo em posições de memória contíguas indexadas por um índice. Exemplos mostram como declarar e inicializar vetores de inteiros e como percorrê-los usando loops para ler/escrever elementos individualmente.
Este documento apresenta os principais conceitos de cálculo numérico, incluindo erros, representação numérica, conversão entre bases e arredondamento. Aborda como números são representados em computadores usando ponto flutuante e como erros podem surgir durante cálculos numéricos devido à aproximação.
O documento descreve o treinamento de um modelo de rede neural recorrente para gerar texto no estilo de William Shakespeare. O modelo é treinado em um conjunto de dados de texto de Shakespeare e, em seguida, é capaz de gerar novos textos no estilo de Shakespeare.
O documento descreve como criar e manipular diferentes tipos de arranjos unidimensionais e bidimensionais em MATLAB, incluindo vetores, matrizes, strings e funções para adicionar e referenciar elementos.
O documento descreve como criar e manipular diferentes tipos de arranjos unidimensionais e bidimensionais em MATLAB, incluindo vetores, matrizes, strings e funções para trabalhar com esses arranjos.
Este documento fornece um tutorial sobre os comandos básicos do MATLAB, incluindo como criar vetores e matrizes, alterá-los e operar com eles. Ele também descreve como resolver sistemas lineares, criar gráficos e arquivos M para funções personalizadas.
1. O documento apresenta uma revisão de álgebra linear com foco em matrizes, incluindo operações como transposição, soma, determinante, inversa e sistemas de equações lineares.
2. As seções abordam diferentes tipos de matrizes, suas propriedades e como realizar operações com elas utilizando a ferramenta Excel.
3. O objetivo é revisar conceitos de matrizes que serão úteis na resolução de problemas de programação linear usando o algoritmo Simplex.
O documento descreve um curso sobre o programa computacional R ministrado por Paulo Justiniano Ribeiro Junior. Ele é professor do Departamento de Estatística da Universidade Federal do Paraná e tem experiência no uso do R desde 1999. O curso apresenta os principais comandos e funcionalidades do R, incluindo operações aritméticas, tipos de objetos, criação e manipulação de vetores, matrizes e dataframes.
1. O documento discute operações com matrizes, incluindo representação de matrizes, tipos de matrizes, e operações como adição e multiplicação.
2. É apresentada uma implementação das operações com matrizes usando C++, incluindo uma estrutura de dados TMatriz e funções para criar, ler, comparar, somar e multiplicar matrizes.
3. A complexidade das funções é analisada, com destaque para a função de leitura que tem complexidade quadrática O(n2).
Semelhante a Minicurso Matlab IVSEE 2013 UERJ (20)
REGULAMENTO DO CONCURSO DESENHOS AFRO/2024 - 14ª edição - CEIRI /UREI (ficha...Eró Cunha
XIV Concurso de Desenhos Afro/24
TEMA: Racismo Ambiental e Direitos Humanos
PARTICIPANTES/PÚBLICO: Estudantes regularmente matriculados em escolas públicas estaduais, municipais, IEMA e IFMA (Ensino Fundamental, Médio e EJA).
CATEGORIAS: O Concurso de Desenhos Afro acontecerá em 4 categorias:
- CATEGORIA I: Ensino Fundamental I (4º e 5º ano)
- CATEGORIA II: Ensino Fundamental II (do 6º ao 9º ano)
- CATEGORIA III: Ensino Médio (1º, 2º e 3º séries)
- CATEGORIA IV: Estudantes com Deficiência (do Ensino Fundamental e Médio)
Realização: Unidade Regional de Educação de Imperatriz/MA (UREI), através da Coordenação da Educação da Igualdade Racial de Imperatriz (CEIRI) e parceiros
OBJETIVO:
- Realizar a 14ª edição do Concurso e Exposição de Desenhos Afro/24, produzidos por estudantes de escolas públicas de Imperatriz e região tocantina. Os trabalhos deverão ser produzidos a partir de estudo, pesquisas e produção, sob orientação da equipe docente das escolas. As obras devem retratar de forma crítica, criativa e positivada a população negra e os povos originários.
- Intensificar o trabalho com as Leis 10.639/2003 e 11.645/2008, buscando, através das artes visuais, a concretização das práticas pedagógicas antirracistas.
- Instigar o reconhecimento da história, ciência, tecnologia, personalidades e cultura, ressaltando a presença e contribuição da população negra e indígena na reafirmação dos Direitos Humanos, conservação e preservação do Meio Ambiente.
Imperatriz/MA, 15 de fevereiro de 2024.
Produtora Executiva e Coordenadora Geral: Eronilde dos Santos Cunha (Eró Cunha)
4. Introdução
n MATLAB é acrônimo de MATrix LABoratory
n Foi desenvolvido inicialmente na década de
70 nas Universidades do Novo México e
Stanford.
n Destinado a princípio a cursos de teoria
matricial, álgebra linear e análise numérica.
n Voltado basicamente para matemática
numérica.
4
5. Introdução
n Hoje, é um ambiente de programação
de alto nível para aplicações Científicas
e de Engenharia.
n Facilidades
n Oferece um amplo leque de bibliotecas de
funções pré-definidas.
n Muito amigável em funcionalidades
gráficas para Visualização de Dados.
5
6. Introdução
n Hoje, é um ambiente de programação
de alto nível para aplicações Científicas
e de Engenharia.
n Facilidades
n Amplamente divulgado em Universidades
e laboratórios de pesquisa.
n Conveniente para o desenvolvimento de
protótipos.
6
7. Introdução
n Vantagens
n Facilidade de Uso
n Independência de Plataforma
n Funções Predefinidas
n Interface Gráfica de Usuário
n Compilador MATLAB
n Desvantagens
n Linguagem Interpretada
n Custo
7
8. Introdução
n O que mais?
n Lógica fuzzy
n Redes Neurais
n Processamento de
sinais
n Aquisição de dados
n Banco de Dados
n Finanças
n Mapas
n Controle Robusto
n Animação
n Simulação de
sistemas dinâmicos
(Simulink)
n Etc
8
11. Introdução
n Informações do sistema
n computer – Tipo de computador onde
o MATLAB está operando
n version – Versão do MATLAB
n ver – Detalhes da versão do MATLAB e
dos toolboxes
n license – Apresenta a licença do
produto
11
14. Números e formatos
n O MATLAB reconhece vários tipos de
números:
n Integer (Ex: 12 - 678),
n Real (Ex: 4.607 - 199.34),
n Complex (Ex: 2 + 3i , i=j=sqrt(-1)),
n Inf (Ex: Infinity 2/0),
n NaN (EX: Not a Number, 0/0).
n Todos os cálculos são feitos em precisão dupla
(Double precision)
14
15. Números e formatos
n O comando format é usado para
controlar a impressão dos números
n O nº de dígitos apresentados não tem a
ver com a exatidão
n Para formatar a visualização:
n format short e: Notação científica com 5 casas
decimais
n format long e: Notação científica com 15 casas
decimais
n format bank: Colocação de dois dígitos significativos
nas casas decimais
15
16. Comando pi Comentários
format short 3.1416 5 dígitos
format long 3.14159265358979 16 dígitos
format short e 3.1416e+000 5 dígitos + expoente
format long e 3.141592653589793e+000 16 dígitos + expoente
format short g 3.1416 short ou short e
format long g 3.14159265358979 long ou long e
format hex 400921fb54442d18 Hexadecimal, ponto flutuante
format bank 3.14 2 digitos decimais
format + + positivo(+), negativo(-) ou zero(0)
format rat 355/113 razão aproximada
Números e formatos
n Formatos
16
17. n Pode-se armazenar valores em
variáveis no MATLAB.
n Variáveis devem ter um nome único,
começando com uma letra e podem
conter dígitos ou o símbolo _
(underline).
n O MATLAB distingue letras
maiúsculas de minúsculas.
Variáveis e funções
17
18. n Exemplo:
>> distancia = 100
distancia =
100
>> tempo = 3
tempo =
3
>> velocidade_media = distancia /
tempo
velocidade_media =
33.3333
Variáveis e funções
18
19. Variáveis e funções
n Criando e iniciando variáveis:
n Expressões de atribuição
n Entrada pelo Teclado
19
var = 40i;
var2 = var/5;
x = 1; y = 2;
array = [1 2 3 4];
my_val = input('Enter an input value:');
20. Variáveis e funções
n Criando e iniciando variáveis:
n Expressões de atalho
n Funções pré-definidas
20
x = 1:2:10
angles = (0.01:0.01:1.00)*pi;
a = zeros(2);
b = zeros(2,3);
c = [1 2; 3 4];
d = zeros(size(c));
21. n Note que ao digitar o nome da
variável, o símbolo = e o seu valor, o
MATLAB armazena a variável e a
apresenta na tela.
n Para suprimir a exibição da variável
deve-se adicionar um ponto-e-vírgula
ao final do comando.
Variáveis e funções
21
22. n Ao criar uma expressão sem
armazená-la em uma variável, o
MATLAB a salva automaticamente na
variável ans.
Variáveis e funções
22
23. n O comando who mostra todas as
variáveis armazenadas durante uma
sessão do MATLAB.
>> who
Your variables are:
ans tempo
Distancia velocidade_media
Variáveis e funções
23
24. n O comando clear “apaga” uma ou
mais variáveis.
>> clear tempo - Apaga somente a
variável tempo.
>> clear velocidade_media distancia
- Apaga as variáveis
velocidade_média e distancia.
>> clear - Apaga TODAS as variáveis
da sessão.
Variáveis e funções
24
25. Variáveis e funções
n Variáveis especiais
n ans - Nome de variável padrão usado para
resultados.
n pi - 3.1416
n eps - Menor número que somado a 1, cria
um número maior do que 1.
n inf - Infinito.
n NaN - Não número.
n i e j -
n realmin - menor número real positivo
n realmax - maior número real positivo
1−
25
27. Variáveis e funções
n Exemplos
>> sin(pi/2)
ans =
1
>> cos(pi/4)^2
ans =
0.5000
>> asin(1)*180/pi
ans =
90
27
28. Variáveis e funções
n Recuperando comandos
n Para evitar redigitação, o Matlab
armazena todos os comandos do
usuário durante uma sessão.
n Para acessar os comandos anteriores
basta pressionar a tecla ↑ (seta para
cima) seguidas vezes até encontrar o
comando desejado.
n O comando então pode ser editado e
executado novamente. 28
29. Variáveis e funções
n Ajuda
n Ajuda e informação no MatLab podem
ser obtidas de várias formas
n Na linha de comando usando help tópico
n Numa janela de ajuda separada no menu
de help
n No helpdesk MatLab mantido no disco ou
CD-ROM ou na internet
29
30. Variáveis e funções
n Ajuda
n Ajuda na linha de comandos
n >>help pi
PI 3.1415926535897....
PI = 4*atan(1) = imag(log(-1)) = 3.1415926535897....
n >>help sin
SIN Sine.
SIN(X) is the sine of the elements of X.
n >>lookfor fft
30
31. Variáveis e funções
n função disp(str)
n >> str = ['The value of pi = ' num2str(pi)];
n >> disp (str);
n função fprintf(format,data)
n >> fprintf('The value of pi is %f n',pi)
n >> fprintf('The value of pi is %6.2f n',pi)
31
Formatação Resultados
%d Exibe valor como inteiro
%e Exibe valor no formato científico
%f Exibe valor como ponto flutuante
n Muda de linha
32. Variáveis e funções
n Salvando seções
n Para salvar uma sessão do MATLAB,
deve-se usar a opção Save Workspace
As no menu File.
n Para abrir uma sessão salva
anteriormente deve-se utilizar a opção
Open no menu File.
n É possível usar os comandos load e
save
32
33. Vetores
n O MATLAB pode trabalhar com
vetores de elementos, realizando
operações sobre eles
33
34. Vetores
n Definição de vetores
n >> A = [0 1 2 3 4 5]
A =
0 1 2 3 4 5
n Outra forma de se criar um conjunto:
n >> A = 1:1:5
A =
1 2 3 4 5
n O primeiro valor é o valor inicial, o segundo o
“salto”e o terceiro o valor final.
34
35. Vetores
n Função linspace - Gera um vetor
linearmente espaçado a partir de um
valor inicial, um valor final e um
número de elementos.
n >> X = linspace(0,pi,6)
X =
0 0.6283 1.2566 1.8850 2.5133 3.1416
35
36. Vetores
n Função logspace - Gera um vetor
logaritmicamente espaçado a partir
de uma potência inicial, uma
potência final e uma quantidade de
valores.
n >> V = logspace(0,2,5)
V =
1.0000 3.1623 10.0000 31.6228 100.0000
36
37. Vetores
n Acesso a um elemento de um vetor:
n Z =
1 4 9 16 25
n >> Z(1)
ans =
1
n >> Z(2)
ans =
4
n >> Z(6)
??? Index exceeds matrix dimensions.
37
38. Vetores
n Pode-se acessar mais de um elemento:
n >> Z(1:3)
ans =
1 4 9
n >> Z(3:5)
ans =
9 16 25
n >> Z(2:4)
ans =
4 9 16
38
39. Matrizes
n O Matlab permite a criação de matrizes com
tantas dimensões quanto necessário para um
dado problema
39
40. Matrizes
n Definição de matrizes:
n >> M = [1 0 -1; 2 3 4; -7 1 3]
M =
1 0 -1
2 3 4
-7 1 3
n Os elementos da linha são separados por
espaço em branco e as linhas são
separadas por ponto-e-vírgula.
40
41. Matrizes
n Pode-se criar matrizes a partir de
vetores ou outras matrizes
n >> b = [2 -3 1];
n >> Mx = [b' M(:,2:3)]
Mx =
2 0 -1
-3 3 4
1 1 3
41
42. Matrizes
n Pode-se criar matrizes a partir de
vetores ou outras matrizes
n M(:, 2:3) significa a parte da matriz M
compreendida por todas as linhas (:) e as
colunas 2 e 3 (2:3).
n A matriz Mx foi gerada concatenando-se o
vetor b transposto e as colunas 2 e 3 da
matriz M.
42
43. n Funções para manipular matrizes
n eye – matriz identidade
n zeros – matriz composta de 0s
n ones – matriz composta de 1s
n rand – matriz de números aleatório
n diag – matriz diagonal
n Rot90 – rotação de uma matriz em 90 graus
n etc
Matrizes
43
44. n Operadores aritiméticos
n Forma Geral: A op B
n + Soma Estrutural e Matricial
n - Subtração Estrutural e Matricial
n * Multiplicação Matricial
n / Divisão Matricial à Direita
n Divisão Matricial à Esquerda
n ^ Expoente Matricial
n ‘ Operador de Transposição
Operações Aritméticas
44
46. n A + B
0 2
2 2
n A – B
2 -2
2 0
n A + C
Operação ilegal
n A + D
6 5
7 6
Operações Aritméticas
n Operadores aritméticos
46
47. n A * B
-1 2
2 5
n A * C
3
8
n A .* B
-1 0
0 1
n A .* C
Operação ilegal
Operações Aritméticas
n Operadores aritméticos
47
48. n A / B
-1 2
-2 5
n A B
-1 2
2 -3
n A ./ B
-1 0
Inf 1
n A . B
-1 Inf
0 1
Operações Aritméticas
n Operadores aritméticos
48
49. Operações Aritméticas
n Hierarquia de operações aritméticas
49
Precedência Operação
1 O conteúdo de todos os parênteses é avaliado, a partir dos parênteses mais
internos em direção aos mais externos
2 Todos os expoentes são avaliados, da esquerda para a direita
3 Todas as multiplicações e divisões são avaliadas, da esquerda para a direita.
4 Todas as somas e subtrações são avaliadas, da esquerda para a direita
distance = 0.5*accel*time^2
distance = 0.5*accel*(time^2)
distance = (0.5*accel*time)^2
50. Operações Aritméticas
n Avalie as hierarquias de operações
50
a = 3; b = 2; c = 5; d = 3;
output = a*b+c*d;
output = a*(b+c)*d;
output = (a*b)+(c*d);
output = a^b^d;
output = a^(b^d);
51. n Operadores relacionais
n Forma geral: A op B
n A e B: Operandos.
Pode ser uma matriz,
um escalar ou uma
cadeia de caracteres.
n Op: Operador
Operador Operação
== Igual a
~= Diferente de
> Maior que
>= Maior que ou igual a
< Menor que
<= Menor que ou igual a
Operações Relacionais
51
52. n Operadores relacionais
n Os operadores <, <=, > e >= são usados para
comparar a parte real dos operandos.
n Os operadores == e ~= são usados para
comparar a parte real e imaginária dos operandos.
Operações Relacionais
52
53. n Operadores relacionais
Expressão Resultado
5 > 3 1
‘AC’ > ‘BA´ 0 1
a > b 1 0
1 + j <= 2 + 3*j 1
x >= [3 8] 1 0
a > c 0 1
2 + j == 1+ j 0
5 + j ~= 2 + j 1
a = [2 1] b = [ 1 1 ] c = [ 0 2 ] x = [ 4 2]
Operações Relacionais
53
54. n Operadores lógicos
Operação Lógica Binária Operação Lógica Unária
A op B op A
Operador Operação
& E lógico
l OU lógico
xor Ou exclusivo lógico
~ Não lógico
Operações Lógicas
54
55. Entradas e ou xor não
A B A & B A l B xor(A,B) ~A
0 0 0 0 0 1
0 1 0 1 1 1
1 0 0 1 1 0
1 1 1 1 0 0
Operações Lógicas
n Operadores lógicos
55
56. n Operadores lógicos
n Precedência dos operadores
1. Os operadores aritméticos são avaliados primeiro.
2. Os operadores relacionais são avaliados da esquerda
para a direita.
3. Todos os operadores ~ são avaliados.
4. Todos os operadores & são avaliados.
5. Todos os operadores I são avaliados.
OBS: Sempre use parênteses para indicar a ordem
correta desejada de avaliação de uma expressão.
Operações Lógicas
56
57. Expressão Resultado
~A 0
A l B 1
B l C 1
3 > 4 & 1 0
3 > (4 & 1) 1
~C 0
A l B & C 1
A & C 1
B & C 0
A = 1, B = 0 e C = -10
Operações Lógicas
57
58. n Exercícios
1. Para as matrizes A e B, definidas a baixo, execute as seguintes
operações e interprete os resultados.
a) A+B b) A*B c) A.*B d) A.^2
e) A^2 f) A*A g) inv(A) h) inv(A)*A
i) AB j) A/B k) A/B – eye(3)
l) A*inv(B) – eye(3)
⎥
⎥
⎥
⎦
⎤
⎢
⎢
⎢
⎣
⎡
=
⎥
⎥
⎥
⎦
⎤
⎢
⎢
⎢
⎣
⎡
=
073
110
013
113
210
321
BA
Exercícios
58
60. n Pode-se gerar gráficos a partir de
matrizes.
n Exemplo
n >> X = linspace(0,2*pi,100);
>> Y = sin(X);
>> plot(X,Y)
Gráficos
60
61. n Duas linhas no mesmo gráfico (seno e
cosseno):
n >> Z = cos(X);
>> plot(X,Y,X,Z)
Gráficos
61
62. n Título para o gráfico:
>> title('seno(x) e cosseno(x)')
n Nome para o eixo x:
>> xlabel('grau (em radianos)')
n Nome para o eixo y:
>> ylabel('variaveis dependentes')
Gráficos
62
65. Gráficos
n Cores e estilos de linha, estilos de marcadores e legendas
65
b blue . point - solid
g green o circle : dotted
r red x x-mark -. dashdot
c cyan + plus -- dashed
m magenta * star (none) no line
y yellow s square
k black d diamond
w white v triangle (down)
^ triangle (up)
< triangle (left)
> triangle (right)
p pentagram
h hexagram
66. Gráficos
66
x = 0:1:10;
y = x.^2 - 10.*x + 15;
plot(x,y);
x = 0:1:10;
y = x.^2 - 10.*x + 15;
plot(x,y,'r--',x,y,'bo');
69. n Sequência rampa
n Uma sequência rampa transladada com declive B é
definida como
n Sequência rampa unitária e sequências de rampa
transladada
)()( 0nnBng −=
Código MATLAB :
n=-10:1:20;
f=2*(n-10);
stem(n,f);
Exercícios
69
71. n Sequência exponencial Real
n Definida como:
n Exemplo para A = 10 e a = 0.9, a sequência
aproxima-se de zero quando n tende para infinito e
aproxima-se de mais infinito quando n tende para
menos infinito
Exercícios
n
aAnf )()( =
Código MATLAB:
n=-10:1:10;
f =10*(.9).^n;
stem(n,f);
axis([-10 10 0 30]); 71
73. n Sequência senoidal
n Uma sequência senoidal pode ser descrita como:
n Onde A é um número real positivo (amplitude), N é
o período, e a a fase.
n Exemplo:
n A = 5, N = 16
n e
Exercícios
⎟
⎠
⎞
⎜
⎝
⎛
+= α
π
N
n
Anf
2
cos)(
.4/π=a
73
76. n Sequência senoidal modulada
exponencialmente
n Obtém-se através da multiplicação de uma sequência
exponencial por uma sequência senoidal.
n Pode ser descrita por :
n Exemplo:
n A = 10, N = 16, a = 0.9
n
Exercícios
⎟
⎠
⎞
⎜
⎝
⎛
+= α
π
N
n
aAng n 2
cos)()(
.4/πα =
76
79. n Gráficos 3D
n Gráficos de Linhas - Função plot3
>> X = linspace(0, 10*pi, 300);
>> Y = sin(X);
>> Z = cos(X);
>> plot3(X,Y,Z)
>> grid
Gráficos
79
80. n Gráficos 3D
n Gráficos de Superfícies - funcão mesh
>> v = linspace(-10,10,20);
>> [X, Y] = meshgrid(v,v);
>> Z = X.^2 + Y.^2;
>> mesh(X,Y,Z)
n Utilizamos a função meshgrid para gerar
X e Y como matrizes com valores repetidos
que são utilizadas para gerar a matriz Z.
Gráficos
80
81. n Gráficos 3D
n Gráficos de Superfícies - funcão mesh
>> v = linspace(-10,10,20);
>> [X, Y] = meshgrid(v,v);
>> Z = X.^2 + Y.^2;
>> mesh(X,Y,Z)
n Utilizamos a função meshgrid para gerar X e Y
como matrizes com valores repetidos que são
utilizadas para gerar a matriz Z.
Gráficos
81
85. n Rotação em gráficos 3D
n Para rotacionar um gráfico 3D primeiro clique no
botão presente na janela do gráfico.
n Após isto, clique sobre o gráfico e mantenha o
botão do mouse pressionado.
n Uma caixa irá aparecer indicando a direção do
gráfico.
n Agora, basta movimentar o mouse para ajustar a
posição desejada do gráfico.
Gráficos
85
86. n Superfícies de contorno
n Função contour - Gera superfícies de
contorno.
>> contour(X,Y,Z,30)
n Os três primeiros parâmetros são as
matrizes com os dados para os gráficos. O
quarto parâmetro é o número de
contornos.
Gráficos
86
90. Sumário – Programação em
Matlab
n Projeto de programa
n Arquivo de comando
n Estruturas de controle
n Funções definidas pelo usuário
90
91. Projeto de Programa
n Diante de um novo problema, é natural irmos direto
ao teclado sem perder tempo a respeito do
problema;
n Em casos de problemas pequenos, é possível resolver
a situação com essa abordagem “em tempo real”;
n Para problemas maiores, vale a pena pensar no
problema e na abordagem a ser usada antes de
escrever uma linha de código;
91
92. Projeto de Programa
n Projeto Top-down
92
Estabeleça o problema que você está tentando resolver
Defina as entradas e saídas requeridas
Projete o algoritmo
Converta o algoritmo em MATLAB
Teste o programa MATLAB resultante
Início
Fim
93. n Algoritmo
n Série de ações executadas em uma ordem
especifica.
n Pseudocódigo
n Linguagem artificial e informal de representar o
código de um programa.
n Útil para desenvolver algoritmos que serão
convertidos em programas estruturados no
MATLAB.
Projeto de Programa
93
94. Projeto de Programa
n Exemplo de Pseudocódigo
94
Código MATLAB:
temp_f = input('Enter the temperature in degrees Fahrenheit: ');
temp_k = (5/9) * (temp_f - 32) + 273.15;
fprintf('%6.2f degrees Fahrenheit = %6.2f kelvin.n’,temp_f,temp_k);
1. Solicite ao usuário a temperatura em graus Fahrenheit
2. Leia a temperatura em graus Fahrenheit (temp_f)
3. temp_k in kelvins = (5/9) * (temp_f - 32) + 273.15
4. Escreva a temperatura em kelvin
95. n Geralmente, utiliza-se o prompt do MATLAB para
introduzir os comandos.
n Este procedimento simples para execução de comandos
no prompt se torna altamente ineficiente quando a
complexidade do problema aumenta.
n Para problemas simples podemos usar o prompt do
MATLAB e para os mais difíceis deve-se utilizar o script-file
ou M-file, que é também conhecido como arquivo de
comando ou arquivo M.
Arquivos de comando
95
96. n Erro comum de Programação: Os
nomes dos arquivos de comando
precisam sempre terminar com a
extensão ‘.m’.
Exemplos:
programa1.m, exemplo1.m, etc.
Arquivos de comando
96
97. n Como Criar um Arquivo M (M-file)
n Para criar um arquivo M-file, deve-se seguir os
seguintes passos:
n Abrir o MATLAB
n Selecionar o menu File
n Selecionar o item New e em seguida apontar para
M-file e clicar.
Arquivos de comando
97
98. n Exemplo de script-file.
Arquivos de comando
98
% script-file: circulo.m
% Este programa calcula a área de um circulo
raio = 2.5;
area = pi*raio^2;
fprintf('Area do circulo = %.3f ', area);
99. n Como Executar um Arquivo M (M-file)
n Para executar um arquivo M-file no MATLAB é preciso
gravar o arquivo correspondente. Para isto, deve-se
selecionar o item Save Workspace As do menu File.
n É interessante dar preferência a salvar o arquivo no
diretório corrente do MATLAB, ou seja, na pasta work.
n Para executar o arquivo M, basta digitar no prompt do
MATLAB o nome do arquivo salvado anteriormente, sem
a extensão ‘.m’. Feito isso o MATLAB gera o executável
do programa.
Arquivos de comando
99
100. n Para exemplificar, considere o arquivo
circulo.m. Digite no prompt do MATLAB o
nome do arquivo circulo. Será apresentado
o executável do programa.
n >> circulo
Area do circulo = 19.635
Arquivos de comando
100
101. n Em resumo, pode-se dizer que um programa
em MATLAB consiste na criação do arquivo
M-file utilizando-se o editor de texto e sua
respectiva chamada por linha de comando
no prompt do MATLAB.
Arquivos de comando
101
102. n Controle de Fluxo
O controle de fluxo é um recurso que permite que resultados
anteriores influenciem operações futuras. Como em outras
linguagens, o MATLAB possui recursos que permitem o controle
de fluxo de execução de comandos, com base em estruturas
de tomada de decisões.
Serão apresentadas a seguir as seguintes estruturas de controle:
n Ramificações: if, elseif, switch
n Laços: while, for
Estruturas de controle
102
103. n Simbologia
Símbolo de decisão
Indica que ações serão executadas
Inicio e fim de uma estrutura de uma controle
Estruturas de controle
103
104. n if
n Estrutura de seleção para escolha de cursos de ação
específicos.
n A estrutura de seleção if executa uma ação indicada
só quando a condição é true (Verdadeira); caso
contrário, a ação é saltada.
Estruturas de controle
104
106. n Pseudocódigo
n Se a nota do estudante for maior ou igual que 7.0
Imprima “Aprovado”
n Código no Matlab
if nota >= 7
fprintf(‘Aprovado’);
end
Estruturas de controle
106
108. n Pseudocódigo
n Se a nota do estudante for maior ou igual que 7.0
Imprima “Aprovado” senão Imprima “Reprovado”
n Código no Matlab
if nota >= 7
fprintf(‘Aprovado’);
else
fprintf(‘Reprovado’);
end
Estruturas de controle
108
109. Estruturas de controle
n Exercício: Escreva um programa MATLAB para avaliar
uma função f(x,y) para quaisquer dos valores x e y
especificados pelo usuário. A função f(x,y) é definida a
seguir
109
f (x, y) =
x + y, x ! 0 e y ! 0
x + y2
, x ! 0 e y<0
x2
+ y, x<0 e y ! 0
x2
+ y2
, x<0 e y<0
"
#
$
$
%
$
$
110. n switch
n Permite que um programador selecione um
bloco de código a ser executado com base no
valor de um único inteiro, caractere ou
expressão lógica
Estruturas de controle
110
111. Estruturas de controle
111
switch (expr_switch)
case expr_case1
Declaração 1
Declaração 2
...
case expr_case2
Declaração 1
Declaração 2
...
...
otherwise,
Declaração 1
Declaração 2
...
end
Bloco 1
Bloco 2
Bloco N
switch (expr_switch)
case {expr_case1, expr_case2, expr_case3}
Declaração 1
Declaração 2
otherwise,
Declaração 1
Declaração 2
...
end
112. Estruturas de controle
n Exemplo
112
switch (value)
case {1,3,5,7,9}
disp('The value is odd.');
case {2,4,6,8,10}
disp('The value is even.');
otherwise
disp('The value is out of range.');
end
113. n Laços são construções MATLAB que nos
permitem executar uma sequência de
declarações mais de uma vez.
n Existem dois tipos de laços:
n while
n for
Estruturas de controle
113
114. n while: é um bloco de declarações que se
repete indefinidamente, enquanto uma
condição for satisfeita.
A forma geral do while é:
while expressão
...
... Bloco de código
...
end
Estruturas de controle
114
116. n Laço for : Executa um bloco de declarações
durante um número especificado de vezes.
for indice = expressão
Declaração 1
.... Corpo
Declaração n
end
Estruturas de controle
116
117. cont = 1
cont <= n
Falso
Verdadeiro
Corpo do laço cont = cont + 1
n: número de iterações do laço for
cont: variável de controle
Inicialização da variável de controle
cont = 2
cont = 3
Estruturas de controle
117
118. n Exemplo: Calcular a soma dos 10 primeiros
inteiros.
10987654321 +++++++++=Soma
Estruturas de controle
118
soma = 0; % Inicializa a variável soma com zero
for k = 1:10
soma = soma + k;
end
fprintf('A soma dos dez primeiros inteiros eh: %.2f', soma);
119. n Exemplo: Calcular o fatorial de um número
n.
Estruturas de controle
119
n = 5;
fatorial = 1; % Inicializa a variável soma com zero
for k = 1:n % Laço de repetição: n vezes
fatorial = fatorial*k; % Cálculo do fatorial
end
fprintf(‘O fatorial de %.2f eh %.2f', n, fatorial);
120. n Exemplo: Calcular a soma dos 5 primeiros
inteiros impares.
Estruturas de controle
120
soma = 0; % Inicializa a variável soma com zero
for k = 1:2:9
soma = soma + k;
end
fprintf('A soma dos 5 primeiros inteiros impares eh: %.2f', soma);
121. n for X while
n while: utilizado para repetir um trecho de código
quando não é desconhecido o número de iterações
do laço.
n for: utilizado para repetir um trecho de código
quando é conhecido o número de iterações do
laço.
Estruturas de controle
121
122. n Break
n Usada para controlar a operação dos laços for e while
n Encerra a execução do laço e passa o controle para a
próxima declaração logo após o fim do laço.
Estruturas de controle
122
123. n Uso do break
Estruturas de controle
123
for k = 1:5
if k == 3;
break;
end
fprintf(‘k = %dn’, k);
end
disp(‘Fim do laço!’);
124. n Uso do break
Estruturas de controle
124
for k = 1:5
if k == 3;
break;
end
fprintf(‘k = %dn’, k);
end
disp(‘Fim do laço!’);
Saída:
k = 1
k = 2
Fim do laço!
125. n Continue
n Usada para controlar a operação dos laços for
e while
n Termina a passagem corrente pelo laço e
retorna o controle para o início do laço.
Estruturas de controle
125
126. n Uso do Continue
Estruturas de controle
126
for k = 1:5
if k == 3;
continue;
end
fprintf(‘k = %dn’, k);
end
disp(‘Fim do laço!’);
127. n Uso do Continue
Estruturas de controle
127
for k = 1:5
if k == 3;
continue;
end
fprintf(‘k = %dn’, k);
end
disp(‘Fim do laço!’);
Saída:
k = 1
k = 2
k = 4
k = 5
Fim do laço!
128. Estruturas de controle
n Exercício: Implemente um algoritmo que
calcule a média e o desvio-padrão de um
conjunto de dados de entrada.
n dados de entrada: x = [3 4 5 -1]
n média:
n desvio-padrão:
128
x =
1
N
xi
i=1
N
!
s =
N xi
2
i=1
N
! " xi
i=1
N
!
#
$
%
&
'
(
2
N(N "1)
129. n Cálculo da série de Fourier na forma complexa
Série de Fourier Complexa
129
X[k]=
1
N
x[n]e! jk"0n
n=1
N
#
"0 =
2!
N
130. Série de Fourier Complexa
130
disp('Algoritmo para calculo da serie de Fourier')
disp('na forma complexa para a funcao x(t)=-at^2+b*t+c')
disp('------------------------------------------------’)
%
%Definicao e plotagem da funcao a ser expandida em serie de Fourier
%
a = input('Insira o valor do coeficiente a:');
b = input('Insira o valor do coeficiente b:');
c = input('Insira o valor do coeficiente c:');
t=0:0.01:100;
xt=-a.*t.*t+b.*t+c;
plot(t,xt)
ylabel('x(t)=-0.01t^2+t+10')
xlabel('t')
N=length(xt);
131. Série de Fourier Complexa
131
%Calculo dos coeficientes Xn da serie de Fourier
harmonicos = input('Insira o numero de harmonicos desejados:');
for n = 1:harmonicos;
for k = 1:N;
integral(k) = exp(-j*2*pi*(n-1)*k/N)*xt(k);
end
X(n) = sum(integral)/N;
end
132. Série de Fourier Complexa
132
%Calculo e plotagem das amplitude e fase de X
amplitude = abs(X);
fase = angle(X);
omega = 0:harmonicos-1;
figure
subplot(211), stem(omega,amplitude)
ylabel('Amplitude')
xlabel('Frequencia (multiplos de omega_0)')
subplot(212), stem(omega,fase)
ylabel('Fase')
xlabel('Frequencia (multiplos de omega_0)')
133. Série de Fourier Complexa
133
%Calculo e plotagem das partes real e imaginaria de X
Xreal = real(X);
Ximag = imag(X);
figure
subplot(211), stem(omega,Xreal)
ylabel('X_{real}')
xlabel('Frequencia (multiplos de omega_0)')
subplot(212), stem(omega,Ximag)
ylabel('X_{imaginario}')
xlabel('Frequencia (multiplos de omega_0)')
134. Série de Fourier Complexa
134
%Calculo da aproximacao da funcao original utilizando "m" harmonicos
m = input('Insira o numero de harmonicos desejados para reconstrucao
da funcao:');
for k=1:N;
for n = 1:m;
e(n) = X(n)*exp(j*2*pi*(n-1)*k/N);
end
funcao(k) = sum(e);
end
figure(1)
hold on
plot(t,funcao)
135. Funções definidas pelo usuário
n Um programa pode ser dividido em subtarefas;
n É possível codificar cada subtarefa como uma
função separada;
n Cada função pode ser testada e depurada de
forma independente das outras funções do
programa;
135
136. Funções definidas pelo usuário
n Benefícios
n Teste independente das subtarefas;
n Código reutilizável;
n Isolamento de efeitos colaterais indesejados;
n Uma função MATLAB é tipo especial de arquivo M
executado em um espaço de trabalho
independente;
136
137. Funções definidas pelo usuário
n Forma geral
137
function [outarg1, outarg2, ...] = fname(inarg1, inarg2, ...)
% H1 comment line
% Other comment lines
...
(Executable code)
...
(return)
(end)
138. Funções definidas pelo usuário
n Exemplo – função dist2
138
function distance = dist2 (x1, y1, x2, y2)
%DIST2 Calculate the distance between two points
% Function DIST2 calculates the distance between
% two points (x1,y1) and (x2,y2) in a Cartesian
% coordinate system.
% Calculate distance.
distance = sqrt((x2-x1).^2 + (y2-y1).^2);
139. Funções definidas pelo usuário
n Exemplo – Script que chama a função dist2
139
% Script file: test_dist2.m
% Get input data.
disp('Calculate the distance between two points:');
ax = input('Enter x value of point a: ');
ay = input('Enter y value of point a: ');
bx = input('Enter x value of point b: ');
by = input('Enter y value of point b: ');
% Evaluate function
result = dist2 (ax, ay, bx, by);
% Write out result.
fprintf('The distance between points a and b is %fn',result);
140. Funções definidas pelo usuário
n Exercício: A localização de um ponto cartesiano pode ser expressa por
coordenadas retangulares (x,y) ou polares (r,θ), como ilustrado abaixo.
140
141. Funções definidas pelo usuário
n Exercício (continuação): A relação entre esses dois conjuntos de
coordenadas é dada por
n Escreva duas funções rect2polar e polar2rect, que convertam
coordenadas de retangular para polar, e vice-versa, com θ expresso em
graus
141
143. Matemática Simbólica
n O Matlab permite o cálculo simbólico através
do Toolbox de Matemática Simbólica;
n Esse toolbox utiliza o kernel do MAPLE;
n O Matlab realiza todas as operações
elementares entre expressões simbólicas
utilizando a sintaxe comum
143
149. Matemática Simbólica
n Limite
n >> syms x
n >> limit(sin(x-1)/(1-x),x,1)
n Série
n soma dos 100 primeiros termos de
n >> symsum((4*n+1)/(n+3),n,1,100)
149
165. Sumário – Simulink
n O que é?
n Variáveis e funções
n Vetores
n Matrizes
n Operações
n Gráficos
165
166. n Um ambiente de modelagem e simulação de
sistemas dinâmicos e embarcados.
n Provê uma interface gráfica interativa e um
conjunto de bibliotecas de blolcos
configuráveis que permitem o projeto, a
simulação, a implementação e o teste de uma
grande variedade de sistemas variantes no
tempo, incluíndo: comunicações, controle,
processamento de sinais, de vídeo e de
imagens.
O que é?
167. Iniciando o Simulink
1. Digitar simulink no
prompt de comando
2. Clicar no botão na
barra de ferramentas
ou
ou
3. Navegar pelo botão
iniciar do MATLAB
Programação
168. n A programação no Simulink segue uma
interface gráfica intuitiva e fácil de usar:
1. Escolha os blocos funcionais desejados na
biblioteca;
Programação
169. n A programação no Simulink segue uma
interface gráfica intuitiva e fácil de usar:
2. Arraste-os para o espaço de trabalho (área de
programação)
Programação
170. n A programação no Simulink segue uma
interface gráfica intuitiva e fácil de usar:
3. Conecte-os da maneira adequada para obter o
comportamento desejado
Programação
171. n A programação no Simulink segue uma
interface gráfica intuitiva e fácil de usar:
4. Ajuste os parâmetros da simulação;
5. Execute o programa.
Programação
173. n Exemplo 1
n Ajuste automático da escala do gráfico
Exemplos
174. n Exemplo 1
n Ajuste manual da escala do gráfico
Exemplos
175. n Exemplo 1
n Inserindo um ganho de -1 (invertendo o sinal) e
comparando com a senóide original
Exemplos
Biblioteca Math
176. n Exemplo 1
n Configuração dos parâmetros do bloco product
Exemplos
Número de termos
da multiplicação.
Multiplicação
de matrizes ou
termo a termo.
177. n Exemplo 1
n Alterando os parâmetros da simulação
Exemplos
Tempo inicial
Tempo final
179. n Exemplo 1
n Editando um subsistema
Exemplos
Sub-sistema
180. n Exemplo 1
n As vezes é interessante tratar os dados no
ambiente do Matlab: Usa-se o bloco “to
workspace”
Exemplos
Cria a variável
A no workspace
Biblioteca
Sinks
181. n Exemplo 1
n Configuração do bloco “to workspace”
Exemplos
Cria a variável
A no workspace
Formato da variável
182. n Exemplo 1
n E lá no Workspace...
Exemplos
>> plot(tout,A)
189. n Exemplo 3
n Simulação de um tanque de nível sob a
influência de uma perturbação degrau na vazão
da alimentação.
Exemplos
q1
q3
q2
h
A
190. n Exemplo 3
n Assumindo
n Densidade do líquido e a área da seção
transversal do tanque (A) constantes.
n Relação entre a vazão e a carga é linear:
Exemplos
Rhq /3 =
191. n Exemplo 3
n O modelo é descrito por uma equação de
balanço transiente de massa no tanque:
n Substituindo a hipótese II na equação:
Exemplos
321 qqq
dt
dh
A ρρρρ −+=
R
h
qq
dt
dh
A ρρρρ −+= 21
192. n Exemplo 3
n Introduzindo as variáveis-desvio e aplicando a
Transformada de Laplace, chega-sa às funções
de transferência:
Exemplos
1
)(
)(
)('
1'
1 +
==
s
K
sG
sq
sh p
τ
1
)(
)(
)('
2'
2 +
==
s
K
sG
sq
sh p
τ onde:
AR
RK p
=
=
τ
193. n Exemplo 3
n Considera-se um tanque de 0.5 m de diâmetro
e uma válvula na saída na linha atuando sob
uma resistência linear (R) de 6.37 min/m2.
n Serão simulados um degrau de 1 ft3 na vazão
q1 a partir do tempo igual a 0 min (step) e um
degrau de 1 ft3 na vazão q2 a partir do tempo
igual a 10 min(step1).
Exemplos
A = 3.1415 * (0.5/2)^2
A = 0.196
R = 6.37 25.1
37.6
==
==
AR
RKp
τ
198. n Exemplo 3
n Resultados
Exemplos
1º estado
estacionário
2º estado
estacionário
1ª
perturbação
2ª
perturbação
199. n Exemplo 4
n Considerando um sistema de controle de nível
mostrado abaixo. O nível de líquido é medido e
a saída do transmissor de nível (LT) é enviada
para um controlador feedback (LC) que controla
o nível pelo ajuste da vazão volumétrica q2. A
segunda vazão de fluido, q1, corresponde à
variável perturbação (corrente chegando de
outra unidade, não posso controlar essa
corrente).
Exemplos
q1
q3
q2
h
A
LT LC
hm
200. n Exemplo 4
n Considerando uma válvula com a seguinte
função de transferência:
n Considerando um medidor com a seguinte
função de transferência:
Exemplos
psimKG vv min/0103.0 3
==
mpsiKG mm /24==
203. Exemplos
n Exemplo 4
n Quando a função de transferência é
apenas uma constante, como no caso do
medidor, pode-se representa-lá pelo
bloco Gain.
mpsiKG mm /24==
204. Exemplos
n Exemplo 4
n O controlador é representado pelo bloco
PID Controller. Podemos regular a sua
ação proporcional, integral e derivativa.