Buscar

Tutorial Scilab - 2º trabalho de cálculo 2

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 11 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 11 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 11 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

2º TRABALHO: DISCIPLINA DE CÁLCULO 2 
 
Esboço do gráfico, curvas de nível e o campo gradiente de 
funções de duas variáveis no SCILAB 
 
Este texto tem por objetivo apresentar os comandos básicos necessários para traçar o gráfico 
de uma superfície do tipo ),( yxfz  bem como as suas curvas de nível e o campo gradiente. 
Para a realização desta atividade será utilizado um ambiente de programação numérico 
denominado SCILAB. Instruções acerca da instalação e visão geral da utilização desse ambiente 
são inicialmente abordados. Em seguida, os comandos básicos, definidos a partir da linguagem 
de programação do SCILAB, são apresentados e explicados passo a passo. 
 
O SCILAB 
 
 O SCILAB é um software de computação numérica que possui uma linguagem de 
programação para a execução de operações relacionadas a cálculos numéricos e visualização 
de dados. 
 
(...) é um programa de computador voltado para a execução de 
cálculos científicos e visualização computacional de dados. Todas as 
operações executadas pelo SCILAB são "ordenadas" pelo usuário a 
partir de uma sequencia de comandos definidos por uma linguagem de 
programação de alto nível. É importante para o usuário dominar a 
sintaxe desta linguagem, em outras palavras, o usuário precisa saber 
falar a língua do SCILAB para que as operações de interesse sejam 
executadas. Cada operação tem sua respectiva sequencia de instruções 
ou comandos definidos a partir de uma predeterminada sintaxe. 
(ALMEIDA, 2013, p.1) 
 
 
 
 
Curso: Engenharia Química e Ciência da 
Computação. 
Disciplina: Cálculo 2 
Acadêmico:________________________
_ 
ONDE ENCONTRAR O SCILAB? 
Para adquirir gratuitamente o SCILAB, basta fazer o download do software pelo 
endereço eletrônico: http://www.scilab.org/products/scilab/download. Na instalação do 
software opte pelo idioma “Português” e pela instalação completa de pacotes, ou seja, 
“Full installation”. Após instalar o SCILAB, procure o seu atalho no Menu Programas e 
execute-o. A Figura 1 mostra a janela principal do SCILAB, que aparece imediatamente 
após sua inicialização. Após inicializado, o SCILAB fica aguardando comandos 
inseridos pelo usuário, que seguem a sintaxe de sua linguagem de alto-nível. Os 
comandos são inseridos nesta janela principal, imediatamente após o indicador "-->". 
Todo comando inserido deve ser finalizado com o ponto-e-vírgula ";". Para executar o 
comando, pressione a tecla ENTER. 
 
 
Principais características do Scilab (versão 5.3.3) 
 
 Gratuito e de código livre; 
 Fácil aprendizado; 
 Ótimo gerador de gráficos 2D, 3D e animações; 
 Diversas funções pré-definidas, como as de operações matriciais; 
 Facilidade de implementação do seu próprio programa; 
 Fácil Linkagem com C, C++ e FORTRAN; 
 Toolbox com algoritmos específicos como de Redes Neurais; 
 Capacidade de ser executado de forma paralela; 
Bibliotecas bem estabelecidas: 
 
 Funções de Álgebra Linear: LAPACK, LINPACK e BLAS; 
 Funções para solução de equações diferenciais: ODEPACK; 
 Funções de Otimização: MINPACK. 
 
 Menu principal: 
 
 Arquivo ⇒ gerenciamento de arquivos (abre, salva e etc); 
 Editar ⇒ copiar, colar e etc; 
 Controle ⇒ controle de ações do Scilab; 
 Preferências ⇒ preferências na visualização da interface (cores, linguagem, etc); 
 Aplicativos ⇒executa alguns aplicativos do Scilab; 
 ? (help) ⇒ ferramenta mais poderosa. 
 
Operadores aritméticos: 
 
Constantes especiais: 
 
 %e (constante neperiana) 
 %i (raiz quadrada de -1, número imaginário) 
 %pi (constante PI) 
 %inf (infinito) 
 %nan (não é um número) 
 %t (verdadeiro) 
 %f (falso) 
 
Funções Elementares: 
 
 imag(x): Mostra a parte imaginária de um complexo 
 real(x): Mostra a parte real de um complexo 
 log(x), log10(x), log2(x): Logaritmos natural, base 10 e base 2 
 modulo(x,y): Mostra o resto da divisão de x por y 
 abs(x): Retorna o valor absoluto (se x é real) e o módulo (se x é complexo) 
 round(x): Arredonda o valor de x para o inteiro mais próximo 
 floor(x): Arredonda para o menor inteiro 
 ceil(x): Arredonda para o maior inteiro 
 sqrt(x): Calcula a raiz quadrada de x 
 cos(x), sin(x), tan(x), cotg(x): Retorna cosseno, seno, tangente ou cotangente de 
x (x deve estar em radianos) 
 acos(x), asin(x), atan(x): Retorna o ângulo (em radianos) 
 
TRAÇANDO O GRÁFICO DE UMA SUPERFÍCIE 
 
Exemplo 1: Esboçar o gráfico da função )cos( )( ),( 2 yxsenxyxfz  numa região 
de domínio onde ∈[− , ] e ∈[− , ]. 
Discussão: 
Para traçar o gráfico da Figura 2 execute o seguinte de conjunto de instruções na janela 
de comandos do SCILAB: 
 
 O primeiro comando deff, declara uma função z=f(x,y) definida pela equação 
'z=x*sin(x)^2*cos(y)'. 
 
Para definir qualquer outra função de duas variáveis, basta apenas mudar a expressão 
que define a equação da função. Ou seja, a função ( , )=sen sen( ) é declarada pelo 
comando (entre aspas): "deff('z=f(x,y)','z= sin(x)*sin(y)')". Caso queira re-declarar a 
função f(x,y), use o comando 'clear f' para desfazer a última declaração. 
 
 O segundo comando npts, declara a quantidade de pontos em x dentro do 
intervalo [− , ] bem como a quantidade de pontos em y no intervalo [− , ] a 
serem utilizados para a construção do gráfico da superfície. 
 
 Os terceiro e quarto comando criam os valores de x e y que serão utilizados para 
desenhar o gráfico de z=f(x,y). Lembre-se que, embora estejamos lidando com 
funções contínuas, a natureza do computador é discreta. Ou seja, não temos 
infinitos valores de x e y definidos entre − e . O comando x = linspace(-
%pi,%pi,npts) cria npts=50 valores para x e y dentro desse intervalo. A 
constante é representada por %pi no SCILAB. 
 
 O quinto comando calcula os valores de z=f(x,y) para todos os possíveis 
conjuntos de pontos (x,y) definidos anteriormente. O comando figure() cria uma 
janela de figura onde o gráfico será traçado. O comando close(), embora não seja 
utilizado aqui, fecha uma janela de figura já aberta. O último comando desenha 
o gráfico da função z=f(x,y) no plano cartesiano tridimensional. 
 
 
 
Gráfico gerado 
Alguns atributos 
 
Para o gráfico da superfície anterior suponha que queiramos discriminar os eixos e 
colocar um título para o gráfico. Faça 
 
 
 
 
Gráfico gerado com os atributos 
 
Para salvar o gráfico traçado, basta ir no menu "Arquivo" da janela de figura e 
clicar em "Exportar para..." e salvar o gráfico em uma imagem de extensão PNG para 
posteriormente ser inserida no editor de texto. Outra opção é menu "Arquivo" e "copiar 
para área de transferência", para armazenar o conteúdo da janela figura na memória do 
computador, e em seguida, usando o comando CTRL+V, colar a figura num editor de 
texto como o MS Word, por exemplo. 
 
 
 
Atividades: 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Outros comandos: 
 
 --> clear // remove todas as variáveis do espaço de trabalho. Não será solicitado 
confirmação de remoção das variáveis. Todas variáveis estarão, irremediavelmente, 
removidas. 
--> clc // este comando é usado para limpar a janela. 
--> clf // no Scilab, gráficos sucessivos são sobrepostos em uma mesma janela gráfica. Para 
evitar que isso ocorra, podemos utilizar o comando clf. (Limpa a tela gráfica) 
 
TRAÇADO DE CURVAS DE NÍVEL 
 
Existem duas formas de visualizar as curvas de nível no SCILAB. A primeira 
delas, mostrada na Figura 3, é desenhando as curvas de nível sobre o gráfico da função 
z=f(x,y) utilizando o comando "contour(x,y,z,nz)". A segunda, mostrada na Figura 4, é 
desenhando a projeção destas curvas sobre o plano xy usando o comando 
"contour2d(x,y,z,nz)". O número de curvas de nível traçadas é o valor representado por 
nz. Para maiores informações sobre curvas de nível, consulte as notas de aula e o livro-
texto "Cálculo- Vol. 2" de James Stewart. 
Digite no Scilab: 
 
O argumento flag=[4,2,4] e flag=[0,2,4], passados para as funções plot3d e contour, 
são parâmetros relacionados com visualização do gráfico. Caso deseje entender melhor, 
execute o comando help('plot3d') e help('contour') na janela de comandos para acessar a 
documentação das funções plot3d e contour do SCILAB. Para gerar o gráfico da Figura 
5, primeiramente o gráfico da função é traçado, e em seguida as curvas de nível são 
desenhadas. O último comando, a função contour desenha as curvas de nível. O 
argumento nlevels corresponde ao número de curvas níveis desejadas. No nosso 
exemplo, 10 curvas de nível foram traçadas. Cada uma possui uma cor específica 
associada ao seu valor. 
 
Para traçar as curvas de nível no mapa 2D faça: 
 
O argumento rect=[xmin,ymin,xmax,ymax]), passado para a função contour2d, define 
os limites de e para desenhar as curvas de nível. O comando xset("fpf","%.2f") 
desenha o texto correspondente ao valor das curvas de nível do gráfico. 
 
