Octave
Sistemas de Equações e Gráficos
Introdução aos Computadores e à Programação
DI-FCT-UNL-2006/2007
Sistemas de Equações e Gráficos 2.1
Sistemas de equações (1)
A=[1, 2, 3; 2, 3, 4; 4, 2, 5]
A=
123
234
425
B=[4;5;1]
B=
4
5
1
Introdução aos Computadores e à Programação
DI-FCT-UNL-2006/2007
Sistemas de Equações e Gráficos 2.2
Sistemas de equações (2)
octave:84> D1=A; D1(:,1) = B
D1 =

Regra de Cramer
(onde se substitui B
nas colunas de A
correspondentes a
cada xi dividindo-se o
determinante de A pelo
da matriz obtida), pode
ser calculado da
seguinte forma.
423
534
125
octave:85> D2=A; D2(:,2) = B
D2 =
143
254
415
octave:86> D3=A; D3(:,3) = B
D3 =
124
235
421
octave:87> X=[det(D1); det(D2); det(D3)] / det(A)
X=
-1.40000
1.80000
0.60000
Introdução aos Computadores e à Programação
DI-FCT-UNL-2006/2007
Sistemas de Equações e Gráficos 2.3
Sistemas de equações (3)

Utilizando o operador \ (eliminação
Gaussiana).
octave:89> X =A \ B
X=
-1.40000
1.80000
0.60000
Introdução aos Computadores e à Programação
DI-FCT-UNL-2006/2007
Sistemas de Equações e Gráficos 2.4
Inversa de uma matriz

É feita utilizando o comando inv(M).
octave:90> inv( A )
ans =
-1.40000 0.80000 0.20000
-1.20000 1.40000 -0.40000
1.60000 -1.20000 0.20000
octave:90> A * inv( A )
ans =
1.00000 0.00000 0.00000
0.00000 1.00000 0.00000
0.00000 -0.00000 1.00000
Introdução aos Computadores e à Programação
DI-FCT-UNL-2006/2007
Sistemas de Equações e Gráficos 2.5
Exercicios Propostos

Resolver os seguintes sistemas de equações:

5x -3y = -1
5z + x= 2
x -4y -2z = 7






-2z +2y = 5
x + -5y +3z= -3
3x+ 2y = 4
Introdução aos Computadores e à Programação
DI-FCT-UNL-2006/2007
Sistemas de Equações e Gráficos 2.6
Gráficos


Os gráficos são feitos utilizando uma
ferramenta OpenSource chamada
GnuPlot.
A comunicação entre o Octave e o
GnuPlot é feita usando as funções
gplot e gsplot, mas iremos apenas
utilizar funções de mais alto nível.
Introdução aos Computadores e à Programação
DI-FCT-UNL-2006/2007
Sistemas de Equações e Gráficos 2.7
Gráficos simples (1)
octave:19> x = [1,2,3]
octave:20> y = [1,3,2]
octave:21> plot(x,y)
Introdução aos Computadores e à Programação
DI-FCT-UNL-2006/2007
Sistemas de Equações e Gráficos 2.8
Gráficos simples (2)
octave:19> x = 0:0.1:4
octave:20> y = sin(x)
octave:21> plot(x,y)
octave:19> x = 0:pi/90:4*pi;
octave:20> y = sin(x);
octave:21> plot(x,y);
Introdução aos Computadores e à Programação
DI-FCT-UNL-2006/2007
Sistemas de Equações e Gráficos 2.9
Gráficos simples (3)
octave:29> xlabel('x,radianos');
octave:30> ylabel('sin(x)');
octave:31> grid;
octave:32> replot
Introdução aos Computadores e à Programação
DI-FCT-UNL-2006/2007
Sistemas de Equações e Gráficos 2.10
Gráficos de barras
octave:34> clearplot;
octave:35>
bar([20,10,30,15,30,30,40])
Introdução aos Computadores e à Programação
DI-FCT-UNL-2006/2007
Sistemas de Equações e Gráficos 2.11
Histogramas
octave:36> clearplot
octave:37> a = [10,10,10,20,20,30];
octave:38> hist(a,[1,10,20,30])
O primeiro argumento da função
contem a amostra de valores.
O segundo o centro de distribuição.
Introdução aos Computadores e à Programação
DI-FCT-UNL-2006/2007
Sistemas de Equações e Gráficos 2.12
Gráficos sobrepostos

Antes de cada
comando, o
Octave por
omissão, limpa a
janela de gráfico.
Para tal não
acontecer pode
ser utilizado o
comando hold
on.
octave:71> clearplot
octave:72> hold on
octave:73> x = -5*pi:pi/90:5*pi;
octave:74> y1 = sin(x);
octave:75> y2 = cos(x);
octave:76> y3 = sin(x)+2*cos(x);
octave:77> plot(x,y1)
octave:78> plot(x,y2)
octave:79> plot(x,y3)
Introdução aos Computadores e à Programação
DI-FCT-UNL-2006/2007
Sistemas de Equações e Gráficos 2.13
Multiplot (1)


Permite apresentar vários gráficos em
áreas da janela diferentes, usando
para tal as funções multiplot e
subwindow.
Exemplos:


multiplot(2,2) – cria ambiente para 4
janelas de gráficos.
subwindow(2,1) – todos os gráficos
apartir de agora serão apresentados na
janela da 1ª linha, 2ª coluna.
Introdução aos Computadores e à Programação
DI-FCT-UNL-2006/2007
Sistemas de Equações e Gráficos 2.14
Multiplot (2)
octave:93> multiplot(2,2)
octave:94> subwindow(1,1)
octave:95> xlabel("x, radianos")
octave:96> ylabel("sin(x)")
octave:97> title("G1")
octave:98> plot(x,y1)
octave:99> subwindow(2,2)
octave:100> ylabel("cos(x)")
octave:101> title("G2")
octave:102> plot(x,y2)
octave:103> subwindow(1,2)
octave:104> >plot(x,x.*x)
octave:105> subwindow(2,1)
octave:106> plot(x,sqrt(x))
Introdução aos Computadores e à Programação
DI-FCT-UNL-2006/2007
Sistemas de Equações e Gráficos 2.15
Gráficos 3D
octave:30> clearplot
octave:31> x = -10:0.5:10;
octave:32> [X,Y]=meshdom(x,x);
octave:33> hold on
octave:34> grid
octave:35> mesh(X,Y,-sqrt(X.^2+Y.^2)*5+40)
octave:36> mesh(X,Y,X.^2+Y.^2)
Introdução aos Computadores e à Programação
DI-FCT-UNL-2006/2007
Sistemas de Equações e Gráficos 2.16
Exercicios Propostos

(1) Apresente o gráfico da função:

cos(x) +1

x-2
entre -2π e 2π, com um passo de uma décima.

(2) Apresente o gráfico anterior lado a lado com o gráfico da função (x2)/3.

(3) Apresente o gráfico da função:

sin(x) (ex)
entre -2π e 2π, com um passo de uma décima.

(4) Apresente o gráfico anterior acima do gráfico da função:
x
loge(x)
Introdução aos Computadores e à Programação
DI-FCT-UNL-2006/2007
Sistemas de Equações e Gráficos 2.17
Download

Octave2