UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força...

50
UNIVERSIDADE CATÓLICA DE BRASÍLIA PRÓ-REITORIA DE GRADUAÇÃO TRABALHO DE CONCLUSÃO DE CURSO Curso de Física SOFTWARE VISUAL DAS ESTRUTURAS CRISTALINAS DOS SÓLIDOS EM TRÊS DIMENSÕES Autor: Flávio Ferreira de Aguiar Orientador: Dr. Paulo Eduardo de Brito BRASÍLIA 2006

Transcript of UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força...

Page 1: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

UNIVERSIDADE CATÓLICA DE

BRASÍLIA

PRÓ-REITORIA DE GRADUAÇÃO TRABALHO DE CONCLUSÃO DE CURSO

Curso de Física

SOFTWARE VISUAL DAS ESTRUTURAS CRISTALINAS DOS SÓLIDOS EM TRÊS

DIMENSÕES Autor: Flávio Ferreira de Aguiar

Orientador: Dr. Paulo Eduardo de Brito

BRASÍLIA 2006

Page 2: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

2

Flávio Ferreira de Aguiar

Software Visual das Estruturas Cristalinas dos Sólidos em Três Dimensões.

TRABALHO DE CONCLUSÃO DE CURSO APRESENTADO A UCB, SOB ORIENTAÇÃO DO PROF. Dr. PAULO EDUARDO DE BRITO.

Brasília-DF 2006

Page 3: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

3

SOFTWARE VISUAL DAS ESTRUTURAS CRISTALINAS DOS SÓLIDOS EM TRÊS

DIMENSÕES

RESUMO

Este trabalho tem como foco principal o desenvolvimento de um software visual das estruturas

cristalinas dos sólidos em três dimensões com intuitos didáticos. Para essa produção, o estudo da

linguagem de programação C foi constante, o que possibilitou a criação do software em OpenGl no

ambiente Linux. Esse estudo, aliado às leituras e ao aprendizado das características e propriedades

das estruturas cristalinas, forneceu subsídios para obter como produto final a visualização gráfica de

nove das catorze principais redes dos sólidos de Bravais. Como a preocupação a respeito dos cristais

e dos elétrons nos cristais estão entre as principais áreas de pesquisa do estudo da física de estados

sólidos, acredita-se que o software tornará acessível a observação e análise dessas estruturas.

Palavras-chave: software, estruturas cristalinas, OpenGl, sólidos de Bravais.

ABSTRACT

The mean goal of this work is to develop visual software which allows viewing the crystalline structures

of solids structure of crystal in three dimensions with didactic intentions. For this production, the study

of the programming language C it was constant, what it made possible the creation of the software in

OpenGl in the Linux environment. This study, ally to the readings and the learning of the

characteristics and properties of the crystalline structures, supplied subsidies to get as end item

(production) the graphical visualization of nine of fourteen main nets of solids of Bravais. As the

concern regarding crystals and of electrons in crystals they are between the main areas of research to

the study of the physics of solid states, giving credits that the software will become accessible the

comment and analysis of these structures.

Key-words: software, crystalline structures, OpenGl, solids of Bravais.

1 – INTRODUÇÃO

Page 4: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

4

O presente trabalho tem como objeto a criação de um software visual tomando por

base a interface gráfica Mesa, que é uma biblioteca de rotinas gráficas e de modelagem, bi

(2D) e tridimensional (3D), extremamente portável, rápida e gratuita. O Mesa, além de

fornecer desenhos de primitivas gráficas, tais como linhas e polígonos, dá suporte a

iluminação, colorização, mapeamento de textura, transparência, animação, entre muitos

outros efeitos especiais visando assim uma melhor visualização.

Para a construção do software, o sistema de gerenciamento de janelas foi feito pelas

bibliotecas GLUT (OpenGL Utility Toolkit) e GLU (OpenGL Utility library), que fornece várias

funções auxiliares, principalmente primitivas gráficas como superfícies quádricas e splines.

Esse software possibilita a produção das estruturas cristalinas dos sólidos em três

dimensões, com o objetivo de facilitar a visualização das principais redes de Bravais por

parte dos alunos e proporcionar um conhecimento melhor desses arranjos tridimensionais

periódicos de átomos.

As estruturas cristalinas dos sólidos em três dimensões são formadas a partir da

repetição de partículas (átomos e moléculas) no espaço, originando as principais redes com

grupos de átomos ligados a cada ponto. Essas estruturas resultam justamente da

associação desses átomos e moléculas, de modo que um seja perfeitamente equivalente a

outro e igualmente espaçados.

Existem catorze tipos diferentes de estruturas cristalinas básicas tridimensionais,

devido justamente à forma como esses átomos ou moléculas se posicionam, ou seja, estão

localizadas nas células unitárias, formando, assim, as redes de Bravais.

Dos catorze tipos de estruturas, foram construídos apenas nove que são as

tetragonais, trigonais e as ortorrômbicas, podendo essas ser visualizadas através do

software.

A pesquisa torna-se, então uma oportunidade de aprimoramento acadêmico em

campos que relacionam a física do estado sólido, propiciando um amadurecimento e

independência do aluno rumo às áreas de pesquisa científicas e a uma melhor formação

profissional.

2 - MATERIAIS E MÉTODOS

2.1 - HISTÓRIA DA CRISTALOGRAFIA

Até o fim do século XIX e início do século XX, uma série de informações a respeito

dos cristais havia sido acumulada, porém pouco conhecimento se tinha sobre os detalhes o

interior da estrutura atômica. Somente com o surgimento da mecânica quântica, no início do

século XX, é que se foi possível explicar os fenômenos que ocorrem em escala atômica.

Page 5: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

5

Em 1848, o cristalógrafo francês Bravais determinou matematicamente que esferas

poderiam ser arranjadas no espaço através de no máximo 14 arranjos, esses arranjos

ficaram conhecidos como os 14 sólidos de Bravais. Para ele os átomos seriam considerados

esferas perfeitas.

Já no século XX, para provar que esses arranjos formavam as estruturas cristalinas

dos materiais, era necessário usar um meio menor que o objeto estudado para captar

dados, pois se o meio fosse maior que o objeto, não teria sensibilidade para captar seus

detalhes. Assim:

“... para observarmos átomos não poderíamos usar a luz visível, já que os diâmetros atômicos são da ordem de angstrons (1Å ou10-10 m), com isso, estruturas cristalinas como a cúbica do NaCl (sal de cozinha) [figura 1], tem 5,64 Å de face, já a luz visível, apresenta uma faixa de comprimento de onda de 4000 (violeta) até 7000 (vermelho) Å. Ou seja, o menor comprimento de onda da luz visível é cerca de 800 vezes maior que uma aresta da estrutura cúbica do sal de cozinha. Assim, o uso de luz visível para uma observação direta da estrutura cristalina está completamente descartada.” (BARROS, 2001)

Figura 1: Estrutura do sal de cozinha, onde as esferas verdes são os átomos de cloro (Cl-) e as esferas cinza representam os átomos de sódio (Na+). (BARROS, 2001)

Com a utilização do raio-X para observar os átomos, verificou-se que devido o seu

comprimento de onda ser na faixa de 0,5 até 2,5 Å, a sua alta energia faria com que os

átomos interagissem com ele. Com isso, o físico alemão Von Laue propôs que núcleos

atômicos, por concentrar a massa dos átomos, poderiam difratar raios-X, formando franjas

de difração. Contudo, isso só seria possível se os átomos apresentassem uma estrutura

cristalina (estando organizados de forma periódica no espaço) e se os raios-X possuíssem

comprimento de onda menor que os espaços interatômicos. Assim, ele obteve em um filme

fotográfico, pontos sensibilizados devido à difração sofrida pelos raios-X após passarem por

uma amostra monocristalina.

Com esse resultado, os físicos ingleses W. H. Bragg e seu filho W. L. Bragg

formularam uma equação para determinar os ângulos onde estariam os picos de intensidade

Page 6: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

6

máxima de difração. Conhecendo as distâncias interatômicas, seria possível solucionar

problemas para determinar estruturas cristalinas. Assim, os Bragg obtiveram a estrutura do

NaCl.

A difração de raios-X contribuiu para demonstrar várias outras estruturas, auxiliando

também para propor a estrutura em dupla hélice do DNA, a qual pode ser verificada na

figura 2.

Figura 2: Padrão de difração de raios-X do DNA. (BARROS, 2001)

A partir da comprovação da natureza ondulatória do elétron, Knoll e Ruska criaram o

primeiro microscópio eletrônico do tipo transmissão, onde usavam elétrons para gerar

imagens. Nesse microscópio, um feixe de elétrons atravessa uma amostra muito fina,

interagindo com os átomos dessa amostra e por fim gera uma imagem numa placa pintada

com uma tinta fluorescente. O uso desse microscópio possibilitou a criação de uma figura de

difração de uma fase, possibilitando determinar a estrutura cristalina de cada fase

constituinte do material. No entanto, as imagens são geradas apenas em duas dimensões,

representando o interior do material, não sendo possível observar a superfície das amostras.

A solução para essa limitação do microscópio foi alcançada obtendo-se uma imagem

por varredura de elétrons. Nesse microscópio (de varredura), da figura 3, o feixe varre a

seção da amostra através de uma seqüência de linhas e não fica fixo como ocorre no

microscópio de transmissão.

Page 7: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

7

Figura 3: Imagem do primeiro microscópio de varredura na Universidade de Cambridge e a primeira imagem (amostra de alumínio utilizada). (BARROS, 2001)

Além da importância desses microscópios na caracterização dos materiais, através

da observação das estruturas que estavam inacessíveis pelo microscópio ótico, eles

possibilitam realizar a difração de elétrons, determinando a estrutura cristalina, visto que o

choque dos elétrons de alta energia contra os átomos da amostra resulta na geração de

raios-X, que saem em comprimentos de onda característicos de cada espécie atômica.

O microscópio eletrônico de varredura por ter uma grande distância focal, permite por

em foco imagens de uma superfície muito irregular e com isso pôde-se observar o aspecto

de peças fraturadas e determinar o motivo da quebra do material.

Em 1928, Orowan submetendo uma amostra monocristalina de zinco metálico a um

ensaio de tração, observou que a energia necessária para fraturar o material era muito

menor do que a prevista pelas energias de ligação. Com isso, surgiu uma série de hipóteses

de defeitos na estrutura cristalina dos materiais, fato diferente do que se conhecia, visto que

nessa época acreditava-se que um cristal apresentava uma estrutura perfeita, com átomos

organizados lado a lado sem nenhuma falha.

Devido a esse fato, em 1934, Orowan, simultaneamente a Taylor, propôs que “... a