TRAÇANDO O CAMPO GRADIENTE DE UMA FUNÇÃO DE DUAS 
VARIÁVEIS REAIS. 
 
O campo gradiente é um gráfico que nos permite visualizar o comportamento do vetor 
gradiente de uma função de duas variáveis z=f(x,y). Sobre cada ponto (x,y) é desenhado 
um vetor gradiente local representado por uma seta. O comprimento da seta nos dá a 
idéia da intensidade do vetor gradiente naquele ponto. A direção da seta nos diz para 
onde está apontando o vetor gradiente. Para maiores informações sobre o vetor 
gradiente e campo gradiente, consulte as notas de aula e o livro-texto "Cálculo - Volume 
2" de James Stewart. A Figura 5 mostra o campo gradiente para a função z=f(x,y) usada 
neste tutorial. 
 
 
Os seguintes comandos traçam o campo gradiente desenhado sobre as curvas de nível 
conforme mostrado na Figura 5: 
 
 
 
Pode-se notar que nos comandos mostrados anteriormente, três funções foram criadas: f, 
fx e fy. Ou seja, estas são, respectivamente, a função, sua derivada parcial em relação a 
x, e sua derivada parcial em relação a y. Os valores da função e das derivadas parciais 
são calculados para cada um dos pontos (x,y). A função champ(x,y,zx,zy,arfact=0.5) 
desenha o campo vetorial da função. Como argumento da função são fornecidos os 
pontos (x,y), e os valores do vetor gradiente nestes pontos (zx,zy). Estas informações 
são utilizadas para desenhar as setas que representam o vetor gradiente sobre os pontos. 
O argumento arfact é um fator de escala para definir o tamanho da ponta da seta. 
 
Atividade2: 
a) Para cada superfície da atividade 1 gerar o seu mapa de contorno (curvas de nível) 
no plano bidimensional. 
b) Para cada superfície da atividade 1, gerar o campo gradiente da função. 
 
 
REFERÊNCIAS BIBLIOGRÁFICAS 
 
[1] Stewart J., Cálculo - Volume 2, São Paulo: Cengage Learning, 2011. 
[2] Campbell S., Chancelier J. P., Nikoukhah R, Modeling and Simulation in 
Scilab/Scicos. New York: Springer, 2006. 
[3] Almeida, R. A. Tutorial: Traçando o gráfico, as curvas de nível e o campo gradiente 
de funções de duas variáveis no SCILAB, 2013.

Continue navegando