Title: UNIVERSIDADE FEDERAL DE CAMPINA GRANDE
1UNIVERSIDADE FEDERAL DE CAMPINA GRANDE
- 4ª Semana Matemática
- Introdução a Programação no MATLAB
-
2Currículo Resumido
- 2003.1 - Graduando em Engenharia Elétrica
- 2004.1 a 2006.2 - Monitor de Cálculo 1 pelo DME
- 2007 Membro do Projeto Olhos Digitais
- 2007 Participação no IV Encontro de Extensão da
UFCG - (Atual) - Monitor Voluntário do Laboratório de
Princípios de Comunicações - (Atual) Professor Voluntário de Matemática do
- PVS (Pré Vestibular Solidário)
2007. - E-mail josenildofg_at_gmail.com
-
3Sumário
- Introdução ao MATLAB
- Estruturas de Controle
- Arquivos de Comando M-File
- Funções de Entrada e Saída
- Introdução a Funções MATLAB
- Toolboxes
- Toolbox de Matemática Simbólica
- Programas em MATLAB
4Introdução ao MATLAB
- MATLAB(MATrix LABoratory) Programa de computador
especializado e otimizado para cálculos
científicos e de engenharia. - Surgiu em 1970 com o intuito de auxiliar os
cursos de Teoria Matricial, Álgebra Linear e
Analise Numérica.
5Introdução ao MATLAB
- Vantagens
- Facilidade de Uso
- Independência de Plataforma
- Funções Predefinidas
- Interface Gráfica de Usuário
- Compilador MATLAB
- Desvantagens
- Linguagem Interpretada
- Custo
6(No Transcript)
7Navegador de Ajuda
Espaço de Lançamento
Janela de Comandos MATLAB
Navegador de Diretório Corrente
Janela de Histórico de Comandos
8Introdução ao Matlab
- Informação do Sistema
- gtgtcomputer
- gtgtversion
- gtgtver
- gtgtlicense
9Introdução ao Matlab
MATLAB comand pi Comentários
format short 3.1416 5 dígitos
format long 3.14159265358979 16 dígitos
format short e 3.1416e000 5 dígitos expoente
format long e 3.141592653589793e000 16 dígitos expoente
format short g 3.1416 short ou short e
format long g 3.14159265358979 long ou long e
10Introdução ao Matlab
MATLAB comand pi Comentários
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
11Introdução ao Matlab
- Comandos básicos
- gtgtwho -- Lista as variáveis.
- gtgtwhos -- Lista e especifica as variáveis.
- gtgtclc -- Limpa a Janela de Comandos.
- gtgtclf -- Limpa figura atual
- gtgtclear -- Deleta variáveis do workspace MATLAB.
- gtgthelp -- Ajuda do Matlab, documentação.
- gtgthelp elfun Lista funções do MATLAB
12Operadores Aritméticos
- Forma Geral A op B
- Soma Estrutural e Matricial
- - Subtração Estrutural e Matricial
- Multiplicação Matricial
- / Divisão Matricial à Direita
- \ Divisão Matricial à Esquerda
- Expoente Matricial
- Operador de Transposição
13Operadores Aritméticos
14Operadores Aritméticos
- A C
- Operação ilegal
- A D
- 6 5
- 7 6
15Operadores Aritméticos
- A . B
- -1 0
- 0 1
- A . C
- Operação ilegal
16Operadores Aritméticos
- A / B
- -1 2
- -2 5
- A \ B
- -1 2
- 2 -3
- A ./ B
- -1 0
- Inf 1
- A .\ B
- -1 Inf
- 0 1
17Operadores Relacionais
- Forma geral
- A op B
- A e B Operandos.
- Pode ser uma matriz,
- um escalar ou uma
- cadeia de caracteres.
- Op Operador
Operador Operação
Igual a
Diferente de
gt Maior que
gt Maior que ou igual a
lt Menor que
lt Menor que ou igual a
18Operadores Relacionais
- Os operadores lt, lt, gt e gt são usados para
comparar a parte real dos operandos. - Os operadores e são usados para comparar a
parte real e imaginária dos operandos.
19Operadores Relacionais
- Expressão Resultado
- 5 gt 3 1
- AC gt BA 0 1
- a gt b 1 0
- 1 j lt 2 3j 1
- x gt 3 8 1 0
- a gt 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
20Operadores 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
21Operadores Lógicos
- O MATLAB utiliza a lógica positiva, ou seja,
assume-se o valor verdadeiro se ele for diferente
de zero e falso se ele for igual a zero.
22Operadores Lógicos
- Tabela da Verdade para Operadores Lógicos
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
23Precedência dos operadores
- Os operadores aritméticos são avaliados
primeiro. - Os operadores relacionais são avaliados da
esquerda para a direita. - Todos os operadores são avaliados.
- Todos os operadores são avaliados.
- 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.
24Operadores Lógicos
- Expressão Resultado
- A 0
- A l B 1
- B l C 1
- 3 gt 4 1 0
- 3 gt (4 1) 1
- C 0
- A l B C 1
- A C 1
- B C 0
- A 1, B 0 e C -10
25Operadores Lógicos -Exercícios
- Expressão
- A
- A l B
- B l C
- 3 gt 4 1
- 3 gt (4 1)
- C
- A l B C
- A C
- B C
- Resultado
- 0
- 1
- 1
- 0
- 1
- 0
- 1
- 1
- 0
26Estruturas de Controle
- 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á apresentado as seguintes estruturas de
controle - if
- if-else
- switch
- while
- for
27Estruturas de Controle
Inicio e fim de uma estrutura de uma controle
Símbolo de decisão
Indica que ações serão executadas
28Estruturas de Controle
- Algoritmo
- Série de ações executadas em uma ordem
especifica. - Pseudocódigo
- Linguagem artificial e informal de representar o
código de um programa. - Útil para desenvolver algoritmos que serão
convertidos em programas estruturados no Matlab.
29Estruturas de Controle
- if
- Estrutura de seleção para escolha de cursos
- de ação específicos.
- 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.
30Estruturas de Controle
Testa a condição
Verdadeira
Condição
Executa uma ação
Falsa
31Estruturas de Controle
- Pseudocódigo
- Se a nota do estudante for maior ou igual que 7.0
- Imprima Aprovado
- Código no Matlab
- if nota gt 7
- fprintf(Aprovado)
- end
32Estruturas de Controle
Testa a condição
Verdadeira
Falsa
Condição
Executa uma ação
Executa uma ação
33Estruturas de Controle
- Pseudocódigo
- Se a nota do estudante for maior ou igual que
7.0 - Imprima Aprovado
- senão
- Imprima Reprovado
- Código no Matlab
- if nota gt 7
- fprintf(Aprovado)
- else
- fprintf(Reprovado)
- end
34Estruturas de controle
- Laços são construções MATLAB que nos permitem
executar uma sequência de declarações mais de uma
vez. - Existem dois tipos de laços
- while
- for
35Estruturas de controle
- 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
36Estruturas de Controle
Testa a condição
Verdadeira
Condição
Executa uma ação
Falsa
37Estruturas de Controle
- switch
- Estrutura de seleção múltipla.
- Consiste de uma série de rótulos case e um
- otherwise.
38Estrutura de Controle
Verdadeiro
Ação(ões) do case a
Case (a)
Falso
Case (b)
Verdadeiro
Ação(ões) do case b
Falso
.
.
Falso
Otherwise
39Estruturas de Controle
- 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
40Estrutura de Controle
n número de iterações do laço for cont variável
de controle
cont 1
Inicialização da variável de controle
cont 2
cont 3
Verdadeiro
cont lt n
Corpo do laço
cont cont 1
Falso
41Estruturas de Controle
- Exemplo Calcular a soma dos 10 primeiros
inteiros. - soma 0 Inicializa a
variável soma com zero - for k 110
- soma soma k
- end
- fprintf('A soma dos dez primeiros inteiros eh
.2f', soma)
42Estruturas de Controle
- Exemplo Calcular o fatorial de um número n.
- n 5
- fatorial 1 Inicializa a
variável soma com zero - for k 1n Laço de repetição
n vezes - fatorial fatorialk Cálculo do
fatorial - end
- fprintf(O fatorial de .2f eh .2f', n,
fatorial)
43Estruturas de Controle
- Exemplo Calcular a soma dos 5 primeiros inteiros
impares. - soma 0 Inicializa a
variável soma com zero - for k 129
- soma soma k
- end
- fprintf('A soma dos 5 primeiros inteiros impares
eh .2f', soma)
44Estruturas de Controle
- for X while
- while utilizado para repetir um trecho de
código quando não é desconhecido o número de
iterações do laço. - for utilizado para repetir um trecho de
código quando é conhecido o número de iterações
do laço.
45Estruturas de Controle
- Break
- Usada para controlar a operação dos laços for e
while - 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.
46Estruturas de Controle
- Uso do break
- for k 15
- if k 3
- break
- end
- fprintf(k d\n, k)
- end
- disp(Fim do laço!)
47Estruturas de Controle
48Estruturas de Controle
- Continue
- Usada para controlar a operação dos laços for e
while - Termina a passagem corrente pelo laço e retorna o
controle para o inicio do laço.
49Estruturas de Controle
- Uso do continue
- for k 15
- if k 3
- continue
- end
- fprintf(k d\n, k)
- end
- disp(Fim do laço!)
50Estruturas de Controle
- k 1
- k 2
- k 4
- k 5
- Fim do laço!
51Arquivos de Comando M-File
- Geralmente, utiliza-se o prompt do MATLAB para
introduzir os comandos. Entretanto este
procedimento simples para execução de comandos no
prompt se torna altamente ineficiente quando a
complexidade do problema aumenta. Em suma,
podemos dizer que 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.
52Arquivos de Comando M-File
- 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.
53Arquivos de Comando M-File
- Como Criar um Arquivo M (M-file)
- Para criar um arquivo M-file, siga os seguintes
passos - Inicialmente, você deve abrir o programa MATLAB,
dando um duplo click no ícone do MATLAB que está
na área de trabalho. - Selecione o menu File (dê um click).
- Selecione o item New e em seguida aponte para
M-file e dê um click.
54Arquivos de Comando M-File
- Exenplo de script-file.
- script-file circulo.m
- Este programa calcula a área de um circulo
- raio 2.5
- area piraio2
- fprintf(Area do circulo .3f ', area)
55Arquivos de Comando M-File
- Como Executar um Arquivo M (M-file)
- Para executar um arquivo M-file no MATLAB é
preciso gravar o arquivo correspondente. Para
isto, selecione o item Save Workspace As do menu
File. Dê preferência salvar o arquivo no
diretório corrente do MATLAB, ou seja, na pasta
work. Para executar o arquivo M, digite 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.
56Arquivos de Comando M-File
- Para exemplificar, considere o arquivo
circulo.m. Digite no prompt do MATLAB o nome do
arquivo circulo. Será apresentado o executável do
programa. - gtgt circulo
- Area do circulo 19.635
57Arquivos de Comando M-File
- Resumindo, 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.
58Introdução a Funções MATLAB
- Funções Predefinidas MATLAB
- Fornece uma enorme variedade de funções prontas
para uso. - Funções trigonométricas, logarítmicas, raízes.
- Funções hiperbólicas, funções de Bessel, etc.
- As funções MATLAB podem devolver mais de
- um resultado para o programa que as ativa.
59Introdução a Funções MATLAB
- Uso da função max
- Retorna o valor máximo de um vetor de entrada,
podendo retornar a localização de onde ocorreu o
máximo. - maxval max(1 2 -4 5)
- maxval 5
- maxval index max(1 2 -4 5)
- maxval 5
- index 4
60Introdução a Funções MATLAB
- Funções MATLAB com Matrizes como entrada.
- x 0 pi/2 pi 3pi/2 2pi Entrada
- y sin(x)
Saída - y 0 1 0 -1 0
Resultado
61Introdução a Funções MATLAB
- Agora é com você!!!
- x 0 pi/2 pi 3pi/2 2pi
- y cos(x)
62Introdução a Funções MATLAB
- Agora é com você!!!
- Calcule os valores de sin x, cos x e tan x, para
x 30º, 45º e 60º.
63Introdução a Funções MATLAB
64Introdução a Funções MATLAB
- Funções Definidas pelo usuário.
- function outarg1, outarg2, ... fname(inarg1,
inarg2, ...) - H1 comentário
- Mais um comentário
- ...
- (Código executável)
- ...
- (return)
65Introdução a Funções MATLAB
y
B
yb
d
A
C
ya
x
xa
xb
D distancia entre os pontos A e B
66Introdução a Funções MATLAB
- function resultado distancia2(xa,ya,xb,yb)
- DISTANCIA2 Calcula a distancia entre dois
pontos - Function DISTANCIA2 calcula a distancia entre
dois pontos - A(xa,ya) e B(xb,yb) no sistema de coordenadas
cartesiano. -
- Chamada a função
-
- res distancia2(xa, ya, xb, yb)
-
- Definiçao das variaveis
- xa abscissa do ponto A
- ya ordenada do ponto A
- xb abscissa do ponto B
- yb ordenada do ponto B
- resultado Distancia entre os pontos A e B.
67Introdução a Funções MATLAB
- OBSERVAÇOES
- Data Programador
Descriçao - 05/10/07 Josenildo F. Galdino
Codigo Original - Calculo da distancia
- resultado sqrt((xb - xa).2 (yb - ya).2)
68Introdução a Funções MATLAB
- Uso da função distancia2.
- Script file teste_distancia2.m
- Este programa testa a funçao distancia2
- Data Programador
Descriçao - 05/10/07 Josenildo F. Galdino Codigo
Original - Definiçao das variaveis
- xa abscissa do ponto A
- ya ordenada do ponto A
- xb abscissa do ponto B
- yb ordenada do ponto B
- resultado distancia entre os dois pontos A e B.
69Introdução a Funções MATLAB
- Dados fornecidos pelo usuario
- disp('Calcule a distancia entre os pontos A e
B') - xa input('Forneca a abscissa do ponto A ')
- ya input('Forneca a ordenada do ponto A ')
- xb input('Forneca a abscissa do ponto B ')
- yb input('Forneca a ordenada do ponto B ')
- Uso da funçao definida pelo programador
- resultado distancia2(xa, ya, xb, yb)
Chamada a funçao. - Exibiçao do resultado
- fprintf('A distancia entre os pontos A e B e
f\n', resultado)
70Introdução a Funções MATLAB
- gtgt teste_distancia2
- Calcule a distancia entre os pontos A e B
- Forneca a abscissa do ponto A 1
- Forneca a ordenada do ponto A 1
- Forneca a abscissa do ponto B 2
- Forneca a ordenada do ponto B 2
- resultado
- 1.4142
- A distancia entre os pontos A e B e 1.414214
- gtgt
71Toolboxes
- Statistics Toolbox
- Symbolic Math Toolbox
- Partial Diferrential Equation Toolbox
- Curve Fitting Toolbox
- Signal Processing Toolbox
- Control System Toolbox
- Communication Toolbox
72Symbolic Math Toolbox
- O Toolbox de Matemática Simbólica disponibiliza
uma coleção de diversas funções do MATLAB
utilizadas para calcular operações básicas, tais
como derivadas, limites, integrais, expansão da
serie de Taylor, e outras operações. A
manipulação simbólica no MATLAB pode ser vista
como uma evolução do modo como você utiliza o
MATLAB para processar números.
73Symbolic Math Toolbox
- A grande vantagem de se utilizar tal processo é
que podemos obter resultados mais exatos,
eliminando-se assim a imprecisão introduzida
pelos valores numéricos. Podemos resolver
derivadas, integrais, equações diferenciais e
algébricas utilizando-se esta poderosa
ferramenta.
74Symbolic Math Toolbox
- EXPRESSÕES SIMBÓLICAS
- Deve-se entender por Expressão simbólica as
expressões que contêm objetos simbólicos que
podem representar números, funções e operações e
variáveis. - Dica As variáveis simbólicas não precisam de um
valor numérico. Esta variável simbólica
representa apenas um símbolo de uma expressão
simbólica.
75Symbolic Math Toolbox
- EXPRESSÕES SIMBÓLICAS
- Exemplos
76Symbolic Math Toolbox
- O MATLAB disponibiliza várias funções que
trabalham com funções polinomiais e que podem ser
utilizadas para representar funções polinomiais.
Dentre elas, encontram-se as seguintes funções - collect
- expand
- factor
- simplify
- simple
77Symbolic Math Toolbox
- collect
- Organiza os coeficientes
- Sintaxe
- collect( f )
- mostra um polinômio f em sua variável simbólica,
seja x, e - organiza todos os coeficientes com a mesma
potência de x. - Um segundo argumento pode especificar a variável
que se deve - organizar se houver mais de uma variável
simbólica possível.
78Symbolic Math Toolbox
- collect(f)
- 1) Escreva a função y (x1)3 na forma
polinomial - gtgt clear Limpa a Janela de
Comandos - gtgt x sym('x') Define a variavel simbolica
x - gtgt y (x 1)3 Define a função y f(x)
- gtgt collect(y) Organiza os coeficientes
- gtgt pretty(ans) Exibe o resultado
-
x3 3x2 3x 1
79Symbolic Math Toolbox
- Agora é com você!!!
- Escreva a função y (x 1)(x 2) na forma
- polinomial.
80Symbolic Math Toolbox
- collect( f, nome da variável simbólica)
- A função collect neste caso aceita um segundo
argumento que especifica que variável simbólica
deve ser utilizada para organizar o polinômio.
81Symbolic Math Toolbox
- collect(f, nome da variável simbólica)
- 2) Escreva a função f(x,z) (x 1)3 z na
forma polinomial. - gtgt x sym('x') Define a variável
simbólica x - gtgt z sym(z) Define a variável
simbólica z - gtgt y (x 1)3 z Define a função y f(x,z)
- gtgt collect(y,x) Organiza os
coeficientes em x - gtgt pretty(ans) Exibe o resultado
-
x3 3 x2 3 x 1 z
82Symbolic Math Toolbox
- Agora é com você!!!
- Escreva a função y (x 1)3 (z 1)2
- na forma polinomial, em termos de z.
83Symbolic Math Toolbox
- expand
- realiza a distribuição de produtos para
polinômios - e aplica outras identidades que envolvem funções
- de somas, identidades trigonométricas,
exponenciais - e logaritmos.
- Sintaxe
- expand( f )
84Symbolic Math Toolbox
- expand(f)
- 3) Escreva a função y (x1)3 na forma
polinomial - gtgt clear Limpa a Janela de
Comandos - gtgt x sym('x') Define a variavel simbolica
x - gtgt y (x 1)3 Define a função y f(x)
- gtgt expand(y) Realiza o produto polinomial
- gtgt pretty(ans) Exibe o resultado
-
x3 3x2 3x 1
85Symbolic Math Toolbox
- expand X collect
- Além de representar funções polinomiais a
função é bastante útil na manipulação de
expressões simbólicas trigonométricas,
exponenciais, hiperbólicas, entre outras funções.
Esta é uma das características marcantes que
diferenciam a função expand da collect. A função
expand é bem mais robusta, porque trabalha com
muitos tipos de funções, enquanto a função
collect é restrita apenas a funções polinomiais.
Podemos, dizer que a função expand é uma evolução
da função collect, agregando-se novas
funcionalidades.
86Symbolic Math Toolbox
- expand
- 4) Obtenha a forma expandida da função
trigonométrica cos(x y). - x sym(x) Cria a variável
simbólica x. - y sym(y) Cria a variável
simbólica y. - expand(cos(xy)) Realiza a operação
- ans Variável padrão do
matlab - cos(x)cos(y) - sin(x)sin(y)
Resultado
87Symbolic Math Toolbox
- Agora é com você!!!
- Obtenha a forma expandida da função
exponencial exp(x y).
88Symbolic Math Toolbox
- Factor
- Fatoração
- Sintaxe
- factor(X)
- Esta função obtém a forma fatorada de um
polinômio. Na sintaxe da função X, pode ser
apenas a expressão simbólica. Ou um array
simbólico contendo vários expressões simbólicas.
No caso de utilizar um array, a função factor
retorna um array com as expressões simbólicas
correspondentes.
89Symbolic Math Toolbox
- Uso da Função factor
- Calcular os fatores primos de um número inteiro.
- Obter a forma polinomial fatorada.
- Simplificar expressões simbólicas.
90Symbolic Math Toolbox
- Factor(x)
- 5) Calcule os fatores dos seguintes números 15
e 50. - gtgt factor(15)
- ans
- 3 5
- gtgt factor(50)
- ans
- 2 5 5
91Symbolic Math Toolbox
- Factor
- Observação
- O maior valor inteiro que a função factor
aceita é um numero inteiro de até 16 dígitos, se
o número tiver uma quantidade de dígitos superior
a 16. Devemos usar o sym para criar um elemento.
92Symbolic Math Toolbox
- Factor(x)
- 5) Calcule os fatores do número
- gtgt factor(15)
- ans
- 3 5
- gtgt factor(50)
- ans
- 2 5 5
93Symbolic Math Toolbox
- Factor(x)
- 5) Calcule os fatores do número
12345678901234567890 - gtgt factor(sym('12345678901234567890'))
-
- ans
-
- (2)(3)2(5)(101)(3803)(3607)(27961)(3541)
94Symbolic Math Toolbox
- 6) Obtenha a forma fatorada da equação
- y x3 3x2 3x 1
- gtgt x sym('x') Cria a variável
simbólica x. - gtgt y x3 3x2 3x 1 Define a função y
f(x) - gtgt factor(y)
Fatoração - gtgt pretty(ans) Exibe o
resultado -
- (x 1)3
95Symbolic Math Toolbox
- Agora é com você!!!
- Obtenha a forma fatorada da equação
- y x2 3x 2
96Symbolic Math Toolbox
- Simplify
- Simplificação simbólica.
- Sintaxe
- R simplify(S)
- A função simplify é uma ferramenta poderosa,
que em geral aplica várias identidades algébricas
que envolvem somas, potência inteira, raízes
quadradas e potência fracionária, como também
vários identidades que envolvem funções
trigonométricas, exponencial e funções de Bessel,
função gama, etc.
97Symbolic Math Toolbox
- 7) Simplifique a seguinte expressão
- gtgt x sym('x') Cria a
variável simbólica x. - gtgt y (x3 8)/(x4 - 16) Define a função
y f(x) - gtgt simplify(y)
Simplificação simbólica - gtgt pretty(ans) Exibe o
resultado - x2 - 2x 4
- -------------------
- x3 - 2x2 4x - 8
-
98Symbolic Math Toolbox
- Agora é com você!!!
- Simplifique a seguinte expressão
-
99Symbolic Math Toolbox
- 8) Simplifique a seguinte expressão
- gtgt x sym(x) Cria a variável
simbólica x. - gtgt y cos(x)2 sin(x)2 Define a função y
f(x) - gtgt simplify(y)
Simplificação simbólica - gtgt pretty(ans) Exibe o
resultado - 1
-
100Symbolic Math Toolbox
- 9) Simplifique a seguinte expressão
- gtgt syms x y positive Cria as variáveis
simbólicas x e y, ambas
positivas. - gtgt simplify(log(xy)) Simplificação simbólica
- gtgt pretty(ans) Exibe o resultado
- log(x) log(y)
-
101Symbolic Math Toolbox
- Simple
- Busca a forma mais simplificada para a expressão
simbólica. - Sintaxe
- r simple( S )
- r,how simple( S )
- A função simple(S) tenta várias simplificações
algébricas diferentes na expressão simbólica S,
exibe a representação de menor comprimento para
S. S é um sym. Se S for uma matriz, o resultado
indica a representação mais curta da matriz
inteira que necessariamente não é a representação
mais curta de cada elemento individual.
102Symbolic Math Toolbox
- 10 ) Simplifique a expressão y (x 1)(x 2)
-
- gtgt x sym(x) Cria a variável simbólica x.
- gtgt simple((x1)(x2)) Simplificação
- ans
- x23x2
103Symbolic Math Toolbox
- Agora é com você!!!
- Simplifique a expressão
-
104Symbolic Math Toolbox
- pretty
- Esta função imprime uma expressão simbólica.
- Pretty(expressão simbólica).
- A grande vantagem do uso da função pretty
quando trabalha-se com matemática simbólica é que
a exibição da expressão simbólica é a mais clara
possível. - Dica Ao trabalhar com matemática simbólica,
sempre use a função pretty, para tornar mais
legível a expressão simbólica mostrada na tela.
105Symbolic Math Toolbox
106Symbolic Math Toolbox
- Limites
- ------------------------------------------------
---------------------------------------- - Scripte file limites.m
- Este programa calcula o limite de algumas
funções. - ------------------------------------------------
--------------------------------------- - DESCRIÇAO
- ------------------------------------------------
--------------------------------------- - DATA PROGRAMADOR
DESCRIÇAO DO CODIGO - 10/10/07 Josenildo F. Galdino
Código Original - -------------------------------------------------
--------------------------------------
107Symbolic Math Toolbox
- syms x a Cria as variáveis simbólicas x
e a. - f 1/(x2) Definição da função f(x)
- pretty(f) Exibição da função
- limit(f,2) Calcula o limite quando x
tende a 2. - f1 (25x3 2)/(75x7 -2) Definição da
função f1(x) - pretty(f1)
Exibição da função. - limit(f1) Calcula o
limite quando x tende a 0.
108Symbolic Math Toolbox
- f2 (25x3 2)/(75x7 -2) Definição da
função f2(x) - pretty(f2) Exibição da
função - limit(f2) Calcula o
limite quando x tende a 0. - f3 (x2 - 2)/(x - 2) Definição da
função f3(x) - pretty(f3) Exibição da
função - limit(f3,2) Calcula o
limite quando x tende a 2. - f4 (x2 - a2)/(x2 2ax a2) Definição
da função f3(x) - pretty(f4) Exibição
da função - limit(f4,a) Calcula o
limite quando x tende a a.
109Symbolic Math Toolbox
- g sin(2x)/x Definição da função
g(x) - pretty(g) Exibição da função
- limit(g) Calcula o limite
quando x tende a 0. - g1 sin(5x)/x Definição da função
g1(x) - pretty(g1) Exibição da função
- limit(g1) Calcula o limite
quando x tende a 0.
110Symbolic Math Toolbox
- g2 (sin(5x) - sin(3x))/x Definição da
função g2(x) - pretty(g2)
Exibição da função - limit(g2) Calcula o
limite quando x tende a 0. - g3 (1 - sqrt(1 - x2))/(x2) Definição da
função g3(x) - pretty(g3)
Exibição da função - limit(g3) Calcula o
limite quando x tende a 0.
111Symbolic Math Toolbox
112Symbolic Math Toolbox
- DERIVADAS
- gtgt syms x n Cria a
variável simbólica x. - gtgt p x3 4x2 -7x -10 Define a função
f(x). - gtgt d diff(p) Calcula
a derivada de f(x). - d
- 3x28x-7
- gtgt e diff(p,2) Calcula a
2ª derivada de f(x). - e
- 6x8
- gtgt f diff(p,3) Calcula
a 3ª derivada de f(x). - f
- 6
113Symbolic Math Toolbox
- DERIVADAS
- syms x n Cria as variaveis
simbólicas x e n. - gtgt g xn Define a função g(x).
- gtgt h diff(g) Calcula a derivada de
g(x). - h
- xnn/x
- gtgt h simplify(h) Simplifica o resultado.
- h
- x(n-1)n
114Symbolic Math Toolbox
- DERIVADAS DE FUNÇÕESTRANSCENDENTAIS
- gtgt syms x Cria as variaveis
simbólicas x e n. - gtgt f1 log(x) Define a função f1(x).
- gtgt df1 diff(f1) Calcula a derivada de
f1(x). - df1
- 1/x
- gtgt f2 (cos(x))2 Define a função f2(x).
- gtgt df2 diff(f2) Calcula a derivada de
f2(x). - df2
- -2cos(x)sin(x)
115Symbolic Math Toolbox
- DERIVADAS DE FUNÇÕES TRANSCENDENTAIS
- gtgt f4 cos(2x)
- gtgt df4 diff(f4)
- df4
- -2sin(2x)
- gtgt f5 exp(-(x2)/2)
- gtgt df5 diff(f5)
- df5
- -xexp(-1/2x2)
116Symbolic Math Toolbox
gtgt syms x Cria a variável
simbólica x. gtgt p x/(x-1) Define
a função f(x). gtgt diff(p)
Calcula a derivada de f(x). ans
1/(x-1)-x/(x-1)2 gtgt simplify(ans)
Simplifica a expressão da derivada. ans
-1/(x-1)2 gtgt pretty(ans) Exibe a
resposta no formato mais visivel.
1
- --------
2
(x - 1)
117Symbolic Math Toolbox
- Calcule a derivada de
- em x 1, ou seja,
118Symbolic Math Toolbox
Cálculo da derivada syms x
Cria a variável simbólica x. p 2 x
x2 Define a função f(x). d diff(p)
Calcula a derivada de f(x). pretty(d)
Exibe o resultado da derivada
Calculo da derivada em um ponto (x 1) g 2
1 Define o polinômio da
derivada polyval(g,1) Calcula a derivada
em x 1 subs(d,1) Valor da função em
x 1
119Symbolic Math Toolbox
- INTEGRAIS
- gtgt syms x n t Cria as variáveis
simbólicas x n t - gtgt int(xn) Calcula a integral de
xn - ans
- x(n1)/(n1)
- gtgt int(x3 4x2 7x 10) Calcula da
integral x3 4x2 7x 10 - ans
- 1/4x44/3x37/2x210x
- gtgt int(x,1,t) Calculo da integral de
x, no intervalo 1, t . - ans
- 1/2t2-1/2
120Symbolic Math Toolbox
- INTEGRAIS DE FUNÇÕES TRANSCENDENTAIS
- gtgt syms x Cria a variável simbólica x
- gtgt int(1/x) Calcula a integral de
f(x) 1/x. - ans
- log(x)
- gtgt int(cos(x)) Calcula a integral de f(x)
cos (x) - ans
- sin(x)
- gtgt int(1/(1x2)) Calcula a integral de f(x)
1/(1 x2) - ans
- atan(x)
- gtgt int(exp(-x2)) Calcula a integral de f(x)
exp(-x2) - ans
- 1/2pi(1/2)erf(x)
121Programas em MATLAB
- Resolver a equação quadrática
-
-
122Programas em MATLAB
- ------------------------------------------------
----------------------------------------- - Scripte file quadratica.m
- Este programa calcula as raizes da equaçao
quadratica, sendo - fornecidos pelo usuario os coeficientes a, b e
c da equaçao - ax2 bx c 0
- ------------------------------------------------
--------------------------------------- - DESCRIÇAO
- ------------------------------------------------
--------------------------------------- - DATA PROGRAMADOR
DESCRIÇAO DO CODIGO - 10/10/07 Josenildo F. Galdino
Código Original - -------------------------------------------------
--------------------------------------
123Programas em MATLAB
- DEFINIÇAO DAS VARIAVEIS
- a - coeficiente do termo x2
- b - coeficiente do termo x
- c - coeficiente do termo x0 ou termo
independente. - x1 - raiz da equação quadrática
- x2 - raiz da equação quadrática
- m - variável intermediaria
- n - variável intermediaria
124Programas em MATLAB
- clc Limpa a area de
trabalho. - Obtenção dos parâmetros
- disp('Forneca os coeficientes da equaçao
quadratica') - a input('\nForneca o coeficiente a ')
- b input('Forneça o coeficiente b ')
- c input('Forneca o coeficiente c ')
- x linspace(-12,12,300) Gera 300 pontos
entre -12 e 12. - y ax.2 bx c Definição da
função y f(x)
125Programas em MATLAB
- Cálculo das raízes
- m -b/(2a)
- n sqrt(b2 - 4ac)/(2a)
- fprintf('\nAs raizes da equacao quadratica sao')
- x1 m n
- x2 m - n
- fprintf('\n')
126Programas em MATLAB
- Exibição do gráfico
- plot(x,y)
Gráfico em 2-D. - title('\bf\itEquaçao Quadratica') Titulo do
gráfico - xlabel('\bf\itx')
Eixo horizontal - ylabel('\bf\ity')
Eixo vertical
127Programas em MATLAB
- Forneca os coeficientes da equaçao quadratica
- Forneca o coeficiente a 2
- Forneça o coeficiente b 10
- Forneca o coeficiente c 12
- As raizes da equaçao quadratica sao
- x1
- -2
- x2
- -3
128Programas em MATLAB
129ANIMAÇÃO
- Demonstração
- Script-file animacao.m
130ANIMAÇÃO
- Demonstração
- Script-file animacao1.m
131ANIMAÇÃO
- Demonstração
- Script-file animacao2.m
132