cálculos básicos com vetores e matrizes;
cálculos polinomiais;
Plotagem de gráficos 2D e 3D;
Criação de scripts e funções
Simulação dinâmica em simulink.
1. 29/10/2007 Galdino, J.F 1
UNIVERSIDADE FEDERAL DE CAMPINA GRANDE
4ª Semana Matemática
Introdução a Programação no MATLAB
2. 2
Currí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@gmail.com
3. 3
Sumá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
4. 4
Introduçã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.
5. 5
Introduçã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
9. 9
Introduçã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.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
10. 10
Introduçã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
11. 11
Introdução ao Matlab
Comandos básicos:
>>who -- Lista as variáveis.
>>whos -- Lista e especifica as variáveis.
>>clc -- Limpa a Janela de Comandos.
>>clf -- Limpa figura atual
>>clear -- Deleta variáveis do workspace MATLAB.
>>help -- Ajuda do Matlab, documentação.
>>help elfun – Lista funções do MATLAB
12. 12
Operadores 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
17. 17
Operadores 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
> Maior que
>= Maior que
ou igual a
< Menor que
<= Menor que
ou igual a
18. 18
Operadores Relacionais
Os operadores <, <=, > e >= 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.
19. 19
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]
20. 20
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
21. 21
Operadores 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.
22. 22
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
• Tabela da Verdade para Operadores Lógicos
23. 23
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.
26. 26
Estruturas 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
27. 27
Estruturas de Controle
Simbologia
Símbolo de decisão
Indica que ações serão executadas
Inicio e fim de uma estrutura de uma controle
28. 28
Estruturas 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.
29. 29
Estruturas 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.
31. 31
Estruturas de Controle
Pseudocódigo
Se a nota do estudante for maior ou igual que 7.0
Imprima “Aprovado”
Código no Matlab
if nota >= 7
fprintf(‘Aprovado’);
end
33. 33
Estruturas 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 >= 7
fprintf(‘Aprovado’);
else
fprintf(‘Reprovado’);
end
34. 34
Estruturas 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
35. 35
Estruturas 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
37. 37
Estruturas de Controle
switch
Estrutura de seleção múltipla.
Consiste de uma série de rótulos case e um
otherwise.
38. 38
Estrutura de Controle
Case (‘a’)
Falso
Verdadeiro
Ação(ões) do case a
Ação(ões) do case b
Case (‘b’)
Otherwise
Verdadeiro
Falso
.
.
Falso
39. 39
Estruturas 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
40. 40
Estrutura de Controle
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
41. 41
Estruturas de Controle
Exemplo: Calcular a soma dos 10 primeiros inteiros.
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);
10
9
8
7
6
5
4
3
2
1
Soma
42. 42
Estruturas de Controle
Exemplo: Calcular o fatorial de um número n.
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);
43. 43
Estruturas de Controle
Exemplo: Calcular a soma dos 5 primeiros inteiros impares.
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);
9
7
5
3
1
Soma
44. 44
Estruturas 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.
45. 45
Estruturas 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.
46. 46
Estruturas de Controle
% Uso do break
for k = 1:5
if k == 3;
break;
end
fprintf(‘k = %dn’, k);
end
disp(‘Fim do laço!’);
48. 48
Estruturas 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.
49. 49
Estruturas de Controle
% Uso do continue
for k = 1:5
if k == 3;
continue;
end
fprintf(‘k = %dn’, k);
end
disp(‘Fim do laço!’);
51. 51
Arquivos 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.
52. 52
Arquivos 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.
53. 53
Arquivos 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.
54. 54
Arquivos de Comando M-File
Exenplo de script-file.
% 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);
55. 55
Arquivos 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.
56. 56
Arquivos 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.
>> circulo
Area do circulo = 19.635
57. 57
Arquivos 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.
58. 58
Introduçã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.
59. 59
Introduçã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
60. 60
Introdução a Funções MATLAB
Funções MATLAB com Matrizes como
entrada.
x = [ 0 pi/2 pi 3*pi/2 2*pi] % Entrada
y = sin(x) % Saída
y = [ 0 1 0 -1 0] % Resultado
66. 66
Introduçã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.
67. 67
Introduçã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)
68. 68
Introduçã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.
69. 69
Introduçã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 %fn', resultado);
70. 70
Introdução a Funções MATLAB
>> 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
>>
71. 71
Toolboxes
Statistics Toolbox
Symbolic Math Toolbox
Partial Diferrential Equation Toolbox
Curve Fitting Toolbox
Signal Processing Toolbox
Control System Toolbox
Communication Toolbox
72. 72
Symbolic 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.
73. 73
Symbolic 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.
74. 74
Symbolic 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.
76. 76
Symbolic 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
77. 77
Symbolic 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.
78. 78
Symbolic Math Toolbox
collect(f)
1) Escreva a função y = (x+1)^3 na forma polinomial
>> clear % Limpa a Janela de Comandos
>> x = sym('x'); % Define a variavel simbolica “x”
>> y = (x + 1)^3; % Define a função y = f(x)
>> collect(y); % Organiza os coeficientes
>> pretty(ans) % Exibe o resultado
x3
+ 3x2
+ 3x + 1
80. 80
Symbolic 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.
81. 81
Symbolic 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.
>> x = sym('x'); % Define a variável simbólica x
>> z = sym(‘z’); % Define a variável simbólica z
>> y = (x +1)^3 + z; % Define a função y = f(x,z)
>> collect(y,x); % Organiza os coeficientes em x
>> pretty(ans) % Exibe o resultado
x3
+ 3 x2
+ 3 x + 1 + z
82. 82
Symbolic Math Toolbox
Agora é com você!!!
Escreva a função y = (x + 1)^3 + (z + 1)^2
na forma polinomial, em termos de z.
83. 83
Symbolic 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 )
84. 84
Symbolic Math Toolbox
expand(f)
3) Escreva a função y = (x+1)^3 na forma polinomial
>> clear % Limpa a Janela de Comandos
>> x = sym('x'); % Define a variavel simbolica “x”
>> y = (x + 1)^3; % Define a função y = f(x)
>> expand(y); % Realiza o produto polinomial
>> pretty(ans) % Exibe o resultado
x3
+ 3x2
+ 3x + 1
85. 85
Symbolic 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.
86. 86
Symbolic 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(x+y)) % Realiza a operação
ans = % Variável padrão do matlab
cos(x)*cos(y) - sin(x)*sin(y) % Resultado
88. 88
Symbolic 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.
89. 89
Symbolic 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.
91. 91
Symbolic 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.
93. 93
Symbolic Math Toolbox
Factor(x)
5) Calcule os fatores do número 12345678901234567890
>> factor(sym('12345678901234567890'))
ans =
(2)*(3)^2*(5)*(101)*(3803)*(3607)*(27961)*(3541)
94. 94
Symbolic Math Toolbox
6) Obtenha a forma fatorada da equação
y = x^3 +3*x^2 + 3*x + 1
>> x = sym('x'); % Cria a variável simbólica x.
>> y = x^3 + 3*x^2 + 3*x + 1 % Define a função y = f(x)
>> factor(y); % Fatoração
>> pretty(ans) % Exibe o resultado
(x + 1)^3
96. 96
Symbolic 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.
97. 97
Symbolic Math Toolbox
7) Simplifique a seguinte expressão:
>> x = sym('x'); % Cria a variável simbólica x.
>> y = (x^3 + 8)/(x^4 - 16); % Define a função y = f(x)
>> simplify(y); % Simplificação simbólica
>> pretty(ans) % Exibe o resultado
x^2 - 2x + 4
-------------------
x^3 - 2x^2 + 4x - 8
16
8
4
3
x
x
y
99. 99
Symbolic Math Toolbox
8) Simplifique a seguinte expressão
>> x = sym(‘x’); % Cria a variável simbólica x.
>> y = cos(x)^2 + sin(x)^2; % Define a função y = f(x)
>> simplify(y); % Simplificação simbólica
>> pretty(ans) % Exibe o resultado
1
)
(
sin
)
(
cos 2
2
x
x
y
100. 100
Symbolic Math Toolbox
9) Simplifique a seguinte expressão:
>> syms x y positive % Cria as variáveis simbólicas
x e y, ambas
positivas.
>> simplify(log(x*y)); % Simplificação simbólica
>> pretty(ans) % Exibe o resultado
log(x) + log(y)
)
*
log( y
x
101. 101
Symbolic 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.
102. 102
Symbolic Math Toolbox
10 ) Simplifique a expressão y = (x + 1)(x + 2)
>> x = sym(‘x’); % Cria a variável simbólica x.
>> simple((x+1)(x+2)) % Simplificação
ans =
x^2+3*x+2
104. 104
Symbolic 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.
106. 106
Symbolic 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
%---------------------------------------------------------------------------------------
107. 107
Symbolic Math Toolbox
syms x a; % Cria as variáveis simbólicas x e a.
f = 1/(x^2); % 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 = (25*x^3 + 2)/(75*x^7 -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.
108. 108
Symbolic Math Toolbox
f2 = (25*x^3 + 2)/(75*x^7 -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 = (x^2 - 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 = (x^2 - a^2)/(x^2 + 2*a*x + a^2); % 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.
109. 109
Symbolic Math Toolbox
g = sin(2*x)/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(5*x)/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.
110. 110
Symbolic Math Toolbox
g2 = (sin(5*x) - sin(3*x))/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 - x^2))/(x^2); % Definição da função g3(x)
pretty(g3) % Exibição da função
limit(g3) % Calcula o limite quando x tende a 0.
112. 112
Symbolic Math Toolbox
DERIVADAS
>> syms x n; % Cria a variável simbólica x.
>> p = x^3 + 4*x^2 -7*x -10; % Define a função f(x).
>> d = diff(p) % Calcula a derivada de f(x).
d =
3*x^2+8*x-7
>> e = diff(p,2) % Calcula a 2ª derivada de f(x).
e =
6*x+8
>> f = diff(p,3) % Calcula a 3ª derivada de f(x).
f =
6
113. 113
Symbolic Math Toolbox
DERIVADAS
syms x n % Cria as variaveis simbólicas x e n.
>> g = x^n; % Define a função g(x).
>> h = diff(g) % Calcula a derivada de g(x).
h =
x^n*n/x
>> h = simplify(h) % Simplifica o resultado.
h =
x^(n-1)*n
114. 114
Symbolic Math Toolbox
DERIVADAS DE FUNÇÕESTRANSCENDENTAIS
>> syms x % Cria as variaveis simbólicas x e n.
>> f1 = log(x); % Define a função f1(x).
>> df1 = diff(f1) % Calcula a derivada de f1(x).
df1 =
1/x
>> f2 = (cos(x))^2; % Define a função f2(x).
>> df2 = diff(f2) % Calcula a derivada de f2(x).
df2 =
-2*cos(x)*sin(x)
116. 116
Symbolic Math Toolbox
Calcule a derivada de
1
)
(
x
x
x
f
>> syms x; % Cria a variável simbólica x.
>> p = x/(x-1); % Define a função f(x).
>> diff(p) % Calcula a derivada de f(x).
ans =
1/(x-1)-x/(x-1)^2
>> simplify(ans) % Simplifica a expressão da derivada.
ans =
-1/(x-1)^2
>> pretty(ans) % Exibe a resposta no formato mais visivel.
1
- --------
2
(x - 1)
118. 118
Symbolic Math Toolbox
% Cálculo da derivada
syms x; % Cria a variável simbólica x.
p = 2 + x + x^2; % 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
119. 119
Symbolic Math Toolbox
INTEGRAIS
>> syms x n t % Cria as variáveis simbólicas x n t
>> int(x^n) % Calcula a integral de x^n
ans =
x^(n+1)/(n+1)
>> int(x^3 +4*x^2 + 7*x + 10) % Calcula da integral x^3 + 4x^2 + 7x + 10
ans =
1/4*x^4+4/3*x^3+7/2*x^2+10*x
>> int(x,1,t) % Calculo da integral de x, no intervalo [ 1, t ].
ans =
1/2*t^2-1/2
120. 120
Symbolic Math Toolbox
INTEGRAIS DE FUNÇÕES TRANSCENDENTAIS
>> syms x % Cria a variável simbólica x
>> int(1/x) % Calcula a integral de f(x) = 1/x.
ans =
log(x)
>> int(cos(x)) % Calcula a integral de f(x) = cos (x)
ans =
sin(x)
>> int(1/(1+x^2)) % Calcula a integral de f(x) = 1/(1 + x^2)
ans =
atan(x)
>> int(exp(-x^2)) % Calcula a integral de f(x) = exp(-x^2)
ans =
1/2*pi^(1/2)*erf(x)
122. 122
Programas 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
% a*x^2 + b*x + c = 0
% ---------------------------------------------------------------------------------------
% DESCRIÇAO
% ---------------------------------------------------------------------------------------
% DATA PROGRAMADOR DESCRIÇAO DO CODIGO
% 10/10/07 Josenildo F. Galdino Código Original
%---------------------------------------------------------------------------------------
123. 123
Programas em MATLAB
% DEFINIÇAO DAS VARIAVEIS
% a - coeficiente do termo x^2
% b - coeficiente do termo x
% c - coeficiente do termo x^0 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
124. 124
Programas 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 = a*x.^2 + b*x + c; % Definição da função y = f(x)
125. 125
Programas em MATLAB
% Cálculo das raízes
m = -b/(2*a);
n = sqrt(b^2 - 4*a*c)/(2*a);
fprintf('nAs raizes da equacao quadratica sao:')
x1 = m + n
x2 = m - n
fprintf('n');
126. 126
Programas em MATLAB
% Exibição do gráfico
plot(x,y); % Gráfico em 2-D.
title('bfitEquaçao Quadratica'); % Titulo do gráfico
xlabel('bfitx'); % Eixo horizontal
ylabel('bfity'); % Eixo vertical
127. 127
Programas 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