Buscar

Introdução ao scilab

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 96 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 96 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 96 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

SCILAB
TEMA:
MINISTRANTES: ALINE E. RUBENICH
VALDINILSON L. DA CUNHA
PROGRAMAÇÃO DO MINICURSO
21/11:
• Introdução do Software
• Ambiente Scilab
22/11: 
• Operações básicas
• Polinômios, Vetores e Matrizes
24/11
• Gráficos
INTRODUÇÃO
O que é scilab?
-Software gratuito com ambiente gráfico para cálculo cientifico;
-Fornece funções matemáticas que possibilita a interação com os 
programas em várias linguagens
-Sofisticada estrutura de dados
-Vários sistemas operacionais
INTRODUÇÃO
Onde utilizar?
-Ambiente para desenvolvimento ou prototipação numérica
-Utilização no ambientes acadêmicos e profissionais
-Plataforma atualizada, permitindo avanços no desenvolvimento
-Vasta bibliotecas, permitindo utilização de várias ferramentas
AMBIENTE SCILAB
AMBIENTE SCILAB
AMBIENTE SCILAB
AMBIENTE SCILAB
AMBIENTE SCILAB
AMBIENTE SCILAB
AMBIENTE SCILAB
Marcação da linha de 
comando e o cursor
AMBIENTE SCILAB
Comando Help:
AMBIENTE SCILAB
As operações aritméticas são digitados após o símbolo --> e em seguida tecla-
se [ENTER]
Exemplo:
AMBIENTE SCILAB- COMANDO WHOS
Variável Tipo
%F Booleana
%T Booleana
%z Polinomial
%s Polinomial
%nan Constante
%inf Constante
COMPILER String
%gtk Booleana
%gui Booleana
%pvm Booleana
Variável Tipo
%tk Booleana
s Polinomial
%t Booleana
%f Booleana
%eps Constante
%io Constante
%i Constante
%e Constante
%pi Constante
AMBIENTE SCILAB
Comando de diretório e arquivos:
AMBIENTE SCILAB
• < menor 
• <= menor ou igual 
• > maior
• >= maior ou igual 
• == igual 
• ~= diferente
• <> diferente 
• & e 
• | ou
• ~ não
Operação de comparação
AMBIENTE SCILAB
AMBIENTE SCILAB
• 1. Nomes de variáveis começam com uma 
letra seguido de letras, algarismos ou 
sublinhados.
Por exemplo: Alpha, notas, A1, B23 e 
cor_do_objeto;
• 2. Caracteres especiais não são permitidos. 
Isto é, não é permitido usar #, $, &, %, ?,
!, @, <, ~, etc;
• 3. Caracteres acentuados não são permitidos;
• 4. Nomes de variáveis são sensíveis a maiúsculas e 
minúsculas.
Por exemplo, variável Alpha é diferente das variáveis 
ALPHA, alpha e AlPhA.
De acordo com as regras acima, os seguintes nomes de 
variáveis são válidos:
ALPHA, X, B1, B2, b1, matricula e MEDIA.
Porém, estes nomes de variáveis são inválidos:
5B, 1b, nota[1], A/B e X@Z.
Regras para nome de variáveis:
AMBIENTE SCILAB
A ausência ou presença do ponto e vírgula no final de um comando do Scilab
visualiza ou suprime, respectivamente, o resultado do cálculo.
Exemplo:
Regras para ponto-e-vírgula:
AMBIENTE SCILAB
Quando um comando é longo demais para caber em uma única linha ele pode 
ser subdividido em duas ou mais linhas. Sempre que uma linha terminar com 
dois pontos “..”, o Scilab entende que a próxima linha é uma continuação da 
anterior e não um novo comando. 
Comando “..” :
EXEMPLOS
1) Calcule a área e a circunferência de uma circunferência, cuja o raio é 3m 
através dos comandos do scilab.
EXEMPLOS
1) Calcule a área e a circunferência de uma circunferência, cuja o raio é 3m 
através dos comandos do scilab.
EXEMPLOS
• a = 1;
• Var _ 1 = 2; 
• 2var = 3; 
• esta variável = 3; 
• ítens = 2; 
• b = 2;
• B = 3; 
• verifique se b e B têm o mesmo valor.
2) Verificar se é possível declarar as seguintes variáveis: 
EXEMPLOS
3) Usando a linha de comando do SCILAB resolva o seguinte problema:
Um terreno A mede 0.5 m de largura por 0.3km de comprimento. O 
outro terreno B mede 8 m de largura por 40m de comprimento. Sabendo que o 
m² de cada terreno vale R$ 15,00, calcule a área total e o valor monetário 
necessário para se adquirir esses dois terrenos.
EXEMPLOS
• 3)
EXEMPLOS
4) Crie algumas variáveis e atribua valores a elas usando, ou não, o caractere ;
no final da linha. Em particular, verifique que o Scilab distingue letras
maiúsculas de minúsculas. Para tanto, faça as seguintes atribuições (observe os
“;”):
->var1=10;
-->Var1=20;
-->VAR1=30;
Agora, exiba o valor dessas variáveis através dos comandos: -->var1 -->Var1
-->VAR1
EXEMPLO
5) Execute o comando:
-->x =1..
-->+2..
-->+3..
-->+4
Observe qual valor que será o resultado.
EXEMPLO
6)
a) Calcule x²+y² para:
x = sin(%pi/4)
y = cos(%pi/4)
b) Calcule: 
z= ans*432
EXEMPLO
6) Resposta:
a)x=0.7071067811865474617150;
y= 0.7071067811865475727373
x²+y²=1
b)432
EXEMPLO
7) Pense antes de resolver no Scilab:
2 * 3 + 4
2 * (3 + 4)
2 + 3 * 4
(2 + 3) * 4
2 / 3 + 4
(2 + 3) / 4
2+3 / 4
EXEMPLO
8) Calcule:
a) cos(2*%pi)
b) %e^2
EXEMPLO
9) O triplo de um número natural somado a 4 é igual ao quadrado de 5. 
Calcule-o:
EXEMPLO
9) O triplo de um número natural somado a 4 é igual ao quadrado de 5. 
Calcule-o:
3*x+4=5^2
EXEMPLO
10) A idade de um pai é o quádruplo da idade de seu filho. Daqui a cinco 
anos, a idade do pai será o triplo da idade do filho. Qual é a idade atual de 
cada um?
EXEMPLO
10) A idade de um pai é o quádruplo da idade de seu filho. Daqui a cinco anos, a 
idade do pai será o triplo da idade do filho. Qual é a idade atual de cada um? 
Resolução:
Atualmente
Filho: x
Pai: 4x
Futuramente
Filho: x + 5
Pai: 4x + 5
4x + 5 = 3 * (x + 5)
4x + 5 = 3x + 15
4x – 3x = 15 – 5
x = 10
Pai: 4x → 4 * 10 = 40
O filho tem 10 anos e o pai tem 40
EXEMPLO
11) O dobro de um número adicionado ao seu triplo corresponde a 20. Qual é 
o número?
EXEMPLO
11) O dobro de um número adicionado ao seu triplo corresponde a 20. Qual é 
o número?
2x + 3x = 20
EXEMPLO
12) A função real de variável real, definida por f (x) = (3 – 2a).x + 2, é 
crescente quando:
a) a > 0
b) a < 3/2
c) a = 3/2
d) a > 3/2
e) a < 3
EXEMPLO
12) A função real de variável real, definida por f (x) = (3 – 2a).x + 2, é 
crescente quando:
3 – 2a > 0
EXEMPLO
12) A função real de variável real, definida por f (x) = (3 – 2a).x + 2, é 
crescente quando:
a) a > 0
b) a < 3/2
c) a = 3/2
d) a > 3/2
e) a < 3
OPERAÇÕES BÁSICAS
Operações matemáticas:
Operação Sinal
Soma +
Subtração -
Multiplicação *
Divisão à direita /
Divisão à esquerda \
Potenciação ^
EXEMPLO
Execute os seguintes comandos:
a)2+3
b)5*2
c)9-4
d)9^3
e)8/2
f)8\2
OPERAÇÕES BÁSICAS
Funções Matemáticas Elementares:
O Scilab oferece um grande número de funções matemáticas básicas como 
funções trigonométricas, exponenciais, logarítmicas, etc, como qualquer 
calculadora científica.
EXEMPLO
Execute os seguintes comandos:
A) sind(90)
B) sin(%pi/2)
C) modulo(3,9)
D) exp(3)
E) help sign
NÚMEROS COMPLEXOS
Usando a variável pré-definida %i, os números complexos podem ser 
representados facilmente.
Algumas operações básicas podem ser aplicadas aos números complexos:
real Retorna a parte real
Imag Retorna a parte imaginária
Imult Multiplica o número por i
isreal Verdadeiro se parte imaginária for zero
EXEMPLO
Execute os comandos e verifique os resultados: 
-->x=1+%i 
-->isreal(x)
-->y=1-%i
-->real(y)
-->imag(y)
-->x*y 
EXEMPLO
Dados os seguintes números complexos, Z1 = 3 + 5i; Z2 = 7 + 3i, execute as 
seguintes operações:
a) Z1 + Z2;
b) b) Z1 * Z2;
c) c) Z1 + sqrt(-20);
d) d) Calcule os módulos de Z1 e Z2 e compare com abs(z);
Lembre-se: | z |= a² +b²
VARIÁVEL ans
Toda vez que executamos um cálculo e o resultado não é armazenado
explicitamenteem uma variável especificada, o Scilab armazena esse
resultado em uma variável padrão denominada ans.
Exemplo:
Execute o comando:
-->exp(3)
-->t=log(ans)
MATRIZES
Criando Matrizes:
• colchetes [,] delimitam o início e o fim da matriz;
• vírgulas “,” separam os valores em diferentes colunas;
• pontos e vírgulas “;” separam os valores de diferentes linhas 
EXEMPLO
Crie a matriz: A = [1, 2, 3; 4, 5, 6] 
Verifique o resultado.
A = 1. 2. 3. 
4. 5. 6.
Crie a matriz A=[1,2;3,4;5,6] 
Verifique o resultado.
A = 1. 2. 
3. 4. 
5. 6. 
EXEMPLO
Crie a matriz (após o elemento de valor igual a 3, digite <ENTER>)
-->A = [1 2 3
-->4 5 6] 
VETORES
Montando um vetor:
• colchetes [,] delimitam o início e o fim do vetor;
• vírgulas “,” separam os valores em diferentes colunas; 
• pontos e vírgulas “;” separam os valores de diferentes linhas 
Exemplo:
a) Crie um vetor linha (, separando elementos) V1=[1,2,3,4] 
b) Crie um vetor coluna (; separando elementos) V1=[1;2;3;4]
MATRIZES ESPECIAIS
Comando Resultado
eye(n,m) Gera a matriz identidade
zeros(n,m) Inicializa todos os elementos com 0
ones(n,m) Inicializa todos os elementos com 1
Exemplo:
a) eye(8,9)
b) zeros(3,4)
c) Ones(4,7)
OPERAÇÕES COM MATRIZES E VETORES
Adição e Subtração:
Exemplo:
a) A=[2 3 2;4 5 2;9 8 5] e B=[2 9 3; 1 5 9;5 7 9]
A+B
B+A
B-A
A-B
OPERAÇÕES COM MATRIZES E VETORES
Multiplicação e Divisão:
Exemplo:
a) A=[2 3 2;4 5 2;9 8 5] e B=[2 9 3; 1 5 9;5 7 9]
A*B
B*A
A/B
A\B
OPERAÇÕES COM MATRIZES E VETORES
Potenciação
Exemplo:
a) A=[2 3 2;4 5 2;9 8 5] e B=[2 9 3; 1 5 9;5 7 9]
A^B
B^A
b) C=[1 2; 3 4] e D=[1 2; 3 4]
C^D
D^C
OPERAÇÕES COM MATRIZES E VETORES
Exemplo: Determine a matriz por correntes de malha
OPERAÇÕES COM MATRIZES E VETORES
Exemplo: Determine a matriz por correntes de malha
8 −4 −2
−4 10 −2
−2 −2 10
𝑖0
𝑖1
𝑖2
10
0
4
x =
OPERAÇÕES COM MATRIZES E VETORES
Transposta e Conjugada: O operador ‘ resulta na transposição da matriz e, se 
seus elementos forem números complexos, são substituídos pelos respectivos 
complexos conjugados. O operador ./ resulta apenas na matriz transposta. Se 
a matriz for real, os dois operadores têm resultado idêntico. 
Exemplo:
a) A=[2 3 2;4 5 2;9 8 5]
A’
A.’
b) B=[1+%i 2+%i; 3+%i 4+%i]. 
B’
B.’
POLINÔMIOS
Os polinômios são criados no Scilab através da utilização da função poly
• Exemplo:
a) p = poly([1 2], ’s’)
Com a função roots, mostra as raízes da função.
• Exemplo:
b)roots(p)
EXEMPLO
Usando a função roots do Scilab calcular as quatro raízes da equação 
polinomial: T(x) = 24 – 14x – 13x^2 + 2x^3 + x^4 = 0.
POLINÔMIOS
Polinômios podem ser multiplicados, divididos, somados ou subtraídos como 
mostra a sequencia de comandos.
Exemplo:
P=poly([1 2],’s’) e Q=poly([3 2],’s’)
Multiplicação: P*Q
Divisão P/Q
Divisão de Polinômios: [r,Q]=pdiv(P,Q)
Operações:
EXEMPLOS
1) Dado os vetores, u = [2, 3], v = [-1, 4] e w = [-2, -1], determine: 
a) u + 2*v
b) – u
c) u – v
d) 3*u – 2*v + w
e) – u – v + 2*w
EXEMPLOS
2) Determine a matriz do tipo 3x1 tal que 𝑎𝑖𝑗 =
𝑖
3
+ 3 ∗ 𝑗
- Determine a matriz transposta da obtida
3) Qual é o resultado das seguintes expressões segundo o SCILAB:
((5+3)*2^2+7)*2
(5+3*2^2+7)*2
(5+3*2^(41)*2)+(53*2)
(2*3)^(31)/(52)+6
EXEMPLOS
4) Considere os seguintes números complexos z1 = 10 + 2i, z2 = 5 – 3i e z3 = –
9 + 5i e calcule a sua soma
5) Calcule a subtração destes dois números complexos: z1 = 12 – 3i e z2 = 15
+ 2i.
EXEMPLOS
6) Dadas as matrizes ao lado, Calcule:
1. C = A + B
2. C = A-B
3. C = 10*A + 5*B
4. C = A + B*%i
5. A/B
6. A\B
OPERAÇÕES MATRIZES DE POLINÔMIOS
Os elementos da matriz podem ser polinômios:
Exemplo: A = [1-2*s+s^3 3*s+4*s^2; s 2*s]
OPERAÇÕES MATRIZES DE POLINÔMIOS
Exercício:
Dadas as matrizes de polinômios:
A = [2*x^2+3*x x;1 x^3+2];
B = [3*x^4+x^2 x^5;8*x+1 5];
Calcule:
• A*B
• A/B
OPERAÇÕES MATRIZES DE POLINÔMIOS
• A*B • A/B
GRÁFICOS
 O Scilab permite a criação de vários tipos de gráficos em 2D e 3D.
 Uma situação particularmente comum é encontrada quando se 
