You are on page 1of 5

AERODESIGN AULA 1

MATLAB
INTERFACE
(Apontar "espaos" na janela inicial do MATLAB)
Diretrio (Criar uma pasta no desktop e us-la)
Browser
Command Window
Variable Editor

COMANDOS BSICOS

Soma (2 + 3)
Subtrao (1 0.5)
Multiplicao (5 * 10)
Diviso (15 / 4)
Potenciao (6 ^ 3)
Notao cientfica (1e-5)
Constantes (pi)
Agrupando operaes (3 * (5 2))

CRIANDO VARIVEIS
Pode-se usar letras maisculas, letras minsculas, alguns caracteres especiais ( _ ) e
nmeros.
(a = 3)
(A = 3)
(distancia_de_decolagem1 = 100)
Observar as variveis surgindo no variable editor
Podemos omitir a resposta na linha de comando usando ;
(b = 5;)
(a+b)

LIMPEZA
Limpando a tela
(clc)
Limpando as variveis
(clear)

CRIANDO VETORES E MATRIZES


Usa-se [ e ] para criar vetores
(a = [1 2 3 4]) Vetor linha
(at = [1; 2; 3; 4]) Vetor coluna
(steps = 1:2:11) Criando sequncia
Selecionando um elemento
(a(1))
(a(2))
(a(end))
(a(1:3))
Concatenando vetores
(b = [5 6 7])
(c = [a b])
Operaes com vetores:
(a') Transposio
(a + 2) Soma o escalar em todos os nmeros
(a + [0 1 0 1]) Soma elementos correspondentes
(a*3) Multiplica o escalar em todos os nmeros
(a*[0 0 0 1]') Multiplicao convencional de vetores
(a.*[0 0 0 1]) Multiplicao por elementos correspondentes
(a^2) No vai funcionar, no d para multiplicar dois vetores-linha
(a.^2) Aplica a operao em cada elemento
Criando matrizes
(A = [1 2 3; 4 5 6; 7 8 9]) Cria uma matriz
Selecionando um elemento
(A(1,2))
(A(end,end))
(A(:,3))
Operaes com matrizes
(A') Transposio
(A*[0 ; 1; 10]') Multiplicao convencional
(A*[1 0 0; 0 1 0; 0 0 1]) Multiplicao convencional
(A.*[1 0 0; 0 1 0; 0 0 1]) Multiplicao entre elementos correspondentes
(I = eye(4)) Matriz identidade
(Z = zeros(2,3)) Matriz nula
(F = ones(4,2)) Matriz de 1

CRIANDO SCRIPTS
Clicar no "New" para abrir o Editor
Escrever um programa para calcular a mdia de trs nmeros
%COMENTRIOS
Programa:
clc
clear all
a = 1;

b = 2;
c = 3;
media = (a + b + c)/3
Fim do Programa
Executar usando o boto Run
Executar usando a linha de comando
Mostrar que as variveis ficam no escopo do programa

CRIANDO FUNES
Scripts so simples sequncias de comandos. No tem entradas e sadas.
Funes tm entradas e sadas. Alm disso, elas tm um escopo prprio. Variveis
criadas dentro da funo s so acessveis dentro da funo.
No Editor...
Programa:
function media = calcula_media(a,b,c)
media = (a + b + c)/3;
end
Fim do Programa
Executar funo na linha de comando
(media = calcula_media(10,20,30))
Usando funes prprias do MATLAB
(sin(30*pi/180))
(exp(1))
(log([2 3 4]))
Importante: As funes criadas pelo usurio s podem ser usadas quando esto no
diretrio de trabalho do MATLAB.

RESOLVENDO SISTEMAS
PROBLEMA 1
Vamos resolver o problema
cos( x ) + log( x ) = 0
O primeiro passo criar uma funo que recebe a varivel do problema e calcula o
lado direito da expresso:
Programa:
function delta = problema(x)
delta = cos(x) + log(x)
end
Fim do Programa
Salva a funo
Em um segundo arquivo, utilizaremos o fsolve. A funo do fsolve achar o valor
de entrada da funo que dar zero como resultado. O fsolve segue a seguinte estrutura:
resultado = fsolve(@<nome_da_funo>, <chute_inicial>)
Programa:

x_resultado = fsolve(@problema, 10)


Fim do Programa
Executar o programa e verificar o resultado
PROBLEMA 2
Vamos estudar um problema com duas variveis:
x + 2y 3 = 0
2 x + y + 10 = 0
Criando um outro arquivo
Programa:
function delta = problema2(entradas)
x = entradas(1);
y = entradas(2); (Todas as entradas entram num nico vetor)
delta(1) = x + 2*y 3;
delta(2) = -2*x + y + 10; (Os resultados de cada equao tambm formam um vetor)
end
No programa do fsolve, alterar a linha para:
Programa:
x_resultado = fsolve(@problema2, [1 2])
Fim do Programa
Verificar resultado
PROBLEMA 3
O fsolve um mtodo nmerico para solucionar problemas. Ele s encontra a raiz
mais prxima do chute inicial
Vamos estudar outro problema:
x
log( x ) = 0
4
Criando um outro arquivo
Programa:
function delta = problema3(x)
delta = log(x) x/4;
end
Fim do Programa
No programa do fsolve, alterar a linha para
Programa:
x_resultado = fsolve(@problema3, 0.1)
Fim do Programa
Executar e verificar o resultado
Agora, altere o chute inicial para 10 e observe a mudana no resultado

PLOTANDO GRFICOS
Vamos analisar o que aconteceu no caso anterior
Abrir novo programa
Programa:
x = 0.01:0.01:11;

y1 = log(x);
y2 = x/4;
plot(x,y1,x,y2)
Fim do Programa:
Executar e verificar os dois encontros no grfico.

INTEGRAO NUMRICA
Vamos realizar uma integral por meio do mtodo dos trapzios.
PROBLEMA 1
A integral para nosso exerccio ser:
3

y = 3 x 2 dx = 27
0

Programa:
function y = integral(lim_inf,lim_sup)
x = linspace(lim_inf,lim_sup,30);
dy_dx = 3*x.^2;
y = trapz(x,dy_dx);
end
Fim do Programa
Na linha de comando chamar:
(y = trapz(0,3))
Mudar discretizao e ver impacto no resultado.
PROBLEMA 2
Vamos calcular a distncia de decolagem do Micro 2011 (que deve ser de 23,33m):
vdec
mv
xdec =
dv
T D Fat
0
Onde:
S ref = 0,325m
2m g
vdec = K s
CL 0 = 0,3234
S ref CL max

T = (T0 + T1 v + T2 v )
ref
2

D=

CL = 3,9591 rad 1
CL max = 1,5689
CD 0 = 0, 0937

v2

S ref CD
K = 0, 0088
2
Dados do avio: 1
2
K = 0, 0929
CD = CD 0 + K1 CL + K CL
T0 = 9,3527 N
CL = CL 0 + dec CL
Fat = N

T1 = 0,1170 N s / m

N = max ( 0, m g L )

T2 = 0, 0173 N s 2 / m2

L=

v2
2

Sref CL

ref = 1, 0930 kg / m
= 0, 03

= 1,1 kg / m
g = 9,81 m / s
m = 2,522 kg
K s = 1,1

dec = 0o

You might also like