Da mesma maneira que podemos plotar curvas utilizando funções de variáveis simbólicas, podemos criar superfícies com esse tipo de equações. Veja o código a seguir:
%Declara as variáveis simbólicas
syms x y z
%Cria a função
z = (2*cos(x))^3 + y^2
%Cria um gráfico
ezsurf(z)
sexta-feira, 8 de janeiro de 2010
Limpar a tela
Os dois comandos a seguir são bem úteis. O comando clear limpa as variáveis no workspace, e o clc limpa a tela de comando. Bem interessante para quando já passamos algumas horas programando, e tudo parece uma bagunça.
Plotando gráficos - Parte III
Também podemos facilmente criar gráficos tridimensionais.
A maneira mais simples é representando uma matriz em um espaço, de forma que o terceiro eixo é formado pelo valor de cala elemento da matriz. Teriamos portanto um eixo sendo as linhas, outro as colunas e um terceiro sendo o valor de cala elemento da matriz. Veja o código a seguir :
%Cria um intervalo
A=[0:0.1:2*pi]
%Calcula o seno desse intervalo
B=sin(A)
%Calcula o cosseno desse intervalo
C=cos(A)
%Transposta de B, para multiplicar os dois vetores
B=B'
%Multiplica os dois vetores, criando uma matriz
M=B*C
%O comando surf cria uma superfície utilizando a matriz
surf(M)
A maneira mais simples é representando uma matriz em um espaço, de forma que o terceiro eixo é formado pelo valor de cala elemento da matriz. Teriamos portanto um eixo sendo as linhas, outro as colunas e um terceiro sendo o valor de cala elemento da matriz. Veja o código a seguir :
%Cria um intervalo
A=[0:0.1:2*pi]
%Calcula o seno desse intervalo
B=sin(A)
%Calcula o cosseno desse intervalo
C=cos(A)
%Transposta de B, para multiplicar os dois vetores
B=B'
%Multiplica os dois vetores, criando uma matriz
M=B*C
%O comando surf cria uma superfície utilizando a matriz
surf(M)
quinta-feira, 7 de janeiro de 2010
Plotando gráficos - Parte II
Outra possibilidade é plotar os gráficos de uma função de variáveis simbólicas. Esse método é muito útil quando queremos visualizar funções, pois não precisamos criar os vetores. Diferentemente das variáveis normais do Matlab, as variáveis simbólicas precisam ser declaradas. Veja o exemplo:
%Declarar as variáveis simbólicas x e y
syms x y
%Criar a função
y = x^3 -5*x^2
%Plotar
ezplot(y)
Esta função ezplot também permite que seja determinado o intervalo do gráfico:
%Declarar as variáveis simbólicas x e y
syms x y
%Criar a função
y = x^3 -5*x^2
%Plotar
ezplot(y)
Esta função ezplot também permite que seja determinado o intervalo do gráfico:
%Declarar as variáveis simbólicas x e y
syms x y
%Criar a função
y = x^3 -5*x^2
%Plotar
ezplot(y, [-2,2])
Plotando gráficos - Parte I
Existem várias maneiras de se plotar um gráfico, cada uma de acordo com a necessidade e dos tipos de variáveis envolvidas. analisaremos as principais técnicas e tipos de gráfico.
Basicamente, um gráfico é um conjunto de pontos ligados. Podemos, portanto, possui dois vetores e relacioná-los de forma que cada um represente um eixo, como no seguinte exemplo:
%Cria o vetor do eixo X, de 0 até 2*Pi
x = 0:0.5:2*pi
%Cria o vetor do eixo Y
y = sin(x)
%Plotar o gráfico
plot(x,y)
Seguindo este código teremos um gráfico, mas podemos observar que ele está todo "quadrado". Isso ocorre pois o vetor X possui poucos pontos, pois escolhemos um passo de 0.5 , valor muito grande. Veja o exemplo a seguir:
Basicamente, um gráfico é um conjunto de pontos ligados. Podemos, portanto, possui dois vetores e relacioná-los de forma que cada um represente um eixo, como no seguinte exemplo:
%Cria o vetor do eixo X, de 0 até 2*Pi
x = 0:0.5:2*pi
%Cria o vetor do eixo Y
y = sin(x)
%Plotar o gráfico
plot(x,y)
Seguindo este código teremos um gráfico, mas podemos observar que ele está todo "quadrado". Isso ocorre pois o vetor X possui poucos pontos, pois escolhemos um passo de 0.5 , valor muito grande. Veja o exemplo a seguir:
%Cria o vetor do eixo X, de 0 até 2*Pi
x = 0:0.01:2*pi
%Cria o vetor do eixo Y
y = sin(x)
%Plotar o gráfico
plot(x,y)
Utilizando o passo de 0.01, conseguimos uma curva senóide bem suave.
Como o Matlab está simplesmente criando coordenadas à partir dos dois vetores, qualquer tipo de gráfico pode ser plotado, desde que os vetores tenham o mesmo tamanho. Veja o exemplo a seguir:
a = 0:0.01:4*pi
x = (sin(2*a)).^3
y=(cos(3*a)).^5
plot(x,y)
terça-feira, 5 de janeiro de 2010
Matrizes úteis
Alguns tipos de matrizes podem ser feitas automaticamente, através de funções já prontas no Matlab. Essas matrizes são muito úteis, e acabam por economizar algumas linhas de código. Por exemplo:
Criar uma matriz 3x3 de zeros:
A = zeros(3,3)
Criar uma matriz 4x3 com o valor 1:
B = ones(4,3)
Criar uma matriz 5x5 com a diagonal principal valendo 1:
C = eye(5,5)
Criar uma matriz 10x10 de valores aleatórios entre 0 e 1:
D = rand(10,10)
Criar uma matriz 3x3 de zeros:
A = zeros(3,3)
Criar uma matriz 4x3 com o valor 1:
B = ones(4,3)
Criar uma matriz 5x5 com a diagonal principal valendo 1:
C = eye(5,5)
Criar uma matriz 10x10 de valores aleatórios entre 0 e 1:
D = rand(10,10)
Criando intervalos
No matlab também temos a possibilidade de criar para as nossas variáveis intervalos grandes de maneira automárica.
Por exemplo, o vetor:
A = [ 1 2 3 4 5 6 7 8 9 10 ]
Poderia ser escrito da seguinte maneira:
A = 1:10
O comando poderia ser lido da seguinte forma: " Faça A de 1 até 10". Os dois pontos representam que deve haver um intervalo.
Também é possível ajustar o passo desse intervalo. Digamos que seja de interesse o seguinte vetor:
B = [ 0 5 10 15 20 25 30 35 40 ]
Temos que o valor inicial é 0, o final 40 e o valor é incrementado em passos de 5.
O código ficaria da seguinte forma:
B = 0:5:40
Que pode ser lido como "Faça B de 0 até 40, em passos de 5"
De maneira genérica, temos:
N = ValorInicial : Passo : ValorFinal
Lembre-se que o valor inicial, o passo ou o valor final podem também assumir valores negativos. (desde que o intervalo seja coerente, caso contrário teremos uma matriz vazia.)
Essa lógica é muito utilizada no Matlab, inclusive nas funções for, como veremos nos próximos posts.
Assinar:
Postagens (Atom)


