Mudanças entre as edições de "FIC MATLAB 2016-2"
m (moveu FIC Matlab 2016-2 para FIC MATLAB 2016-2) |
|||
(39 revisões intermediárias por um outro usuário não estão sendo mostradas) | |||
Linha 1: | Linha 1: | ||
Prof. [http://wiki.sj.ifsc.edu.br/index.php/Bruno_William_Wisintainer Bruno William Wisintainer] [mailto:bruno.wisintainer@ifsc.edu.br e-mail] <br/><br/> | Prof. [http://wiki.sj.ifsc.edu.br/index.php/Bruno_William_Wisintainer Bruno William Wisintainer] [mailto:bruno.wisintainer@ifsc.edu.br e-mail] <br/><br/> | ||
<big><big> Informações Básicas </big></big> <br/><br/> | <big><big> Informações Básicas </big></big> <br/><br/> | ||
− | '''Início:''' 11/Ago/2016 <br /> | + | '''Início:''' 11/Ago/2016 <br/> |
− | '''Término:''' 18/Out/2016 <br /> | + | '''Término:''' 18/Out/2016 <br/> |
− | Referência Básica: PALM, William J. '''Introdução ao MATLAB para engenheiros'''. Tradução de Tales Argolo Jesus. 3. ed. Porto Alegre: AMGH, 2013. xiv, 562, il. ISBN 9788580552041 <br /> | + | Referência Básica: PALM, William J. '''Introdução ao MATLAB para engenheiros'''. Tradução de Tales Argolo Jesus. 3. ed. Porto Alegre: AMGH, 2013. xiv, 562, il. ISBN 9788580552041 <br/> |
+ | Referência Complementar: MORAIS, V.. VIEIRA, C. '''MATLAB Curso Completo'''. FCA, 2013. 644. ISBN 9727227058 <br/> | ||
<big><big>Conteúdos Abordados </big></big> | <big><big>Conteúdos Abordados </big></big> | ||
Linha 79: | Linha 80: | ||
- Formatos de exibição <br/> | - Formatos de exibição <br/> | ||
− | + | {| border="4" cellpadding="2" | |
+ | ! '''Comando''' | ||
+ | ! '''Descrição e exemplo''' | ||
+ | |- | ||
+ | | format short || Quatro dígitos decimais (padrão); 13.6745 | ||
+ | |- | ||
+ | | format long || 16 dígitos; 17.27484029463547 | ||
+ | |- | ||
+ | | format short e || Cinco dígitos (quatro decimais) mais o expoente; 6.3792e+03 | ||
+ | |- | ||
+ | | format long e || 16 dígitos (15 decimais) mais o expoente; 6.379243784781294e-04 | ||
+ | |- | ||
+ | | format bank || Dois dígitos decimais; 126.73 | ||
+ | |- | ||
+ | | format + || Positivo, negativo ou zero; + | ||
+ | |- | ||
+ | | format rat || Aproximação racional; 43/7 | ||
+ | |- | ||
+ | | format compact || Suprime algumas linhas em branco | ||
+ | |- | ||
+ | | format loose || Restabelece o modo de exibição menos compacto | ||
+ | |} <br/> | ||
- Funções Matemáticas <br/> | - Funções Matemáticas <br/> | ||
− | + | ||
− | '''utilizando ''d'' após | + | {| border="4" cellpadding="2" |
+ | ! '''Função''' | ||
+ | ! '''Sintaxe no Matlab''' | ||
+ | |- | ||
+ | | <math> e^x </math> || exp(x) | ||
+ | |- | ||
+ | | <math>\sqrt{x}</math> || sqrt(x) | ||
+ | |- | ||
+ | | ''ln x'' || log(x) | ||
+ | |- | ||
+ | | <math>\log_{10} x </math> || log10(x) | ||
+ | |- | ||
+ | | ''cos x'' || cos(x) | ||
+ | |- | ||
+ | | ''sen x'' || sin(x) | ||
+ | |- | ||
+ | | ''tan x'' || tan(x) | ||
+ | |- | ||
+ | | cos<sup>-1</sup>''x'' || acos(x) | ||
+ | |- | ||
+ | | sen<sup>-1</sup>''x'' || asin(x) | ||
+ | |- | ||
+ | | tan<sup>-1</sup>''x'' || atan(x) | ||
+ | |} | ||
+ | '''utilizando ''d'' após as funções ''sin'', ''cos'' e ''tan'' e suas inversas, faz o cálculo em graus''' <br/><br/> | ||
- Arranjo de vetor utilizando dois pontos (:);<br/> | - Arranjo de vetor utilizando dois pontos (:);<br/> | ||
Linha 537: | Linha 583: | ||
== Aula 16 == | == Aula 16 == | ||
{{collapse top| bg=lightblue | 04/Out}} | {{collapse top| bg=lightblue | 04/Out}} | ||
+ | |||
+ | - Definição de Matriz Aumentada;<br/> | ||
+ | - Comando ''rref'' para escalonar matriz; | ||
Exercício (livro - adaptado - T8.3-1 p. 343): Encontre duas soluções e o escalonamento para o seguinte conjunto: | Exercício (livro - adaptado - T8.3-1 p. 343): Encontre duas soluções e o escalonamento para o seguinte conjunto: | ||
Linha 566: | Linha 615: | ||
== Aula 17 == | == Aula 17 == | ||
− | {{collapse top| bg=lightblue | | + | {{collapse top| bg=lightblue | 06/Out}} |
+ | |||
+ | Exercício (livro - adaptado - 13 p.364): Veja a figura abaixo. Suponha que os veículos não param dentro da rede. Um engenheiro de tráfego deseja saber se os fluxos de tráfego <math>f_1, f_2, ..., f_7</math> (em veículos por hora) podem ser calculados a partir dos fluxos medidos mostrados na figura. Se não, então determine quantos sensores de tráfego a mais precisam ser instalados e obtenha as expressões para os outros fluxos de tráfego em termos das quantidades medidas.<br/> | ||
+ | |||
+ | [[Image:Exercícios 1 Aula 17 FIC Matlab.jpeg | 600px]] <br/> | ||
+ | |||
+ | - Caracteres especiais: <br/> | ||
+ | {| border="4" cellpadding="2" | ||
+ | ! '''Símbolo''' | ||
+ | ! '''Descrição''' | ||
+ | |- | ||
+ | | \b || ''Backspace'' | ||
+ | |- | ||
+ | | \n || Mudança de linha | ||
+ | |- | ||
+ | | \r || ''Return'' | ||
+ | |- | ||
+ | | \t || Tabulação horizontal | ||
+ | |- | ||
+ | | \\ || Escreve o caracter \ | ||
+ | |- | ||
+ | | \ || Escreve o caracter ' | ||
+ | |- | ||
+ | | %% || Escreve o caracter % | ||
+ | |- | ||
+ | |} | ||
+ | |||
+ | - Descritores de formato:<br/> | ||
+ | {| border="4" cellpadding="2" | ||
+ | ! '''Símbolo''' | ||
+ | ! '''Descrição''' | ||
+ | |- | ||
+ | | ''%c'' || Um único caracter | ||
+ | |- | ||
+ | | ''%d'' || Número inteiro | ||
+ | |- | ||
+ | | ''%e'' ou ''%E'' || Número real escrito em notação científica | ||
+ | |- | ||
+ | | ''%f'' || Número real com parte decimal | ||
+ | |- | ||
+ | | ''%g'' || Notação mais compacta de ''%e'' e ''%f'' | ||
+ | |- | ||
+ | | ''%o'' || Número octal sem sinal | ||
+ | |- | ||
+ | | ''%s'' || ''String'' de caracteres | ||
+ | |- | ||
+ | | ''%u'' || Número inteiro sem sinal | ||
+ | |- | ||
+ | | ''%x'' ou ''%X'' || Hexadecimal (com letras minúsculas ou maiúsculas) | ||
+ | |- | ||
+ | |} | ||
+ | <br/> | ||
+ | Exercício: Fazer uma tabela com 3 colunas no Matlab que salve em um arquivo de texto externo, com o ângulo, seno e cosseno. Sendo o ângulo de <math>0 </math> a <math>2\pi</math>.<br/> | ||
+ | |||
+ | - Comando ''msgbox'' para criar caixa de mensagem e opções extras como título, ícone pré-definido ou criado; <br/> | ||
+ | |||
+ | {{collapse bottom}} | ||
+ | |||
+ | == Aula 18 == | ||
+ | {{collapse top| bg=lightblue | 11/Out}} | ||
+ | |||
+ | - Caixa de diálogo de mensagem de aviso (''warndlg'');<br/> | ||
+ | - Caixa de diálogo de mensagem de erro (''errordlg'');<br/> | ||
+ | - Caixa de diálogo de mensagem de interrogação com múltipla escolha (''questdlg'');<br/> | ||
+ | |||
+ | Exercício: Criar uma caixa de interrogação com múltipla escolha com as opções: Candidato A, Candidato B e Branco. Após apresente a escolha. <br/> | ||
+ | |||
+ | - Caixa de diálogo de mensagem de ajuda (''helpdlg'');<br/> | ||
+ | - Caixa de diálogo de introdução de dados (''inputdlg'');<br/> | ||
+ | |||
+ | Exercício: Criar um código Matlab para abrir uma janela com a mensagem "O que você deseja comprar?" com múltiplas escolhas: Arroz, Feijão e Macarrão, quando escolher deve aparecer uma janela com opção para completar com a quantidade. De acordo com a quantidade calcular o preço total considerando o preço unitário do Arroz $6, do Feijão $10 e do Macarrão $5,50. Após a escolha deve aparecer uma terceira janela com opção de "sim" ou "não" para repetir o procedimento. Caso aceite repetir o código deve-se atualizar o cálculo com a nova escolha do produto e da quantidade. <br/> | ||
+ | |||
+ | {{collapse bottom}} | ||
+ | |||
+ | == Aula 19 == | ||
+ | {{collapse top| bg=lightblue | 13/Out}} | ||
+ | |||
+ | - Caixa de diálogo com lista de seleção de múltipla escolha (''listdlg''); | ||
+ | |||
+ | Exercício: Criar um código com uma pergunta sobre preferência de filmes de acordo com o gênero, com múltiplas escolhas. Apresentar as opções escolhidas. | ||
+ | |||
+ | - Caixa de diálogo com lista de seleção de escolha única também usando ''listdlg''; | ||
+ | - Exemplo 1 do uso de ''Graphical User Interface'' (GUI); | ||
+ | |||
+ | {{collapse bottom}} | ||
+ | |||
+ | == Aula 20 == | ||
+ | {{collapse top| bg=lightblue | 18/Out}} | ||
+ | |||
+ | - Término do Exemplo 1 do uso de ''Graphical User Interface'' (GUI); <br/> | ||
+ | - Exemplo 2 do uso de ''Graphical User Interface'' (GUI);<br/> | ||
− | |||
− | |||
{{collapse bottom}} | {{collapse bottom}} |
Edição atual tal como às 16h36min de 3 de março de 2017
Prof. Bruno William Wisintainer e-mail
Informações Básicas
Início: 11/Ago/2016
Término: 18/Out/2016
Referência Básica: PALM, William J. Introdução ao MATLAB para engenheiros. Tradução de Tales Argolo Jesus. 3. ed. Porto Alegre: AMGH, 2013. xiv, 562, il. ISBN 9788580552041
Referência Complementar: MORAIS, V.. VIEIRA, C. MATLAB Curso Completo. FCA, 2013. 644. ISBN 9727227058
Conteúdos Abordados
Aula 1
Aula 2
16/Ago | ||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
- Formatos de exibição
- Funções Matemáticas
utilizando d após as funções sin, cos e tan e suas inversas, faz o cálculo em graus - Arranjo de vetor utilizando dois pontos (:); - Exercício: Plotar a função de -4 até 4 e encontrar as raízes por Bhaskara |
Aula 3
18/Ago |
---|
Exercício: Fazer o plot de um sinal de tensão x tempo, como da figura abaixo: - Comando axis. |
Aula 4
23/Ago | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Exercício (livro - 16 p. 101): A tabela a seguir mostra o salário por hora, as horas de trabalho e a produção (número de dispositivos produzidos) em uma semana para cinco fabricantes de dispositivos.
Utilize o MATLAB para responder essas questões: - Comandos mean, ceil, floor e round; Exercício: A corda da figura abaixo está presa nos pontos A e B, determine seu comprimento e a sua direção, medidos de A para B. - Produto escalar (dot) e produto vetorial (cross) de dois vetores; - Comando poly para criar um polinômio a partir de raízes; |
Aula 5
25/Ago |
---|
- Comando input para entrada de dados; Exercício: Criar uma calculadora de IMC com perguntas (input) para massa e altura, aparecendo na sequência o resultado - Criando estruturas; |
Aula 6
30/Ago |
---|
- Funções trigonométricas; Exercício: Criar uma função no arquivo .m da definição pelo exponencial do cosseno hiperbólico e do seno hiperbólico, comparando com a funções já existentes (cosh e sinh), plotar as curvas idênticas em 2 figuras (arquivo .m 1). Criar um novo arquivo .m com valores de entrada de até (arquivo .m 2). - Importar arquivo para o Matlab, pelo menu e pelo comando uiimport; Exemplo: usar [Celular4g.txt], importar e trabalhar com as funções de matrizes. - Padronizar para o formato que o Matlab reconhece os números: ponto (.) e (,); |
Aula 7
01/Set | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Exercício: com o arquivo [Add_user.txt] (Adições Líquidas de Aparelhos 4G das Operadoras no período), calcular a soma dos anos 2014, 2015 e 2016 (até o momento) por operadora e a soma e a média por período. - Tipos de códigos: Sequenciais, Condicionais e Iterativos; Operadores relacionais
Operadores de curto circuito
- As sentenças if, else e elseif. Exercício: Criar um código que calcula o valor total da compra de algumas unidades de arroz (5kg), feijão (1kg) e café (500g). Colocar opção de entrada de dados com input e condição que não existe unidade negativa. - Laços for. |
Aula 8
06/Set |
---|
Exercício: Calcule e armazene a Sequência de Fibonacci, com a possibilidade de escolher o número de termos. Exercício: Criar uma matriz (NxN) em que a diagonal principal é o produto de linha por coluna e nos outros termos é a soma
da linha com a coluna, com a possibilidade de escolher a dimensão N da matriz. Exercício: Calcule o fatorial de um número que pode ser escolhido. - Laços while. Exercício (livro - Exemplo 4.6-2 p. 186): Determine o tempo necessário para que você acumule pelo menos $10000 em uma conta bancária se você depositar inicialmente $500 e mais $500 ao final de cada ano, com um rendimento anual de 5%. Exercício: Fazer o plot de um sinal de tensão x tempo, como da figura abaixo, usando os conceitos da aula de hoje: |
Aula 9
08/Set |
---|
- A estrutura switch. Exercício (livro - adaptado - T4.7-1 p. 189): Complemente o exercício anterior (resolvido em sala, exemplo p. 189) com os ângulos 0, 90, 180, 270 e 360 e as coordenadas. Exercício (livro - Exemplo 4.7-1 p. 189): Utilize a estrutura switch para calcular o total de dias decorridos em um ano. Entrada de dados: o número do mês (1 até 12), o dia e a indicação de o ano ser bissexto ou não. Exercício: Usando switch, calcule a soma dos ângulos internos de uma figura geométrica. Entrada de dados: o nome da figura, pelo menos até o hexágono. |
Aula 10
13/Set | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Exercício (livro - adaptado - 43 p. 215): Utilize a estrutura switch para calcular a quantidade de dinheiro que é acumulada em uma conta durante um ano. O programa deve aceitar as seguintes entradas: a quantidade inicial de dinheiro depositada na conta; a frequência do rendimento (mensal, trimestral, semestral ou anual); e o rendimento. Rode o seu programa para um depósito inicial que pode ser escolhido (por exemplo R$1000); utilize um rendimento a sua escolha (por exemplo 5%). - Tipos de axis: Escala automática, equal, square e definido manualmente; Exercício (livro - T5.1-2 p. 224): Utilize o comando fplot para investigar a função para . Quantos valores de aproximadamente são necessários para que seja obtida a mesma plotagem utilizando-se o comando plot? - Comando legend;
|
Aula 11
15/Set |
---|
Exercício (livro): Plote a parte imaginária versus a parte real da função n para . Escolha uma quantidade suficiente de pontos para obter uma curva suave. Rotule cada eixo e insira um título. Utilize o comando axis para alterar o espaçamento entro os rótulos dos tick-marks. - Comandos gtext para colocar texto na figura com um clique e text para colocar texto em uma coordenada definida. |
Aula 12
20/Set | ||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
- Comparação de gráficos: plot, loglog, semilogx e semilogy; - Gráfico com dois eixos em y (plotyy); - Letras gregas nos gráficos:
- Funções stem, stairs e bar; |
Aula 13
22/Set |
---|
- Função polar; - Mudar a espessura da linha com linewidth; Exercício (livro - adaptado - 10 p.253): Muitas aplicações utilizam a seguinte aproximação de "ângulo pequeno" para o seno com a finalidade de se obter um modelo mais simples que seja fácil de ser entendido e analisado. A aproximação estabelece que sen(x) , em que x deve ser em radianos. Investigue a precisão desta aproximação com dois plotes. No primeiro, plote sen(x) versus x para . No segundo, plote o erro da aproximação (sen(x) - x) versus x para . - Plot em 3 dimensões com plot3; Exercício (livro - 28 p. 258): As equações paramétricas para uma hélice circular são: - Criar uma malha 3D com meshgrid; |
Aula 14
27/Set | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Exercício (livro - 30 p. 259): Obtenha as plotagens de superfície e de contorno para a função 22, mostrando o mínimo em . - Comando polyfit, que ajusta o polinômio de grau n aos dados descritos por x e y; Exercício (livro - adaptado - Exemplo 6.2-1 p. 277): Os dados da tabela a seguir correspondem ao número de veículos (em milhões) que cruzam uma ponte a cada ano durante 10 anos. Ajuste um polinômio aos dados até a ordem 4, calcule o coeficiente de ajuste. Plote a "melhor" curva.
- Comando flip, representa o vetor de trás pra frente; |
Aula 15
29/Set | ||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Exercício (livro - adaptado - exemplo 6.2-2 p. 278): A tabela a seguir fornece dados de crescimento de uma determinada população de bactérias com o tempo. Ajuste uma equação para esses dados, calcule o coeficiente de ajuste e estime o fluxo no tempo 18 min. Plote a curva escolhida.
- Plotar dados da tabela, menu Tools e depois Basic Fitting, para escolher a melhor função que interpola os dados. Exercício (livro - 11 p. 363): Resolva as seguintes equações: |
Aula 16
04/Out | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
- Definição de Matriz Aumentada; Exercício (livro - adaptado - T8.3-1 p. 343): Encontre duas soluções e o escalonamento para o seguinte conjunto: Exercício (livro - adaptado - 12 p. 363): A tabela a seguir mostra quantas horas de processo são necessárias para que os reatores A e B produzam uma tonelada de cada um dos produtos químicos 1, 2 e 3. Os dois reatores são disponíveis por 35 e 40 horas por semana, respectivamente.
Sejam x, y e z o número de toneladas de cada um dos produtos 1, 2 e 3 que podem ser produzidos em uma semana. |
Aula 17
06/Out | ||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Exercício (livro - adaptado - 13 p.364): Veja a figura abaixo. Suponha que os veículos não param dentro da rede. Um engenheiro de tráfego deseja saber se os fluxos de tráfego (em veículos por hora) podem ser calculados a partir dos fluxos medidos mostrados na figura. Se não, então determine quantos sensores de tráfego a mais precisam ser instalados e obtenha as expressões para os outros fluxos de tráfego em termos das quantidades medidas. - Caracteres especiais:
- Descritores de formato:
- Comando msgbox para criar caixa de mensagem e opções extras como título, ícone pré-definido ou criado; |
Aula 18
11/Out |
---|
- Caixa de diálogo de mensagem de aviso (warndlg); Exercício: Criar uma caixa de interrogação com múltipla escolha com as opções: Candidato A, Candidato B e Branco. Após apresente a escolha. - Caixa de diálogo de mensagem de ajuda (helpdlg); Exercício: Criar um código Matlab para abrir uma janela com a mensagem "O que você deseja comprar?" com múltiplas escolhas: Arroz, Feijão e Macarrão, quando escolher deve aparecer uma janela com opção para completar com a quantidade. De acordo com a quantidade calcular o preço total considerando o preço unitário do Arroz $6, do Feijão $10 e do Macarrão $5,50. Após a escolha deve aparecer uma terceira janela com opção de "sim" ou "não" para repetir o procedimento. Caso aceite repetir o código deve-se atualizar o cálculo com a nova escolha do produto e da quantidade. |
Aula 19
13/Out |
---|
- Caixa de diálogo com lista de seleção de múltipla escolha (listdlg); Exercício: Criar um código com uma pergunta sobre preferência de filmes de acordo com o gênero, com múltiplas escolhas. Apresentar as opções escolhidas. - Caixa de diálogo com lista de seleção de escolha única também usando listdlg; - Exemplo 1 do uso de Graphical User Interface (GUI); |
Aula 20
18/Out |
---|
- Término do Exemplo 1 do uso de Graphical User Interface (GUI); |