estrutura cristalina não era perfeita, que ao longo dos planos atômicos empilhados poderiam

haver falhas. Essas falhas foram chamadas de discordâncias ou deslocações...” (BARROS,

2001)

Essa teoria da discordância se adaptava muito bem aos resultados obtidos na prática

para a deformação dos materiais, apesar de não ser muito aceita. Finalmente, em 1956,

Page 8: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

8

Bollmmann, Hirsch, Horne e Whelan observaram, pela primeira vez, uma discordância por

um microscópio eletrônico de transmissão. E com esse resultado verificou-se:

“... esses defeitos cristalinos regem a deformação dos metais, o empilhamento de defeitos implica no surgimento de uma região onde os átomos perdem suas ligações e que, consequentemente, resulta no surgimento e crescimento de trincas, ao mesmo tempo que o empilhamento dos defeitos provoca o endurecimento dos metais. O conhecimento de como esses defeitos se comportam, durante a deformação, permite determinar o processamento dos metais.” (BARROS, 2001)

Como exemplo tem-se o processo de estamparia, onde a porta do automóvel que era

originalmente uma chapa plana de aço apresenta um formato final ao colocá-la entre dois

moldes, prensando-a e impondo uma deformação pelo fechamento desses dois moldes.

O produto mais recente para observar a estrutura da matéria são os microscópios de

varredura por tunelamento, desenvolvido em 1981 por Binnig e Roher dos laboratórios da

IBM de Zurique. Esse instrumento torna quase mentiroso o conceito de que átomos não

podem ser observados.

“... No microscópio de tunelamento, uma agulha funciona como sonda varrendo a superfície de uma amostra condutora. Entre a sonda e a amostra é aplicada uma voltagem. Os elétrons da amostra deveriam permanecer nos átomos, mas pela mecânica quântica os elétrons podem "tunelar" da amostra para a sonda gerando uma diminuta corrente elétrica. Quando a sonda percorre paralelamente a superfície da amostra, as variações de corrente elétrica determinam as colinas e vales da superfície. A agulha assim consegue "enxergar" a topografia dos átomos. Para que esse equipamento possa ter uma resolução atômica, a agulha tem que ser tão fina que a espessura da ponta deve ser de um único átomo.” (BARROS, 2001)

Esse microscópio consegue gerar imagens somente em amostras condutoras de

eletricidade. Para amostras isolantes, foi desenvolvido, em 1986, o microscópio de força

atômica, onde são usadas as forças de repulsão entre os átomos. Assim, num microscópio

de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra,

sofre a ação de forças de repulsão. A agulha está apoiada sobre uma alavanca onde há um

espelho que reflete um feixe de laser, as variações do feixe refletido determinam os

movimentos da agulha e consequentemente o relevo da amostra, sendo possível perceber

desde a rugosidade e determinar o acabamento superficial, até determinar os primeiros

estágios de oxidação de metais.

Dentre as implicações tecnológicas encontradas na indústria eletrônica estão os

microprocessadores que são compostos por transistores impressos em placas de silício

metálico; na indústria metal/mecânica e na construção civil encontram-se materiais como:

novos tipos de aços mais confiáveis, a exemplo dos polímeros; ligas de alumínio; aços mais

resistentes; plásticos que não se deterioram rapidamente se tornando tintas resistentes e o

concreto.

Page 9: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

9

2.2 - A Estrutura Cristalina

Estrutura cristalina é a forma como átomos e moléculas, que constituem um sólido,

estão ordenados no espaço. Ela resulta da associação desses átomos e moléculas, de

modo que um seja perfeitamente equivalente a outro e igualmente espaçados.

“... Nos cristais mais simples, tais como o cobre, a prata, o ferro, o alumínio e os metais alcalinos, a unidade estrutural é representada por um único átomo. Em muitos cristais, a unidade estrutural é representada por um conjunto de átomos ou por um grupo de moléculas, até cerca de 100 para cristais inorgânicos e 10000 para cristais de certas proteínas. A estrutura de todos os cristais pode ser descrita em termos de uma rede com um grupo de átomos ligados a cada ponto dessa rede. Este grupo é denominado base; ele se repete no espaço para formar a estrutura cristalina.” (KITTEL, 1978, p. 3)

Existem bases de átomos que estão ligadas a cada ponto de rede, sendo cada uma

dessas bases idênticas em combinações, arranjo e orientação. A superposição de uma base

sobre cada ponto de uma rede, forma uma estrutura cristalina.

No caso dos gases inertes e da maioria dos metais, a base pode ser constituída por

um único átomo. Existem, porém estruturas cujas bases envolvem mais de 1000 átomos. A

posição do centro do átomo da base, em relação a um ponto da rede, é escrita como:

cbar ⋅+⋅+⋅= zyx (1)

onde : k,j,i === cba e x, y e z são as componentes do vetor r podendo variar no

intervalo de [0,1].

De maneira geral, a matéria sólida se apresenta sob dois estados fundamentais de

ordenação: o amorfo e o cristalino. Apenas o cristalino possui uma estrutura interna

ordenada, apresentando, consequentemente, estrutura cristalina.

Existem substâncias parcialmente cristalinas, que têm em sua composição, porções

de cristais introduzidos em material amorfo (é o caso da maioria das rochas). Alguns

materiais, aparentemente amorfos, podem ser cristalinos, como é o caso da areia de quartzo

(que é constituída por grande quantidade de pequenos cristais) ou das argilas (que

aparentam ser amorfas, mas são constituídas por cristais microscópicos).

“Um cristal ideal é composto por uma arrumação de átomos numa rede definida por três vetores fundamentais a, b, e c, de modo que as configurações atômicas sejam exatamente iguais tanto para um observador situado em um ponto r quanto para um observador situado num ponto r’ dado por: cbarr' wvu +++= (2) onde u, v, w são números inteiros arbitrários. O conjunto de pontos r’ especificados por (2) para todos os valores dos inteiros u, v, w defini uma rede. Uma rede é um agrupamento periódico regular de pontos no espaço. A rede definida deste modo é uma abstração matemática: a estrutura cristalina se forma somente quando houver uma base de átomos ligada a cada ponto da rede. A relação lógica é:

Rede + Base = Estrutura Cristalina

Page 10: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

10

Tanto a rede quanto os vetores de translação a, b, c são chamados de primitivos se as configurações forem as mesmas para dois pontos quaisquer r e r’ que sempre satisfaçam para uma escolha conveniente dos números inteiros u, v, w. Esta definição dos vetores de translação primitivos garante que não existe nenhuma célula com volume menor que possa servir de bloco elementar para a construção da estrutura. Freqüentemente usamos os vetores de translação primitivos para definir os eixos cristalinos, embora eixos cristalinos não primitivos possam ser usados quando estes forem mais simples. Os eixos cristalinos a, b, c formam três arestas adjacentes de um paralelepípedo; portanto, eles formam o paralelepípedo primitivo. Uma operação de translação da rede é definida como o deslocamento de um cristal paralelamente a si mesmo através de um vetor de translação do cristal dado por: cbat wvu ++= (3) Dois pontos arbitrários da rede podem ser ligados por um vetor dessa forma.” (KITTEL, 1978, p. 4).

Para uma dada estrutura, é possível existir mais de uma rede e, para uma dada rede,

é sempre possível escolher mais de um conjunto de eixos cristalinos. Não podemos

escolher a base sem antes selecionarmos a rede e os eixos que desejamos usar. Todos os

fenômenos funcionam do mesmo modo, desde que a base seja escolhida adequadamente,

para qualquer conjunto de eixos cristalinos escolhidos.

As operações de simetria de um cristal são as operações que transformam uma

estrutura cristalina nela própria. Estas operações incluem as operações de translação da

rede. Além destas, existem operações de rotação e de reflexão denominadas operações

pontuais. Em torno de certos pontos da rede ou em torno de certos pontos especiais no

interior de um paralelepípedo elementar, é possível aplicar rotações e reflexões que

transformam o cristal nele mesmo. Finalmente, existem operações compostas constituídas

por combinações de operações de translações com operações pontuais. Os livros-texto

sobre cristalografia são dedicados, em grande parte, á descrição das operações de simetria

de translação.

2.3 - Célula Unitária

A repetição no espaço de uma estrutura elementar, que constitui a menor subdivisão

de uma rede cristalina, conservando as características gerais da rede, é denominada célula

unitária. Gerando, assim, a formação de um sólido cristalino, conforme figura 4, a seguir:

Page 11: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

11

Figura 4: Célula unitária de um cristal de sal (NaCl). (ANGRENSE, 2006)

Os átomos presentes nas células unitárias estão dispostos de certa forma que

conhecendo suas coordenadas é possível descrever a estrutura cristalina. Porém, ao

colocar uma mesma substância sob condições de temperatura e pressão diferentes, ela se

cristaliza de formas diversas fazendo com que suas células unitárias sejam também

diferentes umas das outras, como é o caso do Carbono que se cristaliza nas formas de

diamante, grafite, entre outras.

Outros fatos que contribuem para o tamanho e a forma das células unitárias serem

diferentes são: a capacidade que um átomo de um elemento tem de se combinar com outro

(valência química), suas dimensões, entre outros.

Dessa forma, ao conhecer as células unitárias: “... e levando em conta os eixos de

simetria e a posição do centro geométrico de cada elemento do cristal, é possível descrever

qualquer cristal com base em diagramas designados por redes de Bravais, nome que

homenageia Auguste Bravais (1811-1863), um dos pioneiros do seu estudo.” (ANGRENSE,

2006)

Como dito anteriormente, a célula unitária pode ser bastante complexa, porém

qualquer cristal pode ser descrito pelas 14 redes cristalinas diferentes demonstradas por

Bravais.

Um cristal é, então, constituído pela repetição infinita de células unitárias

semelhantes e regulares que determinam a sua macro-estrutura, conforme figura 4.

As impurezas que constituem alguns cristais são responsáveis por determinar as

propriedades elétricas e óticas, a temperatura de fusão e a reatividade química desses

cristais, que são denominados naturais.

“O paralelepípedo definido pelos eixos primitivos a,b,c denomina-se célula primitiva. Uma célula primitiva é um tipo de célula unitária. A célula preencherá todo espaço pela ação de operações de translação convenientes: uma célula primitiva é uma célula de volume mínimo. Existem muitos modos de escolher eixos primitivos e a célula primitiva para uma dada rede. Para todas as escolhas, o número de átomos da base primitiva será o mesmo. Existe a

Page 12: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

12

densidade de um ponto da rede por célula primitiva. Existem pontos da rede nos oito vértices do paralelepípedo, porém cada vértice está ligado com oito células em torno do ponto. O volume de uma célula definida pelos eixos a,b,c de acordo com análise elementar, é: ⟩⋅×⟨= cbaVc (4)