deseja construir o gráfico de uma função matemática conhecida. 
Exemplo:
Construa o gráfico da função y=x² no intervalo [1,10] usando 50 pontos igualmente espaçados. 
Digite a seguinte sequência de comandos na console do Scilab: 
x=linspace(1,10,50); 
y=x^2;
plot(x,y) 
GRÁFICO 2D
GRÁFICO 2D
Plot2s1:plotagem padrão (linear)
De maneira similar a anterior, construa o gráfico da função y=sin(x^2), no 
intervalo [-π,π], usando 100 pontos igualmente espaçados. 
GRÁFICO 2D
GRÁFICO 2D
plot2d2: plotagem discreta (histograma ou degraus):
x= linspace (-%pi,%pi,100);
y=sin(x);
plot2d2(x,y)
GRÁFICO 2D
GRÁFICO 2D
plot2d3: plotagem em barras verticais:
x= linspace (-%pi,%pi,100);
y=sin(x);
plot2d3(x,y)
GRÁFICO 2D
GRÁFICO 2D
plot2d4: plotagem em setas:
x= linspace (-%pi,%pi,100);
y=sin(x);
plot2d4(x,y)
GRÁFICO 2D
GRÁFICO 2D
O comando fplot2d plota uma função definida por function ou deff.
deff("x=s(t)",["x=2*sin(.3*t)"]);
t=0:.1:16*%pi;
fplot2d(t,s)
GRÁFICO 2D
GRÁFICO 2D
O comando contour2d plota curvas de nível com base numa matriz de dados 
geométricos da superfície a ser modelada:
nz=10; // número de níveis
a=eye(5,10)+rand(5,10)+ones(5,10);// matriz para a plotagem
z= min(a) + (1:nz)*(max(a) -min(a))/(nz+1); //valor numérico de cada nível
x=size(a); contour2d(1:x(1),1:x(2),a,nz);
GRÁFICO 2D
GRÁFICO 2D
O comando polarplot plota as variáveis em coordenadas polares:
t= 0:.01:2*%pi;
polarplot(sin(2*t),cos(5*t));
GRÁFICO 2D
BODE
Plotar o diagrama de Bode da seguinte função de transferência:
H(s):
s² +18s+100
s² + 6.06s + 102.01
BODE
BODE
GRÁFICOS 3D
O comando mais utilizado é o plot3d. O seu uso pode ser 
observado na rotina a seguir:
t=[0:0.1:2*%pi]';
z=(sin(t).*exp(t))*cos(t');
plot3d(t,t,z)
GRÁFICO 3D
GRÁFICOS 3D
Um modo mais rápido é gerar superfícies a partir de funções definidas pelo 
comando deff, através do comando eval3d:
x=-2:.1:2;
y=x;
deff('[z]=f(x,y)',['z= cos(x).*y']);
z=eval3d(f,x,y);
plot3d(x,y,z)
GRÁFICOS 3D
OBRIGADO A TODOS!

Outros materiais