Buscar

Relatório_Aula_01

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

Relatório Aula 01
Universidade Federal de São João del Rei
Campus Alto Paraopeba - CAP
Engenharia de Telecomunicações
Diego Santos Seabra
Ouro Branco
2013
Relatório Aula 01
Relatório apresentado como exigência 
do professor Gustavo Fernandes em En-
genharia de Telecomunicações da Univer-
sidade Federal de São João del Rei.
Diego Santos Seabra
Ouro Branco
2013
SUMÁRIO
1 INTRODUÇÃO.................................................................................................................. 6
2 EXERCÍCIO 1................................................................................................................... 7
2.1 which........................................................................................................................... 7
2.2 pcode.......................................................................................................................... 7
2.3 inmem......................................................................................................................... 7
2.4 mex............................................................................................................................. 8
2.5 editpath....................................................................................................................... 8
2.6 getenv......................................................................................................................... 9
2.7 unix.............................................................................................................................. 9
2.8 vms.............................................................................................................................. 9
2.9 realmax..................................................................................................................... 10
2.10 realmin.................................................................................................................... 10
2.11 clock........................................................................................................................ 10
2.12 date......................................................................................................................... 11
2.13 etime....................................................................................................................... 11
2.14 tic............................................................................................................................. 12
2.15 toc........................................................................................................................... 12
3 EXERCÍCIO 2................................................................................................................. 13
3.1 ver............................................................................................................................. 13
3.2 version...................................................................................................................... 13
3.3 demo......................................................................................................................... 13
3.4 whatsnew................................................................................................................. 13
3.5 bench........................................................................................................................ 14
3.6 who............................................................................................................................ 14
3.7 whos.......................................................................................................................... 14
3.8 clear.......................................................................................................................... 14
3.9 clc.............................................................................................................................. 14
3.10 save........................................................................................................................ 15
3.11 load......................................................................................................................... 15
3.12 quit.......................................................................................................................... 15
3.13 what........................................................................................................................ 15
3.14 type......................................................................................................................... 16
3.15 edit.......................................................................................................................... 16
3.16 open........................................................................................................................ 16
3.17 lookfor..................................................................................................................... 16
3.18 path......................................................................................................................... 17
3.19 addpath.................................................................................................................. 17
3.20 rmpath.................................................................................................................... 17
3.21 echo........................................................................................................................ 17
3.22 diary........................................................................................................................ 17
3.23 format..................................................................................................................... 18
3.24 cd............................................................................................................................ 18
3.25 pwd......................................................................................................................... 18
3.26 dir............................................................................................................................ 18
3.27 delete...................................................................................................................... 18
3.28 dos.......................................................................................................................... 19
3.29 computer................................................................................................................ 19
3.30 web......................................................................................................................... 19
4 DESCRIÇÕES................................................................................................................ 20
5 CONCLUSÃO................................................................................................................. 22
REFERÊNCIAS................................................................................................................. 23
6
1 INTRODUÇÃO
Este relatório tem como objetivo apresentar as funções básicas do MATLAB em
seu aspecto pleno e prático.
Como será visto mais adiante, os comandos aqui apresentados se mostram úteis
a ponto de facilitar o trabalho dos usuários pois ao mesmo tempo que o usuário tem
a possibilidade de digitar suas linhas de código ele pode se utilizar destes
comandos para uma forma mais eficiente de trabalhar.
Também será visto comandos diversificados que ajudam em outras partes de
criações de funções, tais como procurar uma string em todos os arquivos .m do
MATLAB.
A seguir serão abordados dois exercícios propostos pelo professor, sendo o
primeiroanálise de comandos diversos (mais avançados e menos básicos) e o
segundo exemplos práticos de comandos mais básicos vistos em aula.
7
2 EXERCÍCIO 1
Abaixo serão apresentados comandos diversos NÃO vistos em aula, com seus
exemplos.
2.1 which
Mostra o diretório de funções e arquivos do MATLAB.
Ex.: which ans (retorna o diretório onde a variável ans está salva).
>> which math
C:\Program Files\MATLAB\R2013a\toolbox\mbc\mbcexpr\@cgslparser\math.m %
cgslparser method
2.2 pcode
Encripta o código de uma função e cria um arquivo .p de encriptação, gerando
assim um arquivo "executável" do MATLAB. (Lembrando que para o teste desse
comando, foi-se necessário o comando edit fun1 que criou a função de teste, vide
Descrições)
Ex.: pcode fun1 (onde fun1 é uma função pré-criada qualquer)
>> pcode fun1
>> dir
. .. fun1.m fun1.p
2.3 inmem
Mostra uma lista de funções, arquivos MEX e classes de arquivos na memória do
MATLAB.
8
Ex.:
>> inmem
ans =
'matlabrc'
'pathdef'
'userpath'
'ispc'
'filesep'
'pwd'
'usejava'
'initializeMATLABRoot'
'opaque.char'
'opaque.toChar'
2.4 mex
Compila uma função mex de um código escrito em C++ ou Fortran
Ex.:
Compilando o arquivo yprime.c:
>>mex yprime.c
2.5 editpath
COMANDO NÃO EXISTENTE NO MATLAB R2013a, entretanto o comando edit path
abre o editor de funções e edita a função embutida path, o que é útil quando se quer
editar esta função para um fim específico, como por exemplo, salvar
automaticamente a cada x minutos.
9
2.6 getenv
Ao contrário do lookfor que procura em todos os arquivos .m do MATLAB pela
variável (ou palavra) procurada, o comando getenv retorna a variável de ambiente
solicitada pelo usuário como no exemplo seguinte:
Ex.: getenv ('NOME'), onde NOME é uma string de texto, procura dentro do sistema
operacional uma lista com a string solicitada na forma NOME=VALOR. Se
encontrada, o MATLAB retorna um valor de string, se não encontrada o MATLAB
retorna uma matriz vazia.
2.7 unix
Executa comandos do unix especificado por parêntesis (retornando o status como
falso ou verdadeiro, 0 ou 1)
Ex.:
>>command = 'cd ..';
>>[status,cmdout] = unix(command);
>>status
status =
0
2.8 vms
COMANDO NÃO EXISTENTE NO MATLAB R2013a (de acordo com o HELP).
Entretanto há uma plataforma de processamento em computação com o nome
OpenVMS (Virtual Machine System) que é o nome de uma tecnologia top de linha
entre usuário e sistema - vide Descrições.
Neste caso é o MATLAB que fica instalado em uma máquina que possui o sistema
10
OpenVMS e não o contrário (o manual para esta instalação pode ser encontrado
nas Referências) e executa as mesmas funções do MATLAB como em um
computador normal, porém com mais funcionalidades pertinentes a este tipo de
sistema e processamento.
2.9 realmax
Retorna o número finito máximo do matlab (com precisão dupla de IEEE, vide
Descrições).
Ex.:
>> realmax
ans =
1.7977e+308
2.10 realmin
Retorna o número finito mínimo do matlab (com precisão dupla de IEEE, vide o
capítulo Descrições).
Ex.:
>> realmin
ans =
2.2251e-308
2.11 clock
Retorna a data atual e o horário como um vetor de números decimais.
Ex.:
>> clock
ans =
11
1.0e+03 *
2.0130 0.0100 0.0170 0.0110 0.0150 0.0135
Neste caso a data era: 17/10/2013,11:15.
2.12 date
Retorna a data atual.
Ex.:
>> date
ans =
17-Oct-2013
2.13 etime
Retorna o tempo passado, ou seja a diferença de tempo entre dois vetores.
Ex.:
>> t1=clock
t1 =
1.0e+03 *
2.0130 0.0100 0.0170 0.0110 0.0300 0.0405
>> str = 'March 28, 2014 11:51:00';
t2 = datevec(str,'mmmm dd, yyyy HH:MM:SS')
t2 =
2014 3 28 11 51 0
>> etime (t1,t2)
ans =
-1.3998e+07
12
2.14 tic
Inicia um cronômetro.
Ex.:
Iniciado às 11:18.
2.15 toc
Retorna os segundos passados pelo cronômetro iniciado pelo comando tic.
Ex.:
>> toc
Elapsed time is 400.770770 seconds.
Parado às 11:24
13
3 EXERCÍCIO 2
Para os comandos vistos em aula, abaixo se encontram exemplos práticos de
como utilizá-los.
3.1 ver
Para sabermos quais toolboxes possuímos em nosso MATLAB de forma rápida
utilizamos o comando ver.
3.2 version
Para adquirirmos um toolbox especifico necessitamos saber qual versão é
compatível com o MATLAB que possuímos, então utilizamos o comando version
para fazer essa verificação de forma rápida e prática.
3.3 demo
Quando estamos desenvolvendo uma linha de código ou uma função, muitas vezes
necessitamos verificar como programas similares foram desenvolvidos,
necessitando assim, de um exemplo. Para tanto o comando demo nos permite
visualizar códigos de "programas" e funções específicas para analisarmos e não
termos que "inventar novamente a roda", acelerando o processo de
desenvolvimento.
3.4 whatsnew
14
Útil para ver o que foi alterado em novas versões do MATLAB e quais são suas
novas "capacidades".
3.5 bench
É útil para verificar se uma aplicação que exige alto desempenho computacional irá
rodar com tranquilidade dentro do ambiente do sistema operacional utilizado.
3.6 who
Útil para verificar as variáveis utilizadas quando há um grande número de variáveis
definidas e não conseguimos "encontrá-las" através de outros menus.
3.7 whos
Útil para verificar as variáveis utilizadas com dimensões e memória que cada uma
ocupa.
3.8 clear
Nos ajuda de forma rápida e prática a limpar todas as variáveis armazenadas no
MATLAB. Isso se torna realmente útil quando temos um número muito grande de
variáveis em nosso workspace "poluindo" a tela. Deste modo, por exemplo,
podemos apagar todas as variáveis ao mesmo tempo ao invés de ter que apagá-las
uma a uma.
3.9 clc
15
É muito útil quando necessitamos apagar a tela para não deixá-la "poluída". Tão útil
quanto o comando cls do DOS.
3.10 save
Se torna muito útil quando necessitamos salvar o workspace de forma rápida e
efetiva ao se escrever linhas de código. Ou seja, ao invés de se pesquisar um local
para salvar o arquivo, pode-se escrever as funções no mesmo local e simplesmente
utilizar o comando save, fazendo com que o trabalho seja mais eficiente e menos
"doloroso".
3.11 load
Possui exatamente a mesma utilidade que o comando save, porém para se carregar
um arquivo no worspace.
3.12 quit
Extremamente útil quando necessitamos sair de uma função que entrou em loop e
não conseguimos parar esta função pelos meios comuns. Também pode ser
utilizado o atalho nativo do Linux (Ctrl + C).
3.13 what
Se torna extremamente útil quando necessitamos de ver todos os arquivos que
estão na pasta que estamos trabalhando.
16
3.14 type
Extremamente útil para analisar uma função sem sair de sua "área de trabalho".
Deve-se lembrar que, ao contrário do comando edit, o comando type não permite
editar as funções dentro da "área de trabalho".
3.15 edit
Muitas vezes, gostaríamos de implementar uma função ou um comentário a uma
linha de código de um determinado programa e, na maioria das vezes isso não é
possível devido ao "código-fechado". No MATLAB, certas funções podem ser
editadas através do comando edit, sendo possível utilizar funções e códigos prontos
e aprimorá-los com um toque pessoal para um fim específico. Isso se torna
realmente útil quando necessitamos fazer modificações para que as funções
ocorram de forma diferente da original, com propósitos mais específicos para o
trabalho que necessitamos.
3.16 open
Se torna muito útil quando necessitamos abrir o workspace de forma rápida e efetiva
ao se escrever linhas de código. Ou seja, ao invés de se pesquisar um local para
abrir o arquivo desejado, pode-se simplesmente usar o comando open para abrir
arquivosjá contidos na pasta em que se está trabalhando".
3.17 lookfor
Útil para pesquisar rapidamente palavras e variáveis em todos os arquivos .m do
MATLAB. Isso facilita em muito o trabalho a ser feito pois evita do usuário se perder
17
em pastas procurando arquivos os quais ele já sabe o nome.
3.18 path
Útil para verificar quais pastas o MATLAB utilizada para guardar seus arquivos.
3.19 addpath
Útil para adicionar pastas pessoais e de uso frequente às pastas do sistema.
3.20 rmpath
Útil para remover pastas pessoais e não mais utilizadas anteriormente adicionadas
às pastas do sistema.
3.21 echo
Útil para escrever funções em que não se quer demonstrar os resultados para o
usuário final. Ou seja, o programador da função tem controle total do que é
mostrado e do que não é.
3.22 diary
Útil para recomeçar o trabalho "de onde parou". Ou seja, o processo de
programação se torna mais intuitivo ao se continuar com uma linha de pensamento
18
anteriormente já definida.
3.23 format
Útil para mudar o estilo de visualização numérica, podendo inclusive apresentar
resultados para o usuário final de forma diferente do original calculado.
3.24 cd
Útil para navegar nas pastas através de comandos, o que facilita o processo de
escrita de linhas de código.
3.25 pwd
Útil para se localizar ao escrever funções e códigos. Ou seja, acaso o usuário se
perca dentro de pastas este comando retorna a pasta em que o mesmo se
encontra.
3.26 dir
Útil para verificar quantos e quais arquivos se encontram na pasta em que o usuário
está trabalhando.
3.27 delete
Útil para deletar facilmente arquivos não desejados. Ou seja, o fluxo de trabalho e
19
de programação através de comandos ajuda ao usuário a não perder o que se
encontra fazendo.
3.28 dos
Útil para utilizar comandos conhecidos do DOS para o MATLAB.
3.29 computer
Útil para localizar qual computador o usuário está utilizando.
3.30 web
Útil para verificar páginas da Internet enquanto produz seus códigos. Neste caso, o
usuário pode tirar dúvidas de comandos e até integrar comandos com a web,
produzindo funções que mais de um usuário pode alterar, por exemplo.
20
4 DESCRIÇÕES
Função fun1:
//Código de fun1//
a= 2 + 4;
b =2+3;
a+b
Definição de OpenVMS:
OpenVMS é um sistema operacional (SO) multiusuário, multiprocessado que
utiliza memória virtual e foi projetado para processamento em lote (batch), em
tempo real e processamento transacional. O sistema oferece elevada
disponibilidade através de cluster, ou seja, a habilidade para distribuir em múltiplas
máquinas físicas a carga do sistema. Isto permite que o sistema seja "tolerante a
desastre". VMS inclui também um sistema de prioridade de processos que permite
que o processo em tempo real funcione sem barreiras, bloqueios ou interferências.
Características:
-> Trabalho em rede integrado (originalmente DECnet e mais tarde, TCP/IP)
-> Simétrico, assimétrico, e NUMA multiprocessing, incluindo clustering
-> Distribuído sistemas de arquivos (Files-11)
-> Banco de dados integrado como RMS11 e bases de dados mergulhadas
incluindo Rdb
-> Sustentação para múltiplas linguagens de programação
-> Linguagem de comando shell (Linguagem de comando DIGITAL)
-> Hardware particionado para multiprocessos
-> Elevado - em nível da segurança
21
Precisão Dupla de IEEE (Double Precision):
In computing, double precision is a computer numbering format that occupies two
adjacent storage locations in computer memory. A double precision number,
sometimes simply called a double, may be defined to be an integer, fixed point, or
floating point.
Modern computers with 32-bit storage locations use two to store a 64-bit double
precision number (a single storage location can hold a single precision number).
Double precision floating point is an IEEE 754 standard for encoding binary or
decimal floating point numbers in 8 bytes.
Double precision binary floating-point format
Double precision binary floating-point is a commonly used format on PCs, due to
its wider range over single precision floating point, even if at a performance and
bandwidth cost. As with single precision floating point format, it lacks precision on
integer numbers when compared with an integer format of the same size. It is
commonly known simply as double. The IEEE 754 standard defines a double as:
Sign bit: 1 bit
Exponent width: 11 bits
Significand precision: 52 bits (53 implicit)
The format is written with the significand having an implicit integer bit of value 1,
unless the written exponent is all zeros. With the 52 bits of the fraction significand
appearing in the memory format, the total precision is therefore 53 bits
(approximately 16 decimal digits, 53\log_{10}(2) \approx 15.955).
22
5 CONCLUSÃO
Como visto, o MATLAB possui uma capacidade de processamento
de dados extremamente vasta e útil para as mais diversas áreas (independente
de qual área a ser aplicado, podendo ser efetivo em Engenharia, Biologia, Física,
Mecânica e etc), nas quais é possível utilizar toolboxes - que são ferramentas
importantes para o desenvolvimento de funções específicas - e comandos especiais
para cada tipo de processamento a que o usuário necessite.
Sendo assim, todas as ferramentas nos auxiliam para uma linha de pensamento
mais fluida e mais aberta, possibilitando a inovação de várias funções diferentes
(sem ter de "reinventar a roda" e só inovar funções já existentes).
Então, temos uma "bomba" de processamento de dados digitais em nossa mão
que só necessita de ser aprendida para ter seu potencial máximo descoberto, assim
como outros fizeram para fins de pesquisa, profissionais e pessoais.
23
REFERÊNCIAS
Can I use MATLAB on VMS platform?. Disponível em:
<http://www.mathworks.com/support/solutions/en/data/1-1RLBE2/?product=ML&solu
tion=1-1RLBE2> Acesso em: 17 out. 2013
Double-precision Floating-point Numbers. Disponível em:
<https://ece.uwaterloo.ca/~dwharder/NumericalAnalysis/02Numerics/Double/>
Acesso em: 17 out. 2013
getenv - Enviroment Variable. Disponível em:
<http://www.mathworks.com/help/matlab/ref/getenv.html> Acesso em: 17 out. 2013
getenv (Matlab function). Disponível em:
<http://help.scilab.org/docs/5.3.3/en_US/m2sci_getenv.html> Acesso em: 17 out.
2013
IEEE Double precision. Disponível em:
<http://www.princeton.edu/~achaney/tmve/wiki100k/docs/Double_precision.html>
Acesso em: 17 out. 2013
Manual MATLAB fo OpenVMS. Disponível em:
<http://www.iri.tudelft.nl/~sysdoc/MATLAB52/PDF_DOC/MATLAB/RN_VMS.PDF>
Acesso em: 17 out. 2013
MATLABCommands List. Disponível em:
<http://ctms.engin.umich.edu/CTMS/index.php?aux=Index_Commands> Acesso em:
17 out. 2013
OpenVMS. Disponível em: <http://www.openvms.org/> Acesso em: 17 out. 2013
Virtual Memory System. Disponível em:
<http://www.freebsd.org/doc/en/books/arch-handbook/vm.html> Acesso em: 17 out.
2013
VMS (Virtual Memory System). Disponível em:
<http://searchcio-midmarket.techtarget.com/definition/VMS> Acesso em: 17 out.
2013

Outros materiais