A base associada com um ponto da rede de uma célula primitiva pode ser denominada base primitiva. Nenhuma base primitiva pode conter um número de átomos menor do que o número de átomos contido na base primitiva. Outro método para se escolher uma célula de igual volume Vc. A célula formada deste modo é conhecida pelos físicos como célula primitiva de Wigner-Seitz.” (KITTEL, 1978, p. 6)

2.4 - Sistemas cristalinos

Cada cristal possui um conjunto de elementos de simetria, dos quais só existem 32

combinações possíveis desses vários elementos. Esses 32 grupos pontos de simetria foram

chamados de classes de simetria ou classes cristalinas, que é o conjunto de cristais

diferentes que apresentam o mesmo grupo ponto de simetria.

As substâncias se enquadram nessas 32 classes de simetrias citadas e são

distribuídas em sete sistemas cristalinos sendo eles: Cúbico ou Isométrico, Hexagonal,

Romboédrica, Tetragonal, Ortorrômbico, Monoclínico, Triclínico.

Ao analisar geometricamente os sistemas de cristalização, concluí-se que existem

sete sistemas distintos, onde dentro de alguns deles possuem subcategorias devido aos

centros de simetria. Da combinação dos eixos e ângulos resultam os sete sistemas básicos

de cristalização citados anteriormente:

Cúbico, ou isométrico — fornece quatro eixos ternários de rotação, o que permite um

grande número de grupos espaciais (36). Produz estruturas simples e lineares e é

aquele em que, para além de todos os cristais possuírem quatro eixos ternários de

simetria, os eixos cristalográficos possuem comprimentos iguais e são

perpendiculares entre si.

Tetragonal — permite um eixo quaternário de rotação e 68 grupos espaciais (o maior

número possível em qualquer sistema). Todos os cristais deste sistema têm a

característica de possuírem, para além de um eixo quaternário de simetria, três eixos

cristalográficos perpendiculares entre si, sendo os dois horizontais de igual

comprimento e o vertical de comprimento diferente.

Ortorrômbico — requer três eixos binários de rotação ou um eixo de rotação binário e

dois planos de imagem reflexa. Permite 59 grupos espaciais. Produz estruturas de

grande complexidade tendo como característica comum a todos os cristais deste

sistema, a de apresentarem ao menos um eixo binário de simetria. Possuem três

eixos cristalográficos perpendiculares entre si, todos com comprimentos diferentes.

Hexagonal — permite um eixo de rotação senário e 27 grupos espaciais, mas é

considerado por vezes como mera variante do sistema trigonal (por duplicação).

Page 13: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

13

Neste sistema todos os cristais possuem ou um eixo ternário de simetria, ou um eixo

senário (eixo de ordem seis) de simetria. Possuem quatro eixos cristalográficos, dos

quais três são horizontais, com comprimentos iguais e cruzando-se em ângulos de

120°, e o quarto é o vertical, com comprimento diferente dos demais.

Romboédrico, ou trigonal — requer um eixo ternário de rotação, permitindo 25

grupos espaciais.

Monoclínico — requer um eixo de rotação binário e um plano reflexo. Permite 13

grupos espaciais. Os cristais deste sistema em geral apresentam apenas um eixo de

simetria binário, ou um único plano de simetria, ou a combinação de ambos.

Possuem três eixos cristalográficos, todos com comprimentos diferentes. Dois eixos

formam um ângulo oblíquo entre si, sendo o terceiro perpendicular ao plano formado

pelos outros dois.

Triclínico — agrupa todos os casos que não podem ser acomodados em qualquer

dos restantes sistemas, exibindo apenas simetria translacional ou inversão. Permite

apenas 2 grupos espaciais. Os cristais com este sistema caracterizam-se pela

ausência de eixos ou planos de simetria, apresentando três eixos cristalográficos

com comprimentos desiguais e oblíquos entre si.

“Uma análise do grau de simetria de cada um dos sistemas acima apontados permite concluir que o mais simples, e o mais simétrico, é o cúbico, já que apresenta a simetria do cubo, beneficiando da isometria das suas faces. Os restantes seis sistemas ordenam-se de acordo com as seguintes seqüências decrescente de simetria: hexagonal, tetragonal, romboédrico, ortorrômbico, monoclínico e triclínico.” (ANGRENSE, 2006) O sistema hexagonal é frequentemente considerado como sendo uma variante do

sistema trigonal, já que é possível, sem alterar as simetrias, a partir de um produzir o outro.

Os átomos, moléculas se posicionam na rede originando a estrutura cristalina. A

partir dessas disposições, obtêm-se as seguintes variáveis:

2.5 - Sistemas de cristalização

“Apesar da sua enorme diversidade, os cristais, dependendo da composição e condições de formação, assumem formas regulares e hoje facilmente dedutíveis em função das características atômicas e moleculares dos seus constituintes. Isso permite a sua fácil classificação em função de um número reduzido de parâmetros, conhecidos por parâmetros de rede.” (ANGRENSE, 2006) A partir desses parâmetros: “... é possível determinar o paralelepípedo que constitui

a menor subdivisão de uma rede cristalina que conserve as características gerais de todo o

retículo, de modo que por simples multiplicação da mesma, se possa reconstruir o sólido

cristalino completo. Esses paralelepípedos são em geral designados por células unitárias...”

(ANGRENSE, 2006)

Page 14: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

14

É possível identificar sistemas de cristalização, que são grupos pontuais da malha

cristalina, ou sistemas cristalinos básicos, a partir dos parâmetros da rede, isto é, do

comprimento dos lados e dos eixos do paralelepípedo elementar da célula unitária e dos

ângulos que as suas faces formam entre si.

“Em duas dimensões, os grupos pontuais estão associados com cinco tipos diferentes de redes. Em três dimensões, os grupos de simetrias pontuais necessitam de 14 tipos diferentes de redes que estão listadas na tabela 1.” (KITTEL, 1978, p. 12)

Tabela 1: Os 14 tipos de redes em três dimensões. Sistema Número de

redes Símbolos da

rede Restrições para célula

convencional, para os eixos e para ângulos

Triclínico 1 P cba ≠≠ γ≠β≠α

Monoclínico 2 P, C cba ≠≠ β≠=γ=α o90

Ortorrômbico 4 P, C, I, F cba ≠≠ o90=γ=β=α

Tetragonal 2 P, I cba ≠= o90=γ=β=α

Cúbico 3 P ou sc cba == I ou bcc o90=γ=β=α F ou fcc

Trigonal 1 R cba == ooo 90120;90 ≠<γ=β=α

Hexagonal 1 P cba ≠= o90=β=α o120=γ

Figura 5: Eixos cristalinos a, b e c. O ângulo α é o que está compreendido entre b e c.

“O tipo geral de rede é a rede triclínica. Os 14 tipos de redes estão convenientemente grupados em sete sistemas cristalinos de acordo com os setes tipos convencionais de células unitárias: triclínico, monoclínico, ortorrômbico, tetragonal, cúbico, trigonal e hexagonal. A divisão em sistemas está resumida em termos das relações axiais especiais para as células unitárias convencionais. Os eixos a, b, c e os ângulos γβα ,, . Os módulos

cba ,, denominam-se parâmetros da rede. As células primitivas. Às vezes, uma célula primitiva não possui uma relação mais óbvia com os elementos de simetria pontuais do que uma célula primitiva.” (KITTEL, 1978, p. 12)

Page 15: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

15

No sistema cúbico existem três redes: a rede cúbica simples (sc), a rede cúbica de

corpo centrado (bcc) e a rede cúbica de face centrada (fcc). As características destas redes

cúbicas estão resumidas na tabela 1. As células primitivas contêm somente um ponto da

rede, porém as células cúbicas convencionais contêm dois pontos da rede (bcc) ou quatro

pontos da rede (fcc). As posições de um ponto na célula são especificadas por (1) em

termos das coordenadas atômicas x, y, z cujos valores são frações dos comprimentos axiais

a, b e c, na direção da respectiva coordenada, sendo a origem o vértice da célula. Portanto,

as coordenadas do centro do corpo da célula são (1,1,1). Os centros das faces possuem

coordenadas (1,1,0); (0,1,1); (1,0,1). As coordenadas dos átomos nas redes fcc e bcc são

dadas normalmente em termos da célula cúbica convencional.

No sistema hexagonal, a célula convencional escolhida está sobre um prisma reto

tendo na base três losangos com ângulos de 60°, sendo essa uma rede primitiva.

2.6 - Redes de Bravais

Essas redes são uma homenagem a Auguste Bravais que demonstrou a sua

existência em 1848.

Combinando os sete sistemas cristalinos, que resultam das diferentes agrupações

relativas ao tamanho das arestas das células unitárias e dos seus ângulos localizados nos

vértices, com as distintas disposições espaciais das partículas nas faces e no interior das

células unitárias é possível criar 28 estruturas cristalinas. Porém, devido à simetria das

soluções, identifica-se apenas 14 tipos diferentes de estruturas cristalinas básicas

tridimensionais, devido justamente à forma como as partículas (átomos ou moléculas) se

posicionam, ou seja, estão localizadas nas células unitárias, formando, assim, as redes de

Bravais.

A partir das 14 estrututras cristalinas básicas, é possível criar as outras 28

existentes.

Com isso, um arranjo espacial, para ser classificado como uma rede de Bravais deve

obedecer em conjunto às seguintes condições:

1. A estrutura deve ser constituída por uma célula unitária;

2. Os planos que contenham pontos situados em faces opostas devem ser paralelos;

3. As arestas da célula unitária devem ligar pontos equivalentes na estrutura.

As células unitárias possuem características diferentes, sendo possível diferenciá-las

umas das outras e por causa delas define-se as propriedades dos materiais.

Page 16: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

16

A rede de Bravais é um conjunto infinito de pontos discretos, com orientações e

arranjos idênticos, independente do ponto do espaço em que se observa a rede. A partir dos

vetores base, que são um conjunto de vetores, é feita uma translação de um único ponto em

pequenos intervalos, construindo esse pontos que formam a rede.

Ao transladar cada um dos 14 tipos de células unitárias formadas a partir dos grupos

de simetrias pontuais, presentes na tabela 1, por todo o espaço se originarão redes

distintas. Quando átomos são colocados em coordenadas específicas dessas redes, serão

formadas estruturas cristalinas, conhecidas como redes de Bravais. A figura 6 ilustra um

desses exemplos. A simetria que dará origem à estrutura cristalina poderá ser mais

complexa que a simetria da rede, pois ao posicionar os átomos deve-se preencher todo o

espaço da rede de forma contínua.

Figura 6: Esquema de uma célula unitária, mostrando as arestas e ângulos

caracterizadores.(ANGRENSE, 2006)

Para além da sua utilização em cristalografia, as redes de Bravais constituem uma

importante ferramenta de análise tridimensional em geometria euclidiana.

2.7 - Classificação das redes de Bravais

O sistema de classificação das redes de Bravais, construídas a partir das células

unitárias, mais comum é o apresentado na figura 7 seguinte:

Page 17: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

17

Figura 7: Os 14 tipos diferentes de células unitárias, conhecidas como Redes de Bravais.

(ANGRENSE, 2006)

Muitos ainda consideram a 15ª rede de Bravais como sendo a estrutura hexagonal

compacta, que possui três pontos reticulares no interior do hexágono, resultando uma célula

unitária mais complexa. Sendo este um caso especial.

3 - SOFTWARE VISUAL

O primeiro passo para o desenvolvimento do projeto foi estudar a API (aplication

program interface) Opengl, a qual seria utilizada na confecção do software, sendo

necessário para isso ter como pré-requisito o conhecimento da linguagem de programação

C.

A maior dificuldade dessa etapa inicial foi a de encontrar bibliografias relacionadas ao

tema proposto, visto que grande parte dos livros estavam escritos em inglês.

Algumas limitações surgiram ao começar o software, pois a biblioteca Opengl não era

disponibilizada e quando instalada gerava incompatibilidades com a grande maioria das

versões de Linux. Para remediar essa questão, foi imprescindível a instalação e

desinstalação de versões do Linux como o Curumim e o Fedora, onde, por fim, encontrou-se

o Opengl no Conectiva.

Para otimizar a criação do software foi preciso tomar melhor conhecimento sobre a

física do estado sólido, e mais especificamente sobre as estruturas cristalinas.

Page 18: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

18

Consequentemente, por meio dos livros estudados, verificaram-se algumas dificuldades

para desenvolver o software com as 14 redes cristalinas dos sólidos, chamadas também de

redes de Bravais.

A fim de obter a translação de vetores bases foi necessário criar uma rede de pontos

que pode ser visualizada na figura 8.

Figura 8: Redes de pontos criadas para transladar os vetores bases.

Transladando o vetor unitário,

)zyx( cbar ++= (5)

onde:

k

j

i

=

=

=

c

b

a

(6)

por todos os pontos construiu-se a rede mais simples (figura 9), que seria utilizada como

base para as formações das demais através da mudança do vetor unitário. Nessa rede

cúbica foram implementadas várias ferramentas disponibilizadas pelo Opengl, como a de

controlar a posição da “câmera”, rotacionar e transladar o objeto utilizando o teclado, além

da função de redimensionamento da janela em caso de minimização ou maximização da

mesma evitando, assim, distorções no desenho.

Page 19: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

19

Figura 9: Rede mais simples construída, utilizada como referência para a construção das próximas.

Na confecção do programa efetivou-se a utilização de alguns periféricos como o mouse

e o teclado, que facilitariam na visualização das estruturas cristalinas, onde através do

teclado pode-se girar e mudar a posição da molécula na janela e através de um clique no

botão esquerdo ocorre a aproximação do objeto.

Foi feito também o estudo dos vetores bases a, b e c, das estruturas de corpo centrado

(bcc) e de face centrada (fcc) que podem ser representadas respectivamente pelos vetores:

Vetores Base da estrutura bcc:

2)kji(

2)kji(

2)kji(

+−=

++−=

−+=

c

b

a

(7)

Vetores Base da estrutura fcc:

2)ik(

2)kj(

2)ji(

+=

+=

+=

c

b

a

(8)

os quais deram origem às demais estruturas, onde ao serem executados no programa,

resultou um problema ao gerar as linhas que iriam unir os vários átomos que compõem

essas estruturas desejadas.

Page 20: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

20

Outra dificuldade encontrada para concluir o trabalho foi na construção das demais

moléculas, sendo indispensável mudar a metodologia utilizada, visto que houve problema na

sua visualização, a partir da translação de vetores bases por toda a extensão da rede. Esse

fato sobreveio devido ao surgimento de átomos que ficavam fora da estrutura a ser

visualizada (figura 10). Dessa forma, ao fixar as regras para obter o desaparecimento

desses átomos ocorreu um aumento no tempo de processamento em conseqüência da

extensão do programa. Com isso, a metodologia inicial foi descartada.

Figura 10: Problemas na construção do programa, onde alguns átomos ficaram fora das estruturas

fcc e bcc, respectivamente, a serem visualizadas.

O novo método utilizado na confecção das estruturas foi delimitar pontos e

posteriormente ligá-los por linhas, dispondo a primeira estrutura. Assim, a construção da

Page 21: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

21

rede ocorreu com a translação da molécula base em x, y e z, auxiliando a visualização das

estruturas.

Foi efetivada também no programa a entrada do parâmetro “estrutura a ser visualizada”,

assim como a escolha de teclas consecutivas para a rotação e translação da rede cristalina

na tela e ainda elaborou-se um manual para que o usuário não tenha dúvidas na utilização

do software.

Houve uma mudança no projeto pensado inicialmente, pois não mais seria necessário

desenhar as estruturas que possuíam como parâmetros de entrada os ângulos menores ou

maiores que os ângulos retos nos planos xy, yz e xz. Isso ocorreu principalmente devido a

grande quantidade de parâmetros que o programa já possuía. Como resultados serão

apresentados nove estruturas cristalinas, sendo elas cúbicas (figuras 11, 12, 13),

ortorrômbicas (figuras 14, 15, 16, 17) e tetragonais (figuras 18, 19).

Como o programa foi executado no Linux, foi essencial a criação de um executável para

a utilização do software no Windows.

Figura 11: Estrutura Cúbica P, obtida a partir do comando:final 1 1

Page 22: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

22

A rede de Bravais mais simples em três dimensões é a rede cúbica simples do

português conhecida como cs ou sc do inglês (simple cubic), Nessa rede todos os

pontos reticulares estão localizados nos vértices do paralelepípedo que constitui a

célula. Produz estruturas simples e lineares e é aquele em que, para além de todos os

cristais possuírem quatro eixos ternários de simetria, os eixos cristalográficos possuem

comprimentos iguais e são perpendiculares entre si. Na natureza apenas o polônio (Po)

se cristaliza com essa estrutura a pressão ambiente.

Figura 12: Estrutura Cúbica F, obtida a partir do comando:final 2 1

Esse tipo de rede de Bravais é conhecida como cúbica de face centrada do

português CFC ou FCC do inglês (Face-centered cubic) ela apresenta pontos reticulares nas

faces para além dos localizados nos vértices. Assim como na cúbica simples ela produz

estruturas simples e lineares e é aquele em que, para além de todos os cristais possuírem

quatro eixos ternários de simetria, os eixos cristalográficos possuem comprimentos iguais e

são perpendiculares entre si.

Page 23: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

23

Figura 13: Estrutura Cúbica I, obtida a partir do comando:final 3 1.

Esse tipo de rede de Bravais é conhecida como cúbica de corpo centrado do

português CCC ou BCC do inglês (Body-centered cubic). Ela apresenta além dos pontos

que determinam os vértices, um ponto reticular no centro da célula. Assim como na cúbica

simples ela produz estruturas simples e lineares e é aquele em que, para além de todos os

cristais possuírem quatro eixos ternários de simetria, os eixos cristalográficos possuem

comprimentos iguais e são perpendiculares entre si.

Page 24: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

24

Figura 14: Estrutura Ortorrômbica P, obtida a partir do comando: final 4 1

Essa rede de Bravais é conhecida como rede ortorrômbica simples, também

denominada de ortorrômbica P. Nessa rede todos os pontos reticulares estão localizados

nos vértices do paralelepípedo que constitui a célula. Produz estruturas de grande

complexidade tendo como característica comum a todos os cristais deste sistema, a de

apresentarem ao menos um eixo binário de simetria. Possuem três eixos cristalográficos

perpendiculares entre si, todos com comprimentos diferentes.

Page 25: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

25

Figura 15: Estrutura Ortorrômbica C, obtida a partir do comando: final 5 1

Esse tipo de rede de Bravais é conhecida como ortorrômbica C. Ela apresenta

somente pontos reticulares nas bases. Assim como na ortorrômbica simples ela produz

estruturas de grande complexidade tendo como característica comum a todos os cristais

desse sistema, a de apresentarem ao menos um eixo binário de simetria. Possuem três

eixos cristalográficos perpendiculares entre si, todos com comprimentos diferentes.

Page 26: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

26

Figura 16: Estrutura Ortorrômbica I, obtida a partir do comando:final 6 1

Esse tipo de rede de Bravais é conhecida como ortorrômbica de corpo centrado,

também chamada de ortorrômbica I. Ela apresenta além dos pontos que determinam os

vértices, um ponto reticular no centro da célula. Assim como na ortorrômbica simples ela

produz estruturas de grande complexidade tendo como característica comum a todos os

cristais deste sistema, a de apresentarem ao menos um eixo binário de simetria. Possuem

três eixos cristalográficos perpendiculares entre si, todos com comprimentos diferentes.

Page 27: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

27

Figura 17: Estrutura Ortorrômbica F, obtida a partir do comando:final 7 1

Esse tipo de rede de Bravais é conhecida como Ortorrômbica de face centrada,

sendo também denominada ortorrômbica F. Ela apresenta pontos reticulares nas faces para

além dos localizados nos vértices. Assim como na ortorrômbica simples e de corpo centrado

ela produz estruturas de grande complexidade, tendo como característica comum a todos os

cristais desse sistema, a de apresentarem, ao menos, um eixo binário de simetria. Possuem

três eixos cristalográficos perpendiculares entre si, todos com comprimentos diferentes.

Page 28: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

28

Figura 18: Estrutura Tetragonal P, obtida a partir do comando: final 8 1

Essa rede de Bravais é conhecida como rede tetragonal simples também chamada

de tetragonal P. Nessa rede todos os pontos reticulares estão localizados nos vértices do

paralelepípedo que constitui a célula. Todos os cristais desse sistema têm a característica

de possuírem, para além de um eixo quaternário de simetria, três eixos cristalográficos

perpendiculares entre si, sendo os dois horizontais de igual comprimento e o vertical de

comprimento diferente.

Page 29: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

29

Figura 19: Estrutura Tetragonal I, obtida a partir do comando: final 9 1

Esse tipo de rede de Bravais é conhecida como tetragonal de corpo centrado podendo

também ser denominada tetragonal I. Ela apresenta além dos pontos que determinam os

vértices, um ponto reticular no centro da célula. Todos os cristais deste sistema têm a

característica de possuírem, para além de um eixo quaternário de simetria, três eixos

cristalográficos perpendiculares entre si, sendo os dois horizontais de mesmo comprimento

e o vertical de comprimento diferente.

4 – CONCLUSÃO

O software foi criado com sucesso, porém em conseqüência do aumento na

quantidade de parâmetros do programa tornou-se inviável a construção de cinco das catorze

redes que representam as estruturas cristalinas dos sólidos em três dimensões.

Assim ocorreu apenas a criação de nove estruturas, que possuíam como

característica principal o fato de se tratarem de estruturas simples e lineares com os eixos

Page 30: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

30

cristalográficos perpendiculares entre si, sendo elas pertencentes aos sistemas cristalinos

cúbico, tetragonal e ortorrômbico.

Durante a confecção do software houve uma mudança de metodologia, pois os

resultados obtidos não haviam sido satisfatórios, e também pela extensão do programa, o

que estava gerando um aumento no tempo de processamento. Com isso, verificou-se que

construindo uma célula unitária e transladando a mesma nos eixos obtinha-se bons

resultados, além de uma melhor performance do programa.

O Software foi produzido em ambiente Linux, utilizando a linguagem C e a biblioteca

MESA, sendo necessária, com isso, a criação de um executável para que o software fosse

visualizado também em ambiente Windows.

A fim de que o usuário não encontrasse dificuldades em utilizar o software, devido

essencialmente à existência dos parâmetros de entrada – os quais devem ser inseridos

através de uma linha de comando executada no Prompt de Comando – foi criado um

manual para auxiliá-lo quanto à utilização do mouse e do teclado na realização da

translação, rotação e aproximação da estrutura.

O executável inviabilizou a possibilidade de deixar o software visual disponível na

internet. Assim a próxima etapa do projeto seria a criação de um applet, que seria feito

através da linguagem de programação JAVA, facilitando a utilização do software por parte

do usuário, visto que se pode criar botões e caixas de opções, auxiliando na mudança dos

parâmetros.

5 – AGRADECIMENTOS

Gostaria de agradecer inicialmente a Deus, pois sem ele não conseguiria as forças

necessárias para superar os momentos difíceis que surgiram na busca por esse objetivo.

Não podendo esquecer da minha família que apesar de todas as dificuldades financeiras

encontradas nesse período nunca deixou que eu desistisse de alcançar esse sonho; a

minha namorada Juliana que sempre esteve junto comigo nos momentos bons e ruins; aos

colegas do M-226, onde não posso esquecer de citar o amigo e parceiro de Iniciação

Cientifica, Eduardo Xavier Seimetz, o qual devido ao maior tempo de convivência se tornou

uma espécie de irmão. E finalmente ao Prof. Dr. Paulo Eduardo de Brito que me orientou

não apenas nesse trabalho de conclusão de curso, mas também em dois outros projetos de

iniciação científica. Com ele pude compreender muitos fenômenos físicos interessantes,

porém o seu principal ensinamento que ficou demonstrado através das suas ações e pode

ser traduzido em uma frase de Albert Einstein, que dizia o seguinte: “trabalhe com aquilo

que você gosta que o seu trabalho se tornará uma diversão”.

Page 31: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

31

6 – REFERÊNCIAS BIBLIOGRÁFICAS

BARROS, Alexandre. Quântica e a Ciência dos Materiais. Disponível em: <http://www.comciencia.br/reportagens/fisica/fisica12.htm>. Acesso em: 13 ago. 2005. BRITO JÚNIOR, Agostinho de Medeiros. Introdução à computação gráfica com OpenGL. Disponível em: <www.dca.ufrn.br/~ambj/opengl>. Acesso em: 27 jun. 2005. FAZZIO, Adalberto. Disponível em: <http://macbeth.if.usp.br/~fazzio/Aula02-B.ppt#466,4,Slide 4>. Acesso em: 20 jul. 2005. GAELZER, Rudi. Física do Estado Sólido. Disponível em: <http://minerva.ufpel.edu.br/~rudi/grad/EsMa/Apostila/CapIV.pdf>. Acesso em: 16 jul. 2005. HINKEL, N.; ROCHA, Sebastião; ANGRENSE. Estrutura Cristalina. Disponível em: <http://pt.wikipedia.org/wiki/Estrutura_cristalina#Grupos_pontuais_e_espaciais>. Acesso em: 25 ago. 2005. ______. Rede de Bravais. Disponível em: <http://pt.wikipedia.org/wiki/Redes_de_Bravais>. Acesso em: 25 ago. 2005. KITTEL, C. Introdução à Física do Estado Sólido. 5. ed. Rio de Janeiro: Guanabara Dois S. A., 1978, 1: 3-34. MANSSOUR, Isabel Harb. Introdução à OpenGl. Disponível em: <http://www.inf.pucrs.br/~manssour/OpenGL/>. Acesso em: 11 mai. 2005. MARTINS, Daniel. et al. Programa de Aprimoramento Discente em Modelagem Geométrica. Disponível em: <www.mat.ufmg.br/padmod/cursodeopengl.htm>. Acesso em: 27 jun. 2005. TIPLER, Paul A.; LIEWELLYN, Ralph A. Física Moderna. Rio de Janeiro: LTC Livros Técnicos e Científicos Editora S.A., 2000, 10: 287-293. Tutorial de OpenGl. Disponível em: <www.ingleza.com.br/opengl>. Acesso em: 26 jun. 2005. WRIGHT, Richard S. Jr.; SWEET, Michael. OpenGL SuperBible. 2nd ed. Indiana: Waite Group Press, 2000. 696 p.

Page 32: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

32

ANEXOS

Page 33: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

33

Anexo I : Manual do Software Visual das Estruturas Cristalinas dos Sólidos em Três Dimensões Pré-requisitos

• Arquivo glut32.dll na pasta: C:\WINDOWS\system Será necessário fazer o download do arquivo contido no disket em anexo:

• final.exe Obs:Ao fazer download do arquivo verificar local de gravação: Ex: c:\tcc Inicialmente será necessário abrir o prompt de comando, o que poderá ser feito de duas formas: 1 - Assim para executar o programa será necessário clicar no botão iniciar do Windows e ir na opção executar: 1.1 - No campo abrir, digite cmd e clique no botão “OK” Uma outra forma seria: 2-Clicar com o botão esquerdo do mouse nos botão iniciar do Windows e em seguida nos link programas→acessórios→prompt de comando, conforme a figura abaixo:

Page 34: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

34

3 – Com isso, abrirá o Prompt de comando

Page 35: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

35

4 - Entre no diretório onde o arquivo final.exe se encontra. digitando o seguinte comando: 4.1-Se o arquivo estiver no c: cd\pasta Exemplo:o arquivo se encontra no diretório c: na pasta tcc cd\tcc e logo após tecle “ENTER”; 4.2-Caso o arquivo final.exe se encontre em outro diretório: Diretório: cd pasta Exemplo: O arquivo final.exe se encontra no diretório a: na pasta tcc a: e logo após tecle “ENTER”; cd tcc e logo após tecle “ENTER”; 5 - Para verificar se os arquivos realmente estão na pasta digite o comando: dir e logo após tecle “ENTER”; 6 - Se aparecer o arquivo final.exe é só digitar o comando: final a b →→→→ onde a e b são parâmetros do programa, que estão definidos nos exemplos abaixo:

• O parâmetro ‘a’ define a estrutura a ser visualizada:

a Estrutura a ser visualizada 1 Cúbica Simples 2 Cúbica de Face Centrada 3 Cúbica de Corpo Centrado 4 Ortorrômbica Simples 5 Ortorrômbica C 6 Ortorrômbica de Corpo Centrado 7 Ortorrômbica de Face Centrada 8 Tetragonal Simples 9 Tetragonal de Corpo Centrado

• O parâmetro ‘b’ define o tamanho da estrutura a ser visualizada:

Tamanho da estrutura = b² Exemplo: Para b=2 Tamanho da estrutura = 2² = 4(células unitárias) Após o usuário ter escolhido os parâmetros desejados, conforme o exemplo: final 3 2, tecle “ENTER”. E com isso será visualizada a seguinte tela:

Page 36: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

36

Funcionalidades do mouse e do teclado

- Rotação no eixo z

- Rotação no eixo x

- Rotação no eixo y

- Translação no eixo z

- Translação no eixo x

- Translação no eixo y

Aproximação da câmera ao objeto.

- Fecha o programa - Volta para a condição inicial

Page 37: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

37

Anexo II : Algoritmo: Software visual das estruturas cristalinas dos sólidos em três dimensões. //1-Comandos para criar uma janela: int main(int argc, char** argv) { if (argc>1) opcao = atoi(argv[1]); /*Parâmetro que irá definir a estrutura a ser visualizada*/ if (argc>2) n = atoi(argv[2]); /*Parâmetro que irá definir o tamanho da rede*/ glutInit(&argc, argv); /*Iniciar a biblioteca GLUT*/ glutInitDisplayMode (GLUT_SINGLE | GLUT_RGB ); /*Iniciar os padrões de cores*/ glutInitWindowSize(largura,altura); /*Tamanho da Janela*/ glutinitWindowPosition(posição X,posição Y); /* Posição da Janela*/ glutCreateWindow(“ESTRUTURA CRISTALINA”); /*Cria a Janela*/ glutKeyboardFunc(teclado); /*Chama a função Keyboard*/ glutMouseFunc(mouse); /*Chama a função Mouse*/ init (); /*Chama a função init()*/ glutDisplayFunc(objeto); /*Chama a função Display*/ glutReshapeFunc(reshape); /*Chama a função Reshape*/ glutMainLoop(); return 0; } void objeto(void) { //2-Criar um espaço de Visualização glMatrixMode(GL_PROJECTION); /*Define qual matrix será alterada daí para a frente sendo a projection indicada para definir o volume de visualização*/ glLoadIdentity(); /*Serve para transformar a atual pilhas de matrix em identidade*/ gluPerspective(angulo,distorção,perto, longe); /*Define o volume de visualização com a forma de um tronco de pirâmide sendo os parâmetros de entrada*/ glMatrixMode(GL_MODELVIEW); /*Define qual matrix será alterada daí para a frente sendo a modelview indicada para o desenho e posicionamento da câmara*/ glLoadIdentity(); /*Serve para transformar a atual pilhas de matrix em identidade*/ glClear(GL_COLOR_BUFFER_BIT); /*Limpa o fundo da janela*/ gluLookAt(posição da câmera (olhox, olhoy, olhoz); objeto (pontox, pontoy, pontoz); normal a câmera (normalx, normaly, normalz)); /*Define aonde a câmera estará e para onde ela estará apontando*/ //4-Criando a figura glBegin(parametro); /*Inicializa a construção da figura ,Esse parâmetro ira definir quais tipos de primitivas que serão desenhadas exemplos:GL_POINTS,GL_LINES,GL_QUADS,GL_TRIANGLE,GL_POLYGON*/ glColor3f(vermelho,verde,azul); /*Seletor de cores do sistema de desenho*/ glVertex3f(posição x,posição y, posição z);/*Recebe os vértices que irão determinar a estrutura*/ glEnd(); /*Finaliza a construção da figura*/ } //5-Define as funções que serão realizadas pelo mouse. Void mouse() { switch(tecla) { case GLUT_LEFT_BUTON: /*Definindo uma função para o botão esquerdo do mouse*/ if (estado==GLUT_DOWN) /*Definindo o estado “acionado” especifico para o botão*/ função qualquer; /*Função relaçionada ao acionamento da tecla*/ glutPostRedisplay(); /*A cena será redesenhada através dessa função*/ break; default: break;

Page 38: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

38

} } //6-Define as funções que serão realizadas pelo teclado. void teclado(unsigned char tecla, int x , int y) { switch(tecla) { case ’x’ /*Definindo uma função para a tecla ‘x’ do teclado*/ função qualquer; /*A função relaçionada ao acionamento da tecla*/ glutPostRedisplay(); /*Função responsável por redesenhar a cena*/ break; default; break; } } void reshape(int x , int y) { glViewport(0,0,x,y); /*Define onde na tela será redenrizada a imagem*/ glMatrixMode(GL_PROJECTION); /*Define qual matrix será alterada daí para a frente sendo a projection indicada para definir o volume de visualização*/ glLoadIdentity(); /*Serve para transformar a atual pilhas de matrix em identidade*/ }

Page 39: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

39

Anexo III : Programa: final.c //Define as bibliotecas utilizadas no programa #include <stdio.h> #include <stdlib.h> //#include <GL/glu.h> #include <GL/glut.h> #include <math.h> #include "nrutil.h" #include "nrutil.c" #include "estrutura.c" #define pi 3.1415926535897932385 //Define as constantes e as variáveis iniciais utilizadas no programa GLint i,j,k,opcao=1; GLint alfa=pi/2,beta=pi/2,gama=pi/2; GLint n=2,cam,mudaCurva=0,altura,largura; GLfloat angulo,fAspect,thetax=0,thetay=0,thetaz=0,vx=0,vy=0,vz=0; //Função inicio, que define alguns parâmetros para determinar as condições iniciais, como: void init(void) { //Define as parâmetros que serão utilizados na definição da propriedade da luz GLfloat ambiente[] ={ 0.2, 0.2, 0.2, 1.0 }; GLfloat difusa[] ={ 0.7, 0.7, 0.7, 1.0 }; GLfloat especular[] ={ 1.0, 1.0, 1.0, 1.0 }; // GLfloat posicao[] = { 0.0, 3.0, 2.0, 0.0 }; GLfloat posicao[] = { 0.0, 3.0, 3.0, 0.0 }; //Define a cor utilizada no fundo da janela de visualização glClearColor (0.0, 0.0, 0.0, 0.0); glEnable(GL_DEPTH_TEST); glShadeModel(GL_SMOOTH); //Define as propriedades da luz glLightfv(GL_LIGHT0,GL_AMBIENT,ambiente); glLightfv(GL_LIGHT0,GL_POSITION,posicao); glLightfv(GL_LIGHT0,GL_DIFFUSE,difusa); glLightfv(GL_LIGHT0,GL_SPECULAR,especular); //Habilita a luz glEnable(GL_LIGHTING); glEnable(GL_LIGHT0); //Habilita a cor do material glEnable(GL_COLOR_MATERIAL); fAspect=1; cam=8.0; angulo=45; thetax=0;thetay=0;thetaz=0; vx=0;vy=0;vz=0; } //Função objeto, define as características do objeto void objeto(void) { //Definição dos parâmetros que serão utilizados no Contador que ira definir o objeto int i,j,k; //Define os parâmetros que serão utilizados na definição da propriedade do material GLfloat mdifusa[]={0.7,0.7,0.7,1.0}; GLfloat mambiente[]={0.2,0.2,0.2,1.0}; GLfloat mbrilho=20.0;

Page 40: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

40

GLfloat mespecular[]={1.0,1.0,1.0,1.0}; //Define espaço do desenho e posicionamento da câmara glClear (GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT); glColor3f (1.0, 0.0, 0.0); glLoadIdentity (); gluLookAt (cam,0.0,0.0,0.0,0.0,0.0 , 0.0, 0.0, 1.0); //Define as funções que serão utilizadas para rotacionar e transladar o objeto glRotatef(thetax,1,0,0); glRotatef(thetay,0,1,0); glRotatef(thetaz,0,0,1); glTranslatef(vx,vy,vz); //Construção dos eixos x , y e z glDisable(GL_LIGHTING); glPushMatrix(); glTranslatef(-3.5,-3.5,-3.5); glColor3f(1,1,1); glBegin(GL_LINES); glVertex3f(0,0,0); glVertex3f(1,0,0); glEnd(); glRasterPos3f(1.5,0,0); glutBitmapCharacter(GLUT_BITMAP_TIMES_ROMAN_10, 'x'); glBegin(GL_LINES); glVertex3f(0,0,0); glVertex3f(0,1,0); glEnd(); glRasterPos3f(0,1.5,0); glutBitmapCharacter(GLUT_BITMAP_TIMES_ROMAN_10, 'y'); glBegin(GL_LINES); glVertex3f(0,0,0); glVertex3f(0,0,1); glEnd(); glRasterPos3f(0,0,1.5); glutBitmapCharacter(GLUT_BITMAP_TIMES_ROMAN_10, 'z'); glPopMatrix(); glEnable(GL_LIGHTING); //Propriedades do material quanto a utilização de luz glMaterialfv(GL_FRONT,GL_DIFFUSE,mdifusa); glMaterialfv(GL_FRONT,GL_AMBIENT,mambiente); glMaterialf(GL_FRONT,GL_SHININESS,mbrilho); glMaterialfv(GL_FRONT,GL_SPECULAR,mespecular); //Exporta o programa estrutura.c para definição da estrutura a ser visualizada for(i=0;i<n;i++) for(j=0;j<n;j++) for(k=0;k<n;k++) estrutura(opcao,i,j,k); glFlush (); } //Define o redimensionamento da janela e o espaço de visualização void reshape (int w, int h)

Page 41: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

41

{ glViewport (0, 0, (GLsizei) w, (GLsizei) h); //Define qual matrix será alterada daí para a frente sendo a projection indicada para definir o volume de visualização glMatrixMode (GL_PROJECTION); //Serve para transformar a atual pilhas de matrix em identidade glLoadIdentity (); //Define o volume de visualização com a forma de um tronco de pirâmide sendo os parâmetros de entrada (angulo,distorção,perto, longe) gluPerspective(angulo, fAspect, 0.10, 500.0); //Define qual matrix será alterada daí para a frente sendo a modelview indicada para o desenho e posicionamento da câmara glMatrixMode (GL_MODELVIEW); glLoadIdentity (); } //Função mouse, define as funções que serão realizadas pelo mouse. void mouse (int button, int state, int x, int y) { //Botão esquerdo aproxima o objeto da câmera. switch (button){ case GLUT_RIGHT_BUTTON: if (state==GLUT_UP) cam = cam + 0.5; glutPostRedisplay(); break; //Botão do meio volta para a condição inicial da câmera. case GLUT_MIDDLE_BUTTON: if (state==GLUT_DOWN) glutIdleFunc(init()); break; //Botão direito, afasta o objeto da câmera. case GLUT_LEFT_BUTTON: cam = cam - 0.5; glutPostRedisplay(); break; default: break; } } //Função teclado, define a função que será realizada pelo teclado. void teclado(unsigned char tecla, int x, int y) { switch (tecla) { //tecla “A ou a” rotaciona o objeto no eixo x em 1 grau case 'A':

case 'a': thetax += 1; break; //tecla “S ou s” rotaciona o objeto no eixo y em 1 grau case 'S':

case 's': thetay += 1; break; //tecla “D ou d” rotaciona o objeto no eixo z em 1 grau

case 'D': case 'd':

thetaz += 1; break; //tecla “Z ou z” rotaciona o objeto no eixo x em -1 grau

case 'Z': case 'z':

Page 42: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

42

thetax -= 1; break; //tecla “X ou x” rotaciona o objeto no eixo y em -1 grau case 'X':

case 'x': thetay -= 1; break; //tecla “C ou c” rotaciona o objeto no eixo z em -1 grau

case 'C': case 'c':

thetaz -= 1; break; //tecla “H ou h” translada o objeto no eixo x em + 0.1 da sua posição

case 'H': case 'h':

vx += 0.1; break; //tecla “J ou j” translada o objeto no eixo y em + 0.1 da sua posição

case 'J': case 'j': vy += 0.1; break; //tecla “K ou k” translada o objeto no eixo z em + 0.1 da sua posição

case 'K': case 'k': vz += 0.1; break; //tecla “B ou b” translada o objeto no eixo x em - 0.1 da sua posição

case 'B': case 'b': vx -= 0.1; break; //tecla “N ou n” translada o objeto no eixo y em - 0.1 da sua posição

case 'N': case 'n': vy -= 0.1; break; //tecla “M ou m” translada o objeto no eixo z em - 0.1 da sua posição

case 'M': case 'm':

vz -= 0.1; break; //tecla “O ou o” retorna a condição inicial

case 'O': case 'o':

init(); break; case 27: //tecla “Q ou q” fecha a janela case 'Q': case 'q': exit(0); break; } glutPostRedisplay(); }

Page 43: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

43

//Função Principal int main(int argc, char** argv) { if (argc>1) opcao = atoi(argv[1]); if (argc>2) n = atoi(argv[2]); glutInit(&argc, argv); glutInitDisplayMode (GLUT_SINGLE | GLUT_RGB ); glutInitWindowSize (500, 500); glutInitWindowPosition (100, 100); glutCreateWindow ("ESTRUURAS CRISTALINAS DOS SOLIDOS EM TRÊS DIMENSÕES"); glutKeyboardFunc(teclado); glutMouseFunc(mouse); init (); glutDisplayFunc(objeto); glutReshapeFunc(reshape); glutMainLoop(); return 0; }

Page 44: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

44

Anexo IV: Programa: estrutura. c //Função bola,descreve a criação e o posicionamento das esferas void bola(float raio,GLfloat x1,GLfloat y1,GLfloat z1) { glTranslatef(x1,y1,z1); glutSolidSphere(raio,10,10); glTranslatef(-x1,-y1,-z1); } // Função estrutura, define todas as estruturas que serão exportadas para o programa final.c void estrutura(int opcao,GLfloat x1,GLfloat y1,GLfloat z1) { switch (opcao){ case 2: //Cúbica Face Centrada ou FCC glPushMatrix(); glColor3f(1.0,1.0,1.0); glPushMatrix(); glBegin(GL_LINES); glLineWidth(2); glVertex3f(x1,y1,z1); glVertex3f(x1+1,y1,z1); glVertex3f(x1+1,y1,z1); glVertex3f(x1+1,y1+1,z1); glVertex3f(x1+1,y1+1,z1); glVertex3f(x1,y1+1,z1); glVertex3f(x1,y1+1,z1); glVertex3f(x1,y1,z1); glVertex3f(x1,y1,z1+1); glVertex3f(x1+1,y1,z1+1); glVertex3f(x1+1,y1,z1+1); glVertex3f(x1+1,y1+1,z1+1); glVertex3f(x1+1,y1+1,z1+1); glVertex3f(x1,y1+1,z1+1); glVertex3f(x1,y1+1,z1+1); glVertex3f(x1,y1,z1+1); glVertex3f(x1,y1,z1); glVertex3f(x1,y1,z1+1); glVertex3f(x1+1,y1,z1); glVertex3f(x1+1,y1,z1+1); glVertex3f(x1,y1+1,z1); glVertex3f(x1,y1+1,z1+1); glVertex3f(x1+1,y1+1,z1); glVertex3f(x1+1,y1+1,z1+1); glEnd(); glPopMatrix(); glPushMatrix(); glTranslatef(x1,y1,z1); glColor3f(1,1,1); bola(0.10,0,0,0); bola(0.10,1,0,0); bola(0.10,0,1,0); bola(0.10,1,1,0); bola(0.10,0,0,1); bola(0.10,1,0,1); bola(0.10,0,1,1); bola(0.10,1,1,1); glColor3f(0.33,1,0); bola(0.10,0.5,0.5,0.0); bola(0.10,0.0,0.5,0.5); bola(0.10,0.5,0.0,0.5); bola(0.10,0.5,1.0,0.5); bola(0.10,1.0,0.5,0.5); bola(0.10,0.5,0.5,1.0); glTranslatef(-x1,-y1,-z1); glPopMatrix(); glPopMatrix(); break;

Page 45: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

45

case 3: // Cúbica de Corpo Centrado ou BCC glPushMatrix(); glColor3f(1.0,1.0,1.0); glPushMatrix(); glBegin(GL_LINES); glLineWidth(2); glVertex3f(x1,y1,z1); glVertex3f(x1+1,y1,z1); glVertex3f(x1+1,y1,z1); glVertex3f(x1+1,y1+1,z1); glVertex3f(x1+1,y1+1,z1); glVertex3f(x1,y1+1,z1); glVertex3f(x1,y1+1,z1); glVertex3f(x1,y1,z1); glVertex3f(x1,y1,z1+1); glVertex3f(x1+1,y1,z1+1); glVertex3f(x1+1,y1,z1+1); glVertex3f(x1+1,y1+1,z1+1); glVertex3f(x1+1,y1+1,z1+1); glVertex3f(x1,y1+1,z1+1); glVertex3f(x1,y1+1,z1+1); glVertex3f(x1,y1,z1+1); glVertex3f(x1,y1,z1); glVertex3f(x1,y1,z1+1); glVertex3f(x1+1,y1,z1); glVertex3f(x1+1,y1,z1+1); glVertex3f(x1,y1+1,z1); glVertex3f(x1,y1+1,z1+1); glVertex3f(x1+1,y1+1,z1); glVertex3f(x1+1,y1+1,z1+1); glEnd(); glPopMatrix(); glPushMatrix(); glTranslatef(x1,y1,z1); glColor3f(1,1,1); bola(0.10,0,0,0); bola(0.10,1,0,0); bola(0.10,0,1,0); bola(0.10,1,1,0); bola(0.10,0,0,1); bola(0.10,1,0,1); bola(0.10,0,1,1); bola(0.10,1,1,1); glColor3f(0.33,1,0); bola(0.10,0.5,0.5,0.5); glTranslatef(-x1,-y1,-z1); glPopMatrix(); glPopMatrix(); break; case 4: //Ortorrômbica simples glPushMatrix(); glColor3f(1.0,1.0,1.0); glPushMatrix(); glBegin(GL_LINES); glLineWidth(2); glVertex3f(x1,y1*0.5,z1*0.7); glVertex3f(x1+1,y1*0.5,z1*0.7); glVertex3f(x1+1,y1*0.5,z1*0.7); glVertex3f(x1+1,y1*0.5+0.5,z1*0.7); glVertex3f(x1+1,y1*0.5+0.5,z1*0.7); glVertex3f(x1,y1*0.5+0.5,z1*0.7); glVertex3f(x1,y1*0.5+0.5,z1*0.7); glVertex3f(x1,y1*0.5,z1*0.7); glVertex3f(x1,y1*0.5,z1*0.7+0.7); glVertex3f(x1+1,y1*0.5,z1*0.7+0.7); glVertex3f(x1+1,y1*0.5,z1*0.7+0.7); glVertex3f(x1+1,y1*0.5+0.5,z1*0.7+0.7); glVertex3f(x1+1,y1*0.5+0.5,z1*0.7+0.7); glVertex3f(x1,y1*0.5+0.5,z1*0.7+0.7); glVertex3f(x1,y1*0.5+0.5,z1*0.7+0.7); glVertex3f(x1,y1*0.5,z1*0.7+0.7); glVertex3f(x1,y1*0.5,z1*0.7); glVertex3f(x1,y1*0.5,z1*0.7+0.7); glVertex3f(x1+1,y1*0.5,z1*0.7); glVertex3f(x1+1,y1*0.5,z1*0.7+0.7); glVertex3f(x1,y1*0.5+0.5,z1*0.7); glVertex3f(x1,y1*0.5+0.5,z1*0.7+0.7); glVertex3f(x1+1,y1*0.5+0.5,z1*0.7); glVertex3f(x1+1,y1*0.5+0.5,z1*0.7+0.7); glEnd(); glPopMatrix(); glPushMatrix(); glTranslatef(x1,y1*0.5,z1*0.7);

Page 46: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

46

glColor3f(1,1,1); bola(0.10,0,0,0); bola(0.10,1,0,0); bola(0.10,0,0.5,0); bola(0.10,1,0.5,0); bola(0.10,0,0,0.7); bola(0.10,1,0,0.7); bola(0.10,0,0.5,0.7); bola(0.10,1,0.5,0.7); glTranslatef(-x1,-y1*0.5,-z1*0.7); glPopMatrix(); glPopMatrix(); break; case 5: // Ortorrômbica C glPushMatrix(); glColor3f(1.0,1.0,1.0); glPushMatrix(); glBegin(GL_LINES); glLineWidth(2); glVertex3f(x1,y1*0.5,z1*0.7); glVertex3f(x1+1,y1*0.5,z1*0.7); glVertex3f(x1+1,y1*0.5,z1*0.7); glVertex3f(x1+1,y1*0.5+0.5,z1*0.7); glVertex3f(x1+1,y1*0.5+0.5,z1*0.7); glVertex3f(x1,y1*0.5+0.5,z1*0.7); glVertex3f(x1,y1*0.5+0.5,z1*0.7); glVertex3f(x1,y1*0.5,z1*0.7); glVertex3f(x1,y1*0.5,z1*0.7+0.7); glVertex3f(x1+1,y1*0.5,z1*0.7+0.7); glVertex3f(x1+1,y1*0.5,z1*0.7+0.7); glVertex3f(x1+1,y1*0.5+0.5,z1*0.7+0.7); glVertex3f(x1+1,y1*0.5+0.5,z1*0.7+0.7); glVertex3f(x1,y1*0.5+0.5,z1*0.7+0.7); glVertex3f(x1,y1*0.5+0.5,z1*0.7+0.7); glVertex3f(x1,y1*0.5,z1*0.7+0.7); glVertex3f(x1,y1*0.5,z1*0.7); glVertex3f(x1,y1*0.5,z1*0.7+0.7); glVertex3f(x1+1,y1*0.5,z1*0.7); glVertex3f(x1+1,y1*0.5,z1*0.7+0.7); glVertex3f(x1,y1*0.5+0.5,z1*0.7); glVertex3f(x1,y1*0.5+0.5,z1*0.7+0.7); glVertex3f(x1+1,y1*0.5+0.5,z1*0.7); glVertex3f(x1+1,y1*0.5+0.5,z1*0.7+0.7); glEnd(); glPopMatrix(); glPushMatrix(); glTranslatef(x1,y1*0.5,z1*0.7); glColor3f(1,1,1); bola(0.10,0,0,0); bola(0.10,1,0,0); bola(0.10,0,0.5,0); bola(0.10,1,0.5,0); bola(0.10,0,0,0.7); bola(0.10,1,0,0.7); bola(0.10,0,0.5,0.7); bola(0.10,1,0.5,0.7); glColor3f(0.33,1,0); bola(0.10,0.5,0.25,0.0); bola(0.10,0.5,0.25,0.7); glTranslatef(-x1,-y1*0.5,-z1*0.7); glPopMatrix(); glPopMatrix(); break; case 6: // Ortorrômbica de Corpo Centrado glPushMatrix(); glColor3f(1.0,1.0,1.0); glPushMatrix(); glBegin(GL_LINES); glLineWidth(2); glVertex3f(x1,y1*0.5,z1*0.7); glVertex3f(x1+1,y1*0.5,z1*0.7);

Page 47: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

47

glVertex3f(x1+1,y1*0.5,z1*0.7); glVertex3f(x1+1,y1*0.5+0.5,z1*0.7); glVertex3f(x1+1,y1*0.5+0.5,z1*0.7); glVertex3f(x1,y1*0.5+0.5,z1*0.7); glVertex3f(x1,y1*0.5+0.5,z1*0.7); glVertex3f(x1,y1*0.5,z1*0.7); glVertex3f(x1,y1*0.5,z1*0.7+0.7); glVertex3f(x1+1,y1*0.5,z1*0.7+0.7); glVertex3f(x1+1,y1*0.5,z1*0.7+0.7); glVertex3f(x1+1,y1*0.5+0.5,z1*0.7+0.7); glVertex3f(x1+1,y1*0.5+0.5,z1*0.7+0.7); glVertex3f(x1,y1*0.5+0.5,z1*0.7+0.7); glVertex3f(x1,y1*0.5+0.5,z1*0.7+0.7); glVertex3f(x1,y1*0.5,z1*0.7+0.7); glVertex3f(x1,y1*0.5,z1*0.7); glVertex3f(x1,y1*0.5,z1*0.7+0.7); glVertex3f(x1+1,y1*0.5,z1*0.7); glVertex3f(x1+1,y1*0.5,z1*0.7+0.7); glVertex3f(x1,y1*0.5+0.5,z1*0.7); glVertex3f(x1,y1*0.5+0.5,z1*0.7+0.7); glVertex3f(x1+1,y1*0.5+0.5,z1*0.7); glVertex3f(x1+1,y1*0.5+0.5,z1*0.7+0.7); glEnd(); glPopMatrix(); glPushMatrix(); glTranslatef(x1,y1*0.5,z1*0.7); glColor3f(1,1,1); bola(0.10,0,0,0); bola(0.10,1,0,0); bola(0.10,0,0.5,0); bola(0.10,1,0.5,0); bola(0.10,0,0,0.7); bola(0.10,1,0,0.7); bola(0.10,0,0.5,0.7); bola(0.10,1,0.5,0.7); glColor3f(0.33,1,0); bola(0.10,0.5,0.25,0.35); glTranslatef(-x1,-y1*0.5,-z1*0.7); glPopMatrix(); glPopMatrix(); break; case 7: // Ortorrôbica de Face Centrada glPushMatrix(); glColor3f(1.0,1.0,1.0); glPushMatrix(); glBegin(GL_LINES); glLineWidth(2); glVertex3f(x1,y1*0.5,z1*0.7); glVertex3f(x1+1,y1*0.5,z1*0.7); glVertex3f(x1+1,y1*0.5,z1*0.7); glVertex3f(x1+1,y1*0.5+0.5,z1*0.7); glVertex3f(x1+1,y1*0.5+0.5,z1*0.7); glVertex3f(x1,y1*0.5+0.5,z1*0.7); glVertex3f(x1,y1*0.5+0.5,z1*0.7); glVertex3f(x1,y1*0.5,z1*0.7); glVertex3f(x1,y1*0.5,z1*0.7+0.7); glVertex3f(x1+1,y1*0.5,z1*0.7+0.7); glVertex3f(x1+1,y1*0.5,z1*0.7+0.7); glVertex3f(x1+1,y1*0.5+0.5,z1*0.7+0.7); glVertex3f(x1+1,y1*0.5+0.5,z1*0.7+0.7); glVertex3f(x1,y1*0.5+0.5,z1*0.7+0.7); glVertex3f(x1,y1*0.5+0.5,z1*0.7+0.7); glVertex3f(x1,y1*0.5,z1*0.7+0.7); glVertex3f(x1,y1*0.5,z1*0.7); glVertex3f(x1,y1*0.5,z1*0.7+0.7); glVertex3f(x1+1,y1*0.5,z1*0.7); glVertex3f(x1+1,y1*0.5,z1*0.7+0.7); glVertex3f(x1,y1*0.5+0.5,z1*0.7); glVertex3f(x1,y1*0.5+0.5,z1*0.7+0.7); glVertex3f(x1+1,y1*0.5+0.5,z1*0.7); glVertex3f(x1+1,y1*0.5+0.5,z1*0.7+0.7); glEnd(); glPopMatrix(); glPushMatrix(); glTranslatef(x1,y1*0.5,z1*0.7); glColor3f(1,1,1); bola(0.10,0,0,0); bola(0.10,1,0,0); bola(0.10,0,0.5,0); bola(0.10,1,0.5,0); bola(0.10,0,0,0.7);

Page 48: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

48

bola(0.10,1,0,0.7); bola(0.10,0,0.5,0.7); bola(0.10,1,0.5,0.7); glColor3f(0.33,1,0); bola(0.10,0.5,0.25,0.0); bola(0.10,0.0,0.25,0.35); bola(0.10,0.5,0.0,0.35); bola(0.10,0.5,0.5,0.35); bola(0.10,1.0,0.25,0.35); bola(0.10,0.5,0.25,0.7); glTranslatef(-x1,-y1*0.5,-z1*0.7); glPopMatrix(); glPopMatrix(); break; case 8: // Tetragonal Simples glPushMatrix(); glColor3f(1.0,1.0,1.0); glPushMatrix(); glBegin(GL_LINES); glLineWidth(2); glVertex3f(x1,y1,z1*0.7); glVertex3f(x1+1,y1,z1*0.7); glVertex3f(x1+1,y1,z1*0.7); glVertex3f(x1+1,y1+1,z1*0.7); glVertex3f(x1+1,y1+1,z1*0.7); glVertex3f(x1,y1+1,z1*0.7); glVertex3f(x1,y1+1,z1*0.7); glVertex3f(x1,y1,z1*0.7); glVertex3f(x1,y1,z1*0.7+0.7); glVertex3f(x1+1,y1,z1*0.7+0.7); glVertex3f(x1+1,y1,z1*0.7+0.7); glVertex3f(x1+1,y1+1,z1*0.7+0.7); glVertex3f(x1+1,y1+1,z1*0.7+0.7); glVertex3f(x1,y1+1,z1*0.7+0.7); glVertex3f(x1,y1+1,z1*0.7+0.7); glVertex3f(x1,y1,z1*0.7+0.7); glVertex3f(x1,y1,z1*0.7); glVertex3f(x1,y1,z1*0.7+0.7); glVertex3f(x1+1,y1,z1*0.7); glVertex3f(x1+1,y1,z1*0.7+0.7); glVertex3f(x1,y1+1,z1*0.7); glVertex3f(x1,y1+1,z1*0.7+0.7); glVertex3f(x1+1,y1+1,z1*0.7); glVertex3f(x1+1,y1+1,z1*0.7+0.7); glEnd(); glPopMatrix(); glPushMatrix(); glTranslatef(x1,y1,z1*0.7); glColor3f(1,1,1); bola(0.10,0,0,0); bola(0.10,1,0,0); bola(0.10,0,1,0); bola(0.10,1,1,0); bola(0.10,0,0,0.7); bola(0.10,1,0,0.7); bola(0.10,0,1,0.7); bola(0.10,1,1,0.7); glTranslatef(-x1,-y1,-z1*0.7); glPopMatrix(); glPopMatrix(); break; case 9: // Tetragonal de Corpo Centrado glPushMatrix(); glColor3f(1.0,1.0,1.0); glPushMatrix(); glBegin(GL_LINES); glLineWidth(2); glVertex3f(x1,y1,z1*0.7); glVertex3f(x1+1,y1,z1*0.7); glVertex3f(x1+1,y1,z1*0.7); glVertex3f(x1+1,y1+1,z1*0.7);

Page 49: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

49

glVertex3f(x1+1,y1+1,z1*0.7); glVertex3f(x1,y1+1,z1*0.7); glVertex3f(x1,y1+1,z1*0.7); glVertex3f(x1,y1,z1*0.7); glVertex3f(x1,y1,z1*0.7+0.7); glVertex3f(x1+1,y1,z1*0.7+0.7); glVertex3f(x1+1,y1,z1*0.7+0.7); glVertex3f(x1+1,y1+1,z1*0.7+0.7); glVertex3f(x1+1,y1+1,z1*0.7+0.7); glVertex3f(x1,y1+1,z1*0.7+0.7); glVertex3f(x1,y1+1,z1*0.7+0.7); glVertex3f(x1,y1,z1*0.7+0.7); glVertex3f(x1,y1,z1*0.7); glVertex3f(x1,y1,z1*0.7+0.7); glVertex3f(x1+1,y1,z1*0.7); glVertex3f(x1+1,y1,z1*0.7+0.7); glVertex3f(x1,y1+1,z1*0.7); glVertex3f(x1,y1+1,z1*0.7+0.7); glVertex3f(x1+1,y1+1,z1*0.7); glVertex3f(x1+1,y1+1,z1*0.7+0.7); glEnd(); glPopMatrix(); glPushMatrix(); glTranslatef(x1,y1,z1*0.7); glColor3f(1,1,1); bola(0.10,0,0,0); bola(0.10,1,0,0); bola(0.10,0,1,0); bola(0.10,1,1,0); bola(0.10,0,0,0.7); bola(0.10,1,0,0.7); bola(0.10,0,1,0.7); bola(0.10,1,1,0.7); glColor3f(0.33,1,0); bola(0.10,0.5,0.5,0.35); glTranslatef(-x1,-y1,-z1*0.7); glPopMatrix(); glPopMatrix(); break; default: // Cúbico Simples glPushMatrix(); glColor3f(1.0,1.0,1.0); glPushMatrix(); glBegin(GL_LINES); glLineWidth(2); glVertex3f(x1,y1,z1); glVertex3f(x1+1,y1,z1); glVertex3f(x1+1,y1,z1); glVertex3f(x1+1,y1+1,z1); glVertex3f(x1+1,y1+1,z1); glVertex3f(x1,y1+1,z1); glVertex3f(x1,y1+1,z1); glVertex3f(x1,y1,z1); glVertex3f(x1,y1,z1+1); glVertex3f(x1+1,y1,z1+1); glVertex3f(x1+1,y1,z1+1); glVertex3f(x1+1,y1+1,z1+1); glVertex3f(x1+1,y1+1,z1+1); glVertex3f(x1,y1+1,z1+1); glVertex3f(x1,y1+1,z1+1); glVertex3f(x1,y1,z1+1); glVertex3f(x1,y1,z1); glVertex3f(x1,y1,z1+1); glVertex3f(x1+1,y1,z1); glVertex3f(x1+1,y1,z1+1); glVertex3f(x1,y1+1,z1); glVertex3f(x1,y1+1,z1+1); glVertex3f(x1+1,y1+1,z1); glVertex3f(x1+1,y1+1,z1+1); glEnd(); glPopMatrix(); glPushMatrix(); glTranslatef(x1,y1,z1); glColor3f(1,1,1); bola(0.10,0,0,0); bola(0.10,1,0,0); bola(0.10,0,1,0); bola(0.10,1,1,0); bola(0.10,0,0,1); bola(0.10,1,0,1);

Page 50: UNIVERSIDADE CATÓLICA DE BRASÍLIA - ucb.brº2006/TCCFlavioFerreiradeAguiar.pdf · de força atômica, a agulha, ao aproximar-se do último átomo da eletrosfera da amostra, sofre

50

bola(0.10,0,1,1); bola(0.10,1,1,1); glTranslatef(-x1,-y1,-z1); glPopMatrix(); glPopMatrix(); }