59
CENTRO DE INVESTIGACIÓN EN MATERIALES AVANZADOS Cristalografía computacional: Aplicaciones para análisis de patrones bidimensionales de difracción TESIS COMO REQUISITO PARA OBTENER EL GRADO DE MAESTRO EN CIENCIA DE LOS MATERIALES Presenta: Edgar Eduardo Villalobos Portillo Director interno: Luis Edmundo Fuentes Cobas Director externo: Luis Fuentes Montero CHIHUAHUA, CHIH. SEPTIEMBRE, 2015

Cristalografía computacional: Aplicaciones para análisis … · Uno de los mayores problemas que tenía anteriormente era que se contaba con registro reducido de formatos para la

Embed Size (px)

Citation preview

CENTRO DE INVESTIGACIÓN EN MATERIALES AVANZADOS

Cristalografía computacional:

Aplicaciones para análisis de patrones bidimensionales de difracción

TESIS COMO REQUISITO PARA OBTENER EL GRADO DE

MAESTRO EN CIENCIA DE LOS MATERIALES

Presenta:

Edgar Eduardo Villalobos Portillo

Director interno:

Luis Edmundo Fuentes Cobas

Director externo:

Luis Fuentes Montero

CHIHUAHUA, CHIH. SEPTIEMBRE, 2015

1

Agradecimientos.

2

Índice

Resumen ............................................................................................................. 3

a. Motivación y Justificación ......................................................................... 5

b. Hipótesis .................................................................................................. 6

c. Objetivo Principal...................................................................................... 7

d. Objetivos Particulares .............................................................................. 7

Fundamentos ..................................................................................................... 8

a. Luz Sincrotrón ......................................................................................... 8

b. Fundamentos de difracción-dispersión de rayos-X ............................... 14

c. Picos de difracción ................................................................................ 18

d. Dispersión atómica y los factores Debye-Waller ................................... 21

e. Difracción: Intensidades de los picos .................................................... 22

f. Difracción de haz rasante ...................................................................... 27

g Textura .................................................................................................. 29

h. Diferencias entre Bragg-Brentano y haz rasante .................................. 31

i. Fundamentos de ANAELU .................................................................... 35

Descripción de la forma de trabajo ................................................................ 38

Descripción de la creación de la interfaz gráfica para el programa ANAELU ....... 40

a) Visualización del patrón DRX experimental .......................................... 40

b) Visualización del patrón DRX calculado ............................................... 41

c) Lectura de ficheros de parámetros y datos cristalográficos .................. 42

d) Datos en pantalla .................................................................................. 43

e) Escritura de ficheros ............................................................................. 47

f) Intercambio de ficheros entre diferentes lenguajes .............................. 48

g) Menús ................................................................................................... 50

h) Facilidades para el usuario ................................................................... 51

Conclusiones ................................................................................................... 54

Bibliografía ....................................................................................................... 55

3

Resumen

El trabajo desarrollado consiste en la ampliación y optimización

de aplicaciones para programas de cristalografía, mediante el uso de diferentes

lenguajes de computación para mejorar y facilitar la lectura y manejo de patrones

bidimensionales. En particular se logró hacer más rápido e intuitivo el manejo del

programa ANAELU (Analytical emulator Laue Utility). Esto se realizó creando una

nueva interfaz gráfica para el programa ANAELU, la cual es sencilla y poderosa,

además de tener la capacidad de ser amigable y familiar hacia el usuario desde el

primer momento que se abre el programa. Ahora es posible alimentar los datos de

entrada más fácilmente y es capaz de realizar una lectura de diferentes tipos

ficheros de entrada.

Se ha hecho eficiente la manera en la cual el usuario puede comparar los patrones

experimental y calculado, ya que ambos patrones abarcan casi toda la pantalla y

los datos de entrada están a la vista para modificarlos y recalcular la imagen

calculada a fin de empatarla con la del experimento.

Este trabajo empalma en la tendencia actual de desarrollo de detección-

procesamiento de datos de difracción-dispersión de rayos x, electrones y

neutrones. La detección bidimensional, ampliamente utilizada hace 50 años en

configuraciones de placas fotográficas, había caído prácticamente en desuso ante

la proliferación de difractómetros en geometría unidimensional tipo Bragg-

Brentano. Además el creciente desarrollo de sistemas electrónicos de detectores

bidimensionales tipo dispositivo de carga acoplada (CCD) está dando lugar a un

fuerte renacimiento de los experimentos de 2D-XRD. Con éstos se aprovecha la

dispersión de los rayos x en todas direcciones y no solo en una línea como se

hace convencionalmente.

4

Con la creación e implementación de nuevos detectores y sistemas de detección.

Así como la creciente línea de caracterización de materiales por medio de luz

sincrotrón, la cual en muchos casos es posible hacer mediciones difracción-

dispersión bidimensionales (Kvick and Wulff 1992; Budai, Yang et al. 2003), nace

la necesidad de la creación de programas de computación capaces de leer y

analizar en detalle estos patrones en forma de anillos.

Pero no solo la comparación de patrones, como lo hace el paquete comercial

XRD2DScan (Rodríguez-Navarro 2006), el cual maneja una base de datos de

difracción para la identificación de fases. Fue necesario crear un programa que

sea capaz de hacer una modelación del patrón de difracción de rayos-X. Para

crear infinitas posibilidades de comparación y retroalimentacion.

5

Introducción

a. Motivación y Justificación

En la actualidad existe una gran demanda de programas de computación

sobre cristalografía y en especial sobre difracción de rayos X de detectores

bidimensionales. No existe una gran oferta de programas capaces de realizar el

análisis de un patrón de difracción bidimensional y modelarlo, mucho menos uno

que sea de fuente abierta, sencillo de utilizar, accesible, rápido y sobre todo

versátil. Dos de los programas representativos en este campo, Fit2D y ANAELU,

pueden ser perfeccionados. Fit2D no es de código abierto y no permite la

modelación de patrones teóricos. ANAELU es superior a Fit2D en el sentido de

que sí permite la modelación, incluidos los efectos de textura y tamaño pequeño

de cristal. Solo que era relativamente lento en su cálculo de difractogramas 2D,

hasta antes de reprogramarlo de Visual Basic a Fortran 95.

Uno de los mayores problemas que tenía anteriormente era que se contaba con

registro reducido de formatos para la entrada de datos siendo incapaz de leer los

ficheros tipo “mar”, el cual es uno de los formatos más utilizados en la práctica

diaria.

Las limitaciones de los códigos mencionados generaron la necesidad de

aplicaciones más completas y accesibles al público en general en un solo

programa de computación.

Los resultados de esta tesis obtuvieron su expresión final en forma de una interfaz

gráfica para el programa ANAELU. Esta interfaz contiene comandos amistosos

para efectuar los cálculos mencionados y trabajar de manera más rápida que la

versión presente (publicada) de ANAELU.

6

b. Hipótesis

La simulación computarizada de patrones DRX bidimensionales, incluyendo

efectos de textura, conforma una poderosa herramienta para la interpretación de

estos patrones. Con esta herramienta se puede lograr una caracterización

detallada y confiable de la estructura de sistemas nanométricos.

7

c. Objetivo Principal

La modelación teórica del fenómeno de difracción policristalina con

detección bidimensional, asistida por computadora, es factible de ser convertida

en una herramienta idónea para caracterizar la microestructura de policristales

texturados. Los programas desarrollados con el propósito mencionado, disponibles

hasta hoy, son significativamente perfectibles con la combinación de diferentes

lenguajes de computación.

d. Objetivos Particulares

Refinar y ampliar el programa ANAELU de modelación de DRX-2D.

Particularmente crear una interfaz gráfica (GUI) rápida, amigable, intuitiva y capaz

de:

Leer ficheros de datos experimentales de detectores 2D diversos

Permitir el análisis preliminar de datos

Aplicar calibraciones instrumentales

Diferentes formatos de visualización para la modificación de

datos de alimentación

Mostrar los patrones 2D en diferentes escalas y con diferentes

códigos de colores

El programa principal de la GUI será escrito en lenguaje Python.

Intercambiar datos con programas de cálculo y modelación

escritos en Python, Fortran y C.

El programa se pondrá a prueba mediante su aplicación en casos reales y la

comparación con resultados de otras técnicas.

8

Fundamentos

a. Luz Sincrotrón

Un sincrotrón es un acelerador de partículas cíclico en el cual el campo

eléctrico (acelerador) y el campo magnético (deflector) están sincronizados para

asegurar que las partículas (generalmente electrones, positrones) sigan una

trayectoria geométrica y energética determinada.

Fig. 1.1 Esquema de un sincrotrón y sus principales partes.

Fig. 1.1 muestra esquemáticamente un sincrotrón. Es un instrumento enorme, con

un tamaño comparable al de un estadio. La construcción de un sincrotrón cuesta

de cientos, a miles millones de pesos y cada canal (beamline) cuesta alrededor

de otros treinta o cuarenta millones de pesos cada uno. El corazón de un

sincrotrón él es anillo de almacenamiento (storage ring), donde un haz de

electrones con velocidades cercanas a la de la luz, describen un movimiento de

tipo circular. La trayectoria curva es producida por el campo magnético. De

acuerdo a las leyes de la electrodinámica, una carga acelerada emite radiación

9

electromagnética. En un sincrotrón, la aceleración centrípeta genera un haz

extremadamente intenso de luz sincrotrón que es emitida tangencialmente al

anillo. Dentro de los rangos normales de operación de un sincrotrón, la radiación

típica va desde el ultravioleta (1016 Hz) hasta los rayos-x (1018 Hz).

Con la ayuda de la Fig. 1.1 podemos describir de manera simple el modo de

operación de un sincrotrón. Los elementos numerados del 1 al 6 se encuentran a

alto vacío. El proceso comienza en la fuente de electrones al final del acelerador

lineal (1: LINAC). En esta sección los electrones adquieren energías del orden de

100 MeV. La segunda fase de aceleración toma lugar en el amplificador (2:

booster), donde la energía aumenta en orden de GeV y la velocidad alcanza

valores aproximados a 0.99999995c (c = velocidad de la luz). Al adquirir esta

velocidad los electrones son inyectados al anillo de almacenamiento (3: storage

ring), donde los imanes deflectores (4: bending magnets) guían a los electrones en

la trayectoria planeada.

Cualquier curvatura en la trayectoria genera luz sincrotrón. El electrón pierde

energía en este proceso. Los sistemas de radio frecuencia (5: RFS) realizan

trabajo físico en el haz de electrones, restaurando la energía perdida en el proceso

anterior.

Dentro del anillo de almacenamiento, debido a la absorción y difracción de los

electrones debido a las pocas partículas remanentes dentro del alto vacío, la

población de los electrones circulando decrece con el tiempo. Es por esto que los

sincrotrones son periódicamente recargados, al menos dos veces al día.

Históricamente, la primera generación de sincrotrones fue creada para el estudio

elemental de partículas, por ejemplo a través de colisiones entre electrones y

positrones. En estos procesos la luz sincrotrón fue considerada “una molestia” ya

que representaba una pérdida de energía que se podía aprovechar para la

investigación de dichas partículas. Pronto los investigadores se dieron cuenta que

los sincrotrones podían ser una importante fuente de rayos-X, la cual podía ser

utilizada para estudiar la estructura de la materia, y fue entonces que llego la

10

segunda generación de sincrotrones durante los 70's y 80's. Estos sincrotrones

generaban rayos-X por medio de los imanes deflectores. La tercera generación

(90’s) nació con la introducción de los dispositivos de inserción, los llamados

“wigglers y onduladores” (Fig. 1.1 sección 6), con lo cual ayudo a que el flujo de

fotones aumentará considerablemente.

Fig. 1.2 esquema de un ondulador.

Los dispositivos de inserción son colecciones de electroimanes insertados en las

secciones rectas del anillo de almacenamiento. Estos imanes son colocados con

polaridad alternada de modo que obligan al haz de electrones a moverse a través

de una trayectoria de balanceo o “zig-zag”. Esta oscilación genera luz sincrotrón.

Los “wigglers” producen un haz intenso de fotones con un espectro de energía

muy amplio. En los onduladores, la frecuencia de oscilación está diseñada de

manera que la interferencia asociada con ciertas frecuencias produzca un refuerzo

importante de las intensidades. Por lo que con esto se produce una intensidad

muy alta, en un rango de frecuencia muy estrecho. Fig. 1.2 muestra

esquemáticamente la operación de un ondulador y la figura 1.3 compara

esquemáticamente el brillo de los imanes deflectores, los onduladores y los

“wigglers”.

11

Fig. 1.3 Esquema comparativo entre los diferentes métodos de estimulación de luz sincrotrón,

La radiación intensa del haz producido por el sincrotrón emerge tangencialmente

del anillo de almacenamiento y es usada en la investigación por medio de las

cámaras de investigación (beamlines Fig. 1.1 sección 7).

Fig. 1.4 ejemplo de la trayectoria de un haz de luz sincrotrón hasta el detector.

Bending magnets

Wigglers

Undulators

0.1 1 10 100

1E10

1E11

1E12

1E13

1E14

1E15

1E16

1E17

1E18

1E19

1E20

Bri

ghtn

ess (

photo

ns/s

ec/m

m2/m

rad

2/0

.1%

bandpass)

Photon energy (keV)

Bending magnets

Wigglers

Undulators

0.1 1 10 100

1E10

1E11

1E12

1E13

1E14

1E15

1E16

1E17

1E18

1E19

1E20

Bri

ghtn

ess (

photo

ns/s

ec/m

m2/m

rad

2/0

.1%

bandpass)

Photon energy (keV)

12

Un beamline consiste de:

a) Cuarto de óptica (Optical hutch), donde el haz es modificado a las

necesidades de la investigación. Por ejemplo el lado izquierdo de la Fig. 7.4

muestra un sistema de enfoque y un monocromador.

b) Cuarto experimental (Experimental hutch), donde se realiza el experimento

en si, por ejemplo un difractometro de alta resolución (Fig. 7.4)

c) Estación de trabajo (Work station), se encuentra la computadora para el

control numérico del experimento y la recolección de datos de salida.

http://www.aps.anl.gov/

http://www-ssrl.slac.stanford.edu/

European Synchrotron

Radiation Facilitywww.esrf.eu

SPring-8

www.spring8.or.jp/

http://www.aps.anl.gov/

http://www-ssrl.slac.stanford.edu/

European Synchrotron

Radiation Facilitywww.esrf.eu

SPring-8

www.spring8.or.jp/

13

La Fig. 1.5 muestra vistas aéreas de algunos sincrotrones de tercera generación.

Al día de hoy existen sincrotrones de cuarta generación, que como se comentó

anteriormente tienen un flujo de haz mayor que los de tercera generación, debido

al arreglo para amplificar la intensidad de la radiación por medio de interferencias

constructivas.

Las características principales de la luz sincrotrón son:

Alto brillo y alta intensidad, varios ordenes de magnitud más que los rayos-x

producidos por los tubos de rayos-x convencionales.

Gran colimación, es decir el haz posee un ángulo pequeño de divergencia.

Baja emitancia , es decir, el producto de la sección transversal de origen y

el ángulo sólido de emisión es pequeña

Ampliamente ajustable en energía/longitud de onda por medio de la

monocromatización (de eV a MeV).

Alto nivel de polarización (lineal o elíptica).

Emisión del haz en pulso (los pulsos son del orden de nano segundos o

menor).

Algunos usos de la luz sincrotrón son:

Análisis estructural de materiales cristalinos y amorfos.

Análisis de difracción de polvos.

Cristalografía de proteínas y otras macromoléculas.

Dispersión magnética.

Difracción de rayos-x de haz rasante.

Espectroscopia de absorción de rayos-x.

Dispersión inelástica de rayos-x.

Tomografías.

Imagen de rayos-x por contraste de fase.

Fotolitografías para sistemas microeletromecanicos.

Estudios de alta presión.

14

Análisis de stress residual.

Difracción de rayos-x múltiple.

Los investigadores interesados tienen acceso a un buen número de sincrotrones,

donde pueden ir con sus muestras a realizar experimentos. El investigador escribe

una propuesta, un panel de científicos evalúa la calidad de la propuesta y cuando

la propuesta es aprobada, se asigna un tiempo determinado en el beamline. Cada

sincrotrón tiene su página de internet con los requisitos y ayudas para aplicar para

tiempo en el sincrotrón.

b. Fundamentos de difracción-dispersión de rayos-X

Ley de Bragg, red recíproca y la representación de Ewald.

La condición básica necesaria para la manifestación de un pico en

difracción de rayos-X es la conocida ley de Bragg:

BhB dnd sin2sin2 (1.1)

Donde dh = d/n es la distancia interplanar asociada con el máximo de difracción

considerado (ej. d200 = d100/2), n es el orden de reflexión, ӨB es el ángulo de

Bragg y λ es la longitud de onda del haz.

Vamos a introducir la descripción de la condición de Bragg en el espacio

reciproco o espacio de Fourier. La base reciproca {bi} (i = 1, 2, 3) correspondiente

a la base directa {ai} está definida por:

aaa VVV

213

132

321 2;2;2

aab

aab

aab

(1.2)

15

Va = a1a2a3 es el volumen de la celda en el espacio directo. La orientación de

los vectores bi está fuertemente ligada a los de ai. ¿La escala usada para

representar a bi en un diagrama del espacio directo es convencional?

Cada nodo del espacio reciproco i

iih hbB (- <hi < ) describe una familia

de planos en el espacio directo del cristal: a) los vectores recíprocos caracterizan

la orientación de los planos cristalinos [el vector Bh siempre es normal a la familia

h= (h1 h2 h3)]. b) la distancia interplanar para la familia h está dada por el inverso

del módulo asociado al vector reciproco

hhd

B2 .

Fig 1.6 muestra una familia de planos cristalinos orientados de acuerdo a la condición de Bragg.

El haz incidente y el difractado están caracterizados respectivamente por su vector

de onda k0 y k, ambos de módulo 2/λ. Es fácil demostrar que la ley de Bragg, en

términos de los llamados vectores de dispersión Q k = k – k0, puede ser escrita

de la siguiente forma:

hBQ . (1.3)

d

k = 2/

d

Q k

-k0

k0 k

d

k = 2/

d

Q k

-k0

k0 k

16

Demostración: suponga la ecuación anterior como válida (1.3). Los módulos de los

vectores involucrados:

hdk

2sin

4sin2 Q

(1.4)

sin2 hd (Ley de Bragg). (1.4a)

Fig. 1.7 Representación de la esfera de Ewald.

Para visualizar geométricamente la ecuación (1.3) hay que considerar la

construcción de la figura mostrada en la Fig. 1.7. La llamada esfera de Ewald tiene

un radio igual al módulo de k0. Como se define en la figura, esta esfera pasa a

través del origen de la red recíproca. Si la superficie de la esfera intersecta

cualquier nodo de la red recíproca, de la manera descrita por el vector Bh,

entonces la condición k = k0 + Bh se cumplirá. Esto es simplemente otra manera

de escribir la condición de difracción. Llegamos así a una formulación alterna para

la ley de Bragg: si la esfera de Ewald intersecta cualquier nodo de la red recíproca,

k

k0

originreciprocal

Q = Bh

2

k

k0

originreciprocal

Q = Bh

2

17

entonces habrá un pico de difracción. El vector k de la onda difractada apuntara

desde el centro de la esfera hacia el nodo Bh (el origen reciproco es trivial,

representa el haz directo transmitido).

Fig. 1.8 Esquema del corte de la esfera de Ewald con el espacio reciproco.

Fig. 1.9 Resultado de interacción de la Fig. 1.8 en forma de picos de difracción.

Figs 7.8 y 7.9 respectivamente muestran simulaciones, siguiendo la

representación de Ewald, de: a) un experimento convencional de polvos en el

canal 2-1 de Stanford (Synchrotron Radiation Laboratory (SSRL), Stanford Linear

Zone axis : [0,0,0]

{1,0,0}

{1,1,0}

{1,1,1}

{2,0,0}{1,2,0}

Ewald sphere

(0,0,0)

k

k0

limiting sphere

powder reciprocal

nodes spheres Q

Zone axis : [0,0,0]

{1,0,0}

{1,1,0}

{1,1,1}

{2,0,0}{1,2,0}

Ewald sphere

(0,0,0)

k

k0

limiting sphere

powder reciprocal

nodes spheres Q

100

110

111

200

2101

00

11

0

11

1

20

0

21

0

15 20 25 30 35 40

2

i

100

110

111

200

2101

00

11

0

11

1

20

0

21

0

15 20 25 30 35 40

2

i

18

Accelerator Center) con una radiación de 10 keV, = 1.2405 Å. b) Un experimento

de mapeo bidimensional del espacio recíproco en el canal X17B1 (National

Synchrotron Light Source (NSLS), Brookhaven National Laboratory)

c. Picos de difracción

Función de interferencia y el factor de estructura.

Consideremos un cristal en forma de paralelepípedo con un parámetro de

red ai y Ni celdas a lo largo de su respectivos ejes. La intensidad dispersada en el

vector Q está dado por:

)()()()()( 2

3

2

2

2

1

2

321QaQaQaQQ FSSSAI NNN

. (1.5)

A es una magnitud (que depende ligeramente del ángulo de dispersión) que

representa un experimento particular. . )( jN j

S aQ es la llamada función de

interferencia para Ni celdas unitarias y F(Q) es el factor de estructura. Las últimas

dos funciones representan respectivamente la transformada de Fourier del tamaño

y la forma del cristal y la distribución electrónica dentro de la celda unitaria. El

producto cuadrático de la transformada de Fourier en la ecuación (1.5) establece

que la intensidad es el cuadrado de la convolución de la dispersión por una red de

celdas (de determinada forma y tamaño) con la dispersión por el contenido de una

celda unitaria representativa.

La función de interferencia es:

3,2,1),exp()(1

0

jniSN

n

jjN jaQaQ

. (1.6)

19

Su módulo al cuadrado es:

3,2,1,)2/(sin

)2/(sin)(

2

2

2

j

NS

j

jj

jN j aQ

aQaQ

. (1.7)

Si el cristal es lo suficientemente grande, digamos Nj ~ 104, la funciones de

interferencia tienden a una colección periódica de funciones delta de Dirac en tres

dimensiones. La intensidad es diferente de cero únicamente si el vector de

dispersión satisface las llamadas condiciones de Laue [equivalente a la ecuación

(7.3)]: Qa1 = 2h, Qa2 = 2k, Qa3 = 2l. En las direcciones de dispersión

máxima la intensidad es:

22

3

2

2

2

1 hklhkl FNNANI . (1.8)

Para cristales finitos, la máxima difracción está dada por (1.8) muestra un

ensanchamiento inversamente proporcional a Nj.

El factor de estructura asociado con el vector de dispersión Q representa la

amplitud del campo eléctrico dispersado por la celda unitaria considerada. Por lo

que es la transformada de Fourier de la densidad promedio de materia dispersada

en una celda:

rrrrQ 3)()()( deQF iF

(1.9)

)(r Es la densidad de materia en un punto dado en un instante dado. )(r

Toma en cuenta primero el promedio de las vibraciones de los átomos alrededor

de sus posiciones de equilibrio y después el promedio del numero representativo

de celdas (cada uno de ellos promediado sobre el tiempo).

20

La ampliamente usada aproximación del átomo aislado calcula la densidad

promedio de cada átomo en su vibración particular y después aplica la

superposición para encontrar la densidad total promedio. Este enfoque es

considerado satisfactorio, pero pierde algo de precisión in casos donde el

movimiento de los átomos acoplados es importante (como en el caso de los

enlaces covalentes). En la aproximación considerada, la densidad promedio es:

kkkkk

N

k

k dpn rrrrrr3

1

)()()(0

, (1.10)

N es el número de átomos por celda unitaria, nk es el factor de ocupación de

átomos k, )( krr es la densidad de electrones (en el caso de los rayos-X)

)(0kkkp rr es la función de densidad de probabilidad, que expresa la probabilidad

por átomo k a mostrar un desplazamiento )(0kk rr con respecto a su posición de

referencia. La ecuación (1.10) no implica que los átomos sean esféricos, pero

asume que no se deforman bajo la vibración.

Combinando (1.9) y (1.10) se obtiene:

)()(1

Qr k

N

k

k Fn

, (1.11)

Con:

rrrrrrQrQ 33)()()(

0dedpF i

kkkkkk

. (1.12)

21

d. Dispersión atómica y los factores Debye-Waller

Con las definiciones u = (rk – rk0), v = (r - rk) y a través de convoluciones del

teorema de Fourier, la ecuación 7.12 puede ser transformada en la siguiente

expresión del factor de estructura:

rQQQQ

iN

k

kkkk eTfnF1

)()()(

(1.13)

Con:

vvQvQ 3)()( def i

kk (1.14)

Y:

uuQuQ 3)()( depT i

kk (1.15)

Eq. (1.14) define el factor de dispersión atómica, el también llamado “factor de

forma” y (1.15) define el factor Debye-Waller (DFW), tradicionalmente mal

llamado “Factor de temperatura”.

En la dirección de máxima difracción, el factor de estructura adopta la siguiente

forma.

cellunitj

jjjjjjhkl lzkyhxiTfnF__

2exp

. (1.16)

22

Las magnitudes xj, yj, zj, son las coordenadas del átomo j. en la fórmula de las

intensidades (eq. 1.5). el factor de estructura aparece cuadrado. La medición de

las intensidades de dispersión (y no las amplitudes del campo electromagnético)

llevan a la perdida de información, conocido como el problema de fase en

Cristalografía. La conocida ley de Friedel’s 22

lkhhkl FF es un caso particular

a este problema.

En el caso de los rayos-X si el átomo k muestra geometría esférica, el factor de

dispersión atómica es calculado por:

0

20 )sin()(4)( duu

u

uuf jj

Q

QQ . (1.17)

e. Difracción: Intensidades de los picos

Para poder llegar a una fórmula de las intensidades del haz difractado es

necesario tomar en cuenta varios factores, desde el electrón, hasta el cristal, que

aunados forman la ecuación básica de la difracción por poli cristales. Para la

parte del electrón se toma en cuenta la fórmula de Thomson (incluye el Factor de

polarización), para el átomo el Factor de dispersión atómica, para la celda unitaria

el Factor de estructura y por último en el cristal se toma en cuenta la ley de Bragg

y la formula de las intensidades.

La fórmula de J. J. Thomson para la intensidad dispersada por un electrón es la

siguiente:

2

2cos1

)(

2

22

4

0

Rmc

eIIe

(1.18)

23

I0 es la intensidad incidente, e la carga del electrón, m la masa del electrón, c la

velocidad de la luz; R la distancia del electrón al punto de observación y 2 el

ángulo de dispersión.

El factor de dispersión atómica es definido como el cociente de la amplitud del

campo eléctrico dispersado por un átomo entre la correspondiente a un electrón

(Trueblood, Burgi et al. 1996):

Eat = f Ee (1.19)

Aplicando el Principio de Superposición a los campos de los [j = 1,…,n] electrones

en un átomo se obtiene:

j

rkki

eatjeEE

).(2 0

(1.20)

k0 y k son los vectores de onda de los rayos incidente y dispersado

respectivamente. El exponente en la eq (1.20) caracteriza la fase de la onda

dispersada por el electrón j, ubicado en rj. Si las nubes electrónicas atómicas se

describen a partir de sus funciones de onda ψj, entonces la ecuación (1.20) se

expresa como:

j

e

ris

jeeat fEdveEfEE )2,(.2

(1.21)

El factor de estructura F describe la superposición de las ondas asociadas a los

diferentes átomos en una celda elemental (Trueblood, Burgi et al. 1996). Se

define como la relación entre la amplitud dispersada por la celda elemental y la

asociada a un electrón en el origen de coordenadas:

24

Ecel = Ee . F (1.22)

Al aplicar la superposición:

k

ris

k

k

ris

keecelkk efFefEFEE

...

(1.23)

La amplitud E es:

L

Ais

ecristalLeFEE

..

(1.24)

AL es un vector reticular del cristal. La intensidad difractada se concentra alrededor

de las direcciones que cumplen la Ley de Bragg. En la posición justa del máximo

de difracción se cumple:

I = Ie |F|2 N2 (1.25)

Donde N es el número de celdas del cristal.

La cantidad medida en el experimento es frecuentemente llamada intensidad

integral, se obtiene recolectando toda la energía que llega a un detector y sale de

la máxima difracción del cristal. El núcleo de la fórmula para calcular esta

intensidad es precisamente el factor de estructura F. Tomando en consideración

los otros factores que participan se encuentra que la intensidad integral de una

línea de difracción en un patrón de polvos es:

I = I K |F|2 p (LP) A T / v2 (1.26)

25

Donde:

K = Constante de la instalación experimental. Depende de la geometría del

difractómetro, de los parámetros de operación del tubo de rayos X, del tamaño de

la muestra, etc.

p = Factor de Multiplicidad. Expresa la cantidad de planos reticulares con índices

distintos pero que son equivalentes por simetría.

(LP) = Factor de Lorentz- Polarización. Es la generalización de la Fórmula de

Thomson. Toma en consideración la distribución de intensidades por la esfera de

reflexión y otros factores geométricos.

Su fórmula en el caso de una medición en el difractómetro de polvos, con

radiación filtrada es:

cossen

2cos1)(

2

2LP

(1.27)

A = Factor de Absorción. Representa la atenuación del haz difractado como

producto de los diversos fenómenos contemplados como absorción. Su expresión

para un experimento difractométrico es:

A = 1/2 (1.28)

( es el coeficiente de absorción lineal)

26

T = Factor de Debye-Waller. Su fórmula en un tratamiento sencillo es:

2

2senexp

BT

(1.29)

B es el llamado factor térmico isotrópico.

v = volumen de la celda elemental.

La intensidad de un pico DRX se distribuye en el entorno de la posición del

máximo, cumpliendo determinadas relaciones con la perfección cristalina y la

resolución instrumental (Rietveld 1969) (Caglioti, Paoletti et al. 1958).

27

e. Difracción de haz rasante

Al realizar un experimento de difracción de tipo simétrico (Bragg-Brantano) la

información que obtenemos es un promedio volumétrico de la estructura del

material. Por lo que si intentamos ver únicamente lo que está en la superficie, es

decir una capa delgada de unas cuantas micras o inclusive nanómetros, de esta

manera es imposible hacerlo. Así que si nuestra intención es ver esa capa

delgada del material, cristales nanometricos o pequeñas gotas cuánticas

separadas Fig. 1.10. Es necesario realizar un experimento de haz rasante (menos

de 1 Ө) para que el haz difracte solo en la superficie y no entre al volumen de la

muestra.

Un ejemplo de información no deseada detectada debido al alto ángulo y la gran

penetración se muestra en la Fig. 1.11. Y una forma de solucionar dicho problema

se muestra En las Figuras 1.12a y 1.12b. La solución es pasar el haz rasante a la

muestra, para que se difracte la capa que nos interesa y no lo interior. Para

aprovechar toda la información emitida por dicho experimento es necesario tener

un detector bidimensional para poder recolectarla. (Renaud 1998; Robinson 1998;

Müller-Buschbaum 2003).

Fig. 1.10 Nanocristales de

Ge sobre un substrato de

Si. En difracción

convencional, sólo se

detecta señal del

substrato y no de los

nanocristales.

28

Fig. 1.11 Difracción de nanocristales. Experimento convencional (Bragg-Brentano). Los rayos X

penetran profundamente en el sustrato.

Fig.1.12 Difracción de nanocristales por de incidencia rasante.

(a) Corte vertical. (b) Diagrama en perspectiva. Los rayos X solamente inciden sobre la capa

superficial.

29

g. Textura

Una parte importante que define la intensidad de los picos en los cristales

de la vida real es la orientación preferencial (textura). Esto se refiere al acomodo

de los pequeños cristales que forman el policristal (Bunge 1982). Si la distribución

de orientaciones cristalinas posee simetría axial, es posible caracterizar

cuantitativamente la textura por medio de la llamada figura inversa de polos (FIP)

asociada al eje de simetría. La idea de una figura inversa de polos se muestra

esquemáticamente en la Fig. 1.13. Si consideramos una dirección de referencia

(n) en la muestra, la dirección normal saliente en el caso de la figura. Siendo h0 el

vector recíproco que representa la orientación de la familia de planos (h0, k0, l0),

preferida en la textura considerada. Si se analiza la superficie de la muestra, se

encuentra una elevada población relativa de cristalitos con la familia (h0, k0, l0)

paralela a la superficie de la muestra.

n h0 h

a b c

h0

Fig. 1.13 Dirección normal a la muestra n, dirección cristalina privilegiada ho y distancia angular .

Los cristales a y b están orientados con ho paralelo a n. El cristal c posee una orientación diferente,

con la normal h ( ho) paralela a n. es el ángulo entre h y h0.

La figura inversa de polos, R(h) ó R(), representa la fracción volumétrica de

cristales con su normal h paralela a n. Naturalmente, el máximo de R(h) ocurre

para h = h0 ó = 0. Si no existe textura, entonces R(h) 1 para todo h. Para

cualquier textura, la función R(h) debe satisfacer la siguiente condición de

normalización:

30

4),( ddsinR (1.30)

La integral se calcula sobre la esfera unitaria. y son los ángulos polar y

azimutal, respectivamente.

En la general los programas que miden la difracción habitualmente emplean dos

algoritmos diferentes para representar las figuras inversas de polo. El primero de

éstos fue propuesto personalmente por Rietveld (Rietveld 1969). La fórmula es:

)exp()1()( 2

122 GGGR (1.31)

En este tratamiento, la distribución aleatoria se asocia al valor G1 = 0. El valor de

G2 debe ser tal que se cumpla la condición de normalización (1.30).

El segundo algoritmo para R(h) es conocido como March-Dollase (Dollase 1986):

2/3

2

1

22

1 sin1

cos)(

GGR

(1.32)

En esta fórmula, la textura aleatoria se corresponde con G1 = 1. La condición de

normalización (1.30) se satisface automáticamente en el algoritmo de March-

Dollase.

31

h. Diferencias entre Bragg-Brentano y haz rasante

Como se trató en los temas pasados existen dos formas importantes pero

muy diferentes de realizar un experimento de difracción de rayos-X:

Bragg-Brentano. Este experimento se hace con un barrido desde Ө a 2Ө,

comúnmente moviendo la fuente de rayos-X y a su vez como espejo el detector

Fig. 1.14 o moviendo la muestra y el detector de modo que siga la misma

geometría. La información que nos da este experimento es el resultado del

promedio de todos los cristales en la muestra, es decir un promedio volumétrico.

Fig. 1.14 Esquema de la geometría y partes de un experimento de difracción Bragg-Brentano.

La forma de calcular la intensidad de cada familia de planos es multiplicar la

intensidad dada por cada reflexión de manera aleatoria y multiplicarla por la figura

inversa de polos (Fig. 1.15) de cada familia de planos correspondiente. Para que

32

una familia de planos de un pico de difracción es necesario que dicha familia este

con su cara paralela a la muestra. Es por esto que se hace un barrido de ángulos

desde cero hasta poco antes de los 90 grados Ө.

Fig. 1.15 construcción de la figura inversa de polos.

En este tipo de experimentos es imposible ver la textura superficial ya que como

vimos anteriormente, los haces penetran en toda la muestra y la superficie al ser

un pequeño volumen con respecto a la muestra completa, no aporta gran

información del total.

33

Haz rasante. Este tipo de experimento se realiza como el nombre lo indica,

haciendo que el haz de rayos-X este casi paralelo a la superficie de la muestra (de

0.05 Ө a 1.0 Ө) Fig. 1.16

Fig. 1.16 Ejemplo real de experimento de difracción de haz rasante.

La técnica de haz rasante nos da información únicamente de la superficie, pero es

muy importante tomar en cuenta que con una muy poca diferencia en el ángulo, ya

podemos ver información que no nos interesa (del sustrato). Como podemos

apreciar en la Fig. 1.17

34

a) b)

Fig. 1.17 experimento de haz rasante en un sincrotrón de una capa delgada de BNBT a diferentes

ángulos.

En la Fig. 1.17 podemos apreciar cómo cambia el patrón de difracción al cambiar

los ángulos de incidencia en una décima de grado. Se midieron ambos patrones

con los siguientes ángulos; patrón a) 0.05. Patrón b) 0.15. En el patrón a) la familia

de picos 101/110 presentan alta textura en la superficie y al adentrarnos más en la

muestra como en el caso b) esta textura disminuye siendo un experimento más

volumétrico que el anterior.

En el caso de experimentos con incidencia rasante la representación que usamos

para describir la textura es la figura directa de polos, la cual mide cuantos cristales

35

están cumpliendo la condición de Bragg, es decir su superficie es normal al vector

de Bragg. Y en qué dirección de la muestra se encuentra

La intensidad de cada pico se calcula multiplicando la intensidad de la muestra

aleatoriamente (sin textura) y multiplicándola por la figura directa de polos.

Si se tiene una textura superficial marcada en la dirección 001 es posible que por

haz rasante esta familia no aparezca en el difractograma ya que es paralela al

haz, y no es posible que se satisfaga la ley de Bragg de esta manera. Por lo que

es necesario analizar las otras familias de plano ligadas a esta, que nos puedan

dar dicha información.

i. Fundamentos de ANAELU

ANAELU sigue el enfoque de Bunge (1982) para el análisis de textura. La

orientación del cristal está caracterizada por el vector g = (1,2, ) en el espacio

de Euler. Las direcciones del cristal y de la muestra están denotadas por h e y,

respectivamente. Para simetrías de texturas, la respuesta estadística completa

que describe el problema está dada por la función de distribuciones de

orientaciones (ODF por sus siglas en ingles), ODF = f(g). Esta, expresa el

diferencial de volumen (dV) de los cristalitos cercanos a dg de una orientación g

[dV/V = f(g)dg]. La figura directa de polos [PF = Ph(y)] caracteriza la población

relativa de una dirección cristalina en diferentes direcciones de la muestra. La

figura inversa de polos [IPF= Ry(h)] describe la población de direcciones

cristalinas en una dirección de la muestra. Si se tiene la ODF es posible calcular

todas las figuras de polos tanto directas como inversas.

36

En el caso particular de la textura de fibras, el ODF se reduce simplemente a la

IPF del eje de simetría de la muestra ya que es la única que se requiere.

ANAELU es capaz de simular patrones bidimensionales de difracción de rayos-X

para muestras con textura de fibra. Simula las distribuciones de intensidades a lo

largo de todos los h = (h,k,l) anillos de Debye, los cuales son calculados con sus

correspondientes figuras directas de polos. Todas las figuras directas de polos

(PF) son calculadas por ANAELU por medio de la normalización de la figura

inversa de polos (IPF).

Para calcular la PF Ph(φ), donde h = (h,k,l) el programa usa la IPF [Rz(h)] asociada

con el eje de simetría z y aplica la ecuación fundamental para texturas de fibras

(Bunge, 1982).

(1.32)

Una vez normalizada la figura inversa de polos La forma en que ANAELU calcula

la distribución de intensidades a lo largo de los anillos de Debye en un ángulo de

difracción Ө = Ө(h) es calculada en base a la intensidad de cada familia de planos

de una muestra no texturada (Ihrandom) y luego multiplicada por la figura directa de

polos de cada familia de planos. Usando las siguientes ecuaciones.

37

(1.33)

(1.34)

(1.35)

Fig. 1.18 Relación entre el ángulo de Bragg Ө, ángulo polar φ y el ángulo azimutal α.

38

Descripción de la forma de trabajo

ANAELU es un programa de fuente abierta, que está siendo desarrollado

por un grupo de trabajo de varias personas radicadas entre México y el Reino

Unido, con cierto nivel de participación de colaboradores en Francia. Para que el

proyecto fluya de manera dinámica y eficiente, se ha tenido que buscar una forma

adecuada de trabajar en conjunto, con intercambios ágiles y sin entorpecer el

trabajo de los demás. La solución ha sido trabajar en el sistema de repositorios de

programas libres en internet. Se ha adoptado el repositorio SourceForge.net. Se

creó un repositorio en línea donde los participantes pueden subir y bajar sus

contribuciones al código. ANAELU puede ser bajado en su totalidad en la siguiente

liga http://sourceforge.net/projects/f90lafg/

La dinámica del trabajo cotidiano ha sido la siguiente:

Crear una cuenta en la página de internet http://sourceforge.net/

Ser agregados como desarrolladores del proyecto ya creado f90lafg.

Crear carpetas personales donde subir nuestros avances de proyecto

correspondiente.

Bajar el módulo de Subversion SVN para poder hacer commit (subir código)

y/o update (descargar código), así como ser capaces de bajar completa alguna

versión del repositorio en línea en cualquier computadora. O tener una fuente

nueva por si algún error ocurría.

Asegurarnos de hacer un update antes de empezar a programar cualquier

cosa para ver lo último del resto del grupo y trabajar todos con la misma versión

actualizada.

Al terminar de programar cualquier código, hacer un commit para

compartirla con el grupo (siempre y cuando funcionase y si no subirla en carpeta

de dudas).

39

Con esta disciplina fue posible hacer las cosas más fáciles y ordenadas que cada

quien trabajando desconectado por su cuenta.

Otro punto importante fue todos trabajar con el mismo sistema operativo (Linux) y

tener instalados todos los programas y paquetes necesarios para poder correr

cualquier programa aunque no fuera dentro de nuestro proyecto particular.

Además de aprender el lenguaje de programación que cada quien necesitaba para

cumplir su objetivo. En mi caso aprendí primeramente python. Un lenguaje

orientado a objetos, auto intérprete y con memoria dinámica. Ya que este es la

base de la interfaz gráfica presentada. Para luego aprender un paquete llamado

wxpython una librería basada en wxwidgets para python. La cual está diseñada

específicamente para la creación de interfaces graficas o GUI (por sus siglas en

ingles). Lo anterior se aprendió en cursos personales en CIMAV, así como cursos

en línea extracurriculares en la página. https://www.codecademy.com/learn

40

Descripción de la creación de la interfaz gráfica para el programa ANAELU

Para poder programar una interfaz gráfica totalmente nueva para el

programa de simulación de difracción bidimensional ANAELU fue necesario hacer

un diseño inicial de lo que se quería con esta nueva interfaz además de que es lo

que se podía hacer con el trabajo ya realizado en Fortran (la realización de

cálculos).

Se le dio solución a cada problema en particular y al final se unió todo en una

sola interfaz funcional con todas las porciones explicadas a continuación.

a) Visualización del patrón DRX experimental

Se podría pensar que la visualización de la imagen experimental es la parte más

simple del programa pero no es así, ya que es crítico tener una lectura precisa y

clara de la imagen experimental, por que de aquí parte la comparación de tu

modelo y ser capaz de obtener la información que se busca. Además, es aquí fue

donde se creó una mejora significativa en el programa.

Un impedimento que tenía el ANAELU anterior es que dependía de un programa

ajeno a nuestro grupo de trabajo (FIT2D) para convertir los ficheros tipo mar

(ficheros comunes de salida de distintos difractrometros de rayos X, incluyendo los

del sincrotrón de Stanford) a ficheros en formato binario, los cuales son los que lee

ANAELU 2.0. Este problema se ha solucionado reutilizando una porción de código

abierto, originalmente creado por Stefan C.B. Mannsfeld , escrito en C el cual se

encarga de convertir los ficheros tipo mar, a ficheros en binario, parte del trabajo

se puede ver en el siguiente enlace: "http://www.ccp4.ac.uk/". Con lo anterior se

quita una dependencia importante que se tenía en la versión anterior.

41

Se agregó uno porción de código para que al abrir el fichero sin importar que tipo

sea (binario o tipo mar) este lo lea haciendo lo necesario. Si es binario

simplemente procede a leer con los parámetros correspondientes. De ser tipo mar

el programa manda a llamar al código en C para que haga la conversión y

devuelva un fichero tipo binario el cual puede leer perfectamente. Esto fue una

parte clave en el desarrollo de la GUI. El nuevo ANAELU 2.0 es capaz de

interaccionar con otros programas escritos en lenguajes diferentes. Por medio de

ficheros.

b) Visualización del patrón DRX calculado

La imagen calculada se logró gracias a un programa escrito en Fortran 95, el cual

utiliza la librería CrysFML, misma que utiliza el reconocido programa; Fullprof

Suite (Rodríguez-Carvajal, J. (2008)). Con esto logra hacer los cálculos de forma

eficiente, varias veces más rápido que la versión anterior de ANAELU 1.0.

Para poder simular el patrón de rayos-X bidimensional, ANAELU 2.0, necesita ser

alimentado por dos ficheros: un fichero con extensión .cfl, el cual contiene la

información básica del monocristal, así como la parte propuesta del policristal

(textura preferencial y ancho de la figura inversa de polos). El otro fichero con

extensión .dat, es el encargado de proporcionar la información acerca del

ambiente en el cual se midió la muestra (diámetro del detector, distancia muestra-

detector, etc.).

Otra forma de alimentar la visualización del patrón DRX calculado, es darle los

valores directamente en pantalla y el programa se encarga de transformarlos en

ambos ficheros con la estructura correspondiente.

Al leer los ficheros la GUI pasa estos al programa que calcula en Fortran 95.

Luego el programa que calcula (Fortran 95) arroja un archivo .RAW. este fichero

pasa por un código creado en python encargado de visualizar en pantalla dicho

fichero con el código de colores según la intensidad de cada pico de difracción.

Una muestra de las dos imágenes, tanto experimental como calculada, es

mostrada en la Fig. 1.19

42

Fig. 1.19 muestra ambos patrones desplegados en pantalla.

c) Lectura de ficheros de parámetros y datos cristalográficos

Se crearon dos códigos independientes encargados de leer los ficheros antes

mencionados (cfl y dat) de manera que fueran a prueba de errores, es decir, no

buscaran los datos en una manera fija, si no que buscaran dinámicamente, línea a

línea, donde se encuentra cada variable con su respectivo valor numérico. Esto sin

importar los espacios de separación u otros signos ajenos agregados al fichero

estándar (,:;/=-).

Para lograrlo se programó desde cero una serie de filtros y algoritmos capaces de

ignorar símbolos innecesarios así como cualquier tipo de separación entre datos.

Esto evita errores al modificar los ficheros como es común en otro tipo de

programas similares a este. Un ejemplo de la lectura de ficheros se muestra en la

Fig. 1.20

43

Fig.1.20 Ejemplo de fichero .cfl de manera desordenada y su lectura filtrada en pantalla.

d) Datos en pantalla

Para tener una buena interfaz gráfica es necesario que el usuario pueda entender

y manipular el programa fácilmente. Esto se logra mostrando los controles en

pantalla, cada uno con la etiqueta de descripción correspondiente.

Se programó una serie de paneles, separados de acuerdo a los datos de

alimentación en tres tipos:

Datos del cristal. Son los datos pertenecientes a la estructura básica del

monocristal Fig. 1.21 como: Nombre de la muestra, grupo espacial, parámetros

reticulares (a,b,c), ángulos entre sí (alfa, beta y gamma), y las posiciones de los

átomos que forman la red. Las posiciones de los átomos están dentro de una red

dinámica, la cual crece dependiendo del número de átomos que formen el

policristal. Si el fichero propuesto cuenta con un solo átomo, se mostrara una sola

fila con las distintas columnas (posiciones y la función de Debye-Waller) pero si

cuenta con más átomos se generaran las filas necesarias para cada uno. Es

44

posible agregar o quitar filas en pantalla, si es que se alimentara directamente y no

de un fichero ya generado.

Fig 1.21 panel de lectura y escritura de datos para la parte del monocristal.

Datos del policristal. Estos son los datos que forman parte del cristal a gran

escala y es también donde se propone la figura inversa de polos, con la cual se

generaran las figuras directas de polos, para simular cada anillo de Debye con su

respectiva textura.

Los distintos datos dentro de este panel son: tamaño promedio de grano

(representado en cientos de Angstroms), tensiones (no incluidas en el programa

acutal de Fortran 95), textura preferencial (H K L) Fig. 1.22

Distribución gaussiana de la figura inversa de polos, ángulo azimutal de la IPF, y

numero de pasos horizontales de la IPF (un tipo de resolución). Al proponer la

figura inversa de polos es donde este programa se destaca de los demás al ser

una excelente forma de representación de la textura.

45

Fig.1.22 datos en pantalla para la parte del policristal (textura).

Datos del experimento. Nos ayudan a simular el entorno en el que se midió la

muestra. Los datos en pantalla son los siguientes: longitud de onda del haz de

rayos-X, Distancia de la muestra al detector, diámetro del detector, centralización

del haz de rayos-X, resolución en X e Y máximas de la imagen. Fig. 1.23

46

Fig. 1.23 muestra de los datos en pantalla del experimento.

Estos 3 paneles se encuentran juntos en un solo panel de entrada de datos (Fig.

1.23) cada uno tiene una conexión con las funciones del programa encargadas de

leer y escribir ficheros. Con esto es posible generar ficheros tanto .cfl como .dat,

sin preocuparse del orden del fichero. Simplemente escribiendo los datos en los

recuadros correspondientes.

47

Fig. 1.23 Todos los paneles de entrada de datos juntos..

e) Escritura de ficheros

Si se alimentan los datos en pantalla y no por ficheros, o si se modifican ciertos

datos una vez leídos los ficheros de entrada, ANAELU 2.0 crea ambos ficheros (cfl

y dat) con un formato establecido para cada uno. Esto lo hace cada que es corrido

el programa. ANAELU 2.0 tiene la facilidad de guardar cada fichero en particular,

sin hacer una corrida si es que se le indica en la opción guardar, dentro del menú

“file”.

Estos ficheros siempre son escritos con la misma consistencia de formato (Fig.

1.24), ya que tiene un programa (el cual el usuario no es consciente de él) que se

encarga de leer los datos en pantalla. Ya sea que hayan sido escritos por el

usuario, o leídos de un fichero de entrada. Y los reescribe con un formato

establecido el cual es sencillo de leer. Tanto por el usuario como por el programa

en Fortran 95.

48

Fig. 1.24 Escritura de los ficheros con un orden establecido.

f) Intercambio de ficheros entre diferentes lenguajes

La manera en que este programa es mucho más rápido, versátil y eficiente que el

anterior es utilizando las ventajas de diferentes lenguajes de programación.

Fortran es conocido desde hace tiempo por ser muy bueno y versátil al realizar

cálculos de cantidades grandes de números a una gran velocidad (“number

cruncher”). Por lo que es usado en grandes laboratorios a nivel mundial (contrario

a lo que la gente cree) pero tiene la desventaja que no tiene una forma de crear

interfaces graficas en él.

49

Python es un lenguaje orientado a objetos. Es relativamente nuevo y es usado

ampliamente debido a su sencillez y reusabilidad. Es capaz de lograr un programa

solido en pocas líneas de código (comparado a otros lenguajes como Fortran o

c++). Es excelente en la creación de interfaces gráficas. Tiene decenas de

librerías de donde escoger para realizar GUIs (wxPython, pyGTK, PyQT, Tkinter,

etc.) y tiene una muy buena documentación gratuita en línea para cada una de

ellas. Pero Python tiene la desventaja de ser lento a la hora de hacer grandes

cálculos incluso con el uso de sus bastas librerías como: NunPy y SciPy.

C es un lenguaje que cuenta con una comunidad muy grande de usuarios, sobre

todo de ingenieros. Y tiene la ventaja de tener una cantidad grande de rutinas

útiles las cuales son posibles reutilizarlas y mezclarlas con otro tipo de lenguajes.

La manera en la cual se aprovechó las ventajas de estos distintos lenguajes de computación fue:

Interfaz gráfica (Gui): aquí es donde naturalmente fue conveniente hacer uso de las librerías de Python, en el caso particular de esta Gui se creó desde cero utilizando Wx Python 3.0 y los pequeños procesos y funciones dentro da la Gui usando Python 2.7.

Cálculos: Se dio crédito a los miles de usuarios que confían en Fortran para realizar cálculos fuertes utilizando este lenguaje para realizar los cálculos (con ayuda de la librería CrysFML).

Conversión de ficheros: en este caso se aprovechó una rutina programada en C que se encarga de tomar un fichero tipo Mar (el cual es una combinación de código ASCII y código binario encriptado) para traducirlo y escribirlo en código binario sin encriptar.

50

g) Menús

Los menús en esta interfaz son intuitivos ya que siguen la misma línea que

cualquier programa comercial. Se realizó de manera que al abrir el programa todo

fuera familiar teniendo los menús de edición comunes y los datos de alimentación

siempre a la vista y etiquetados con su respectiva explicación.

El usuario puede abrir un menú de navegación y buscar por el fichero que

necesita. Dependiendo del fichero que se busque, ya sea .cfl, .dat, o .bin se

programó un filtro para que solo se muestren los ficheros con dicha extensión,

siendo así más fácil y rápido encontrarlos.

También es posible salvar cada fichero con un nuevo nombre y en una nueva

ubicación.

Fig.1.25 Ejemplo de dialogo para guardar ficheros programado en wxpython.

.

51

Fig.1.25 Ejemplo de dialogo para abrir ficheros programado en wxpython.

h) Facilidades para el usuario

Todo el diseño de esta interfaz gráfica fue con el propósito de hacer sencillo y

rápido el análisis y comparación de un patrón bidimensional, experimental contra

calculado.

Se logró programando la siguiente serie de facilidades:

Se creó un enlace entre ambos patrones que fuera capaz de mover un

patrón y el otro lo siguiera como espejo. La forma de hacerlo es intuitiva

como en otros programas de visualización. Simplemente se hace click en

la pantalla y se arrastra como en un dispositivo táctil.

52

Otra característica intuitiva es el zoom in y zoom out con el scroll del “pad”

o con el ratón de la computadora. Que a su vez están ligados uno con

respecto al otro. Es decir si haces zoom en una región de la imagen

calculada se hace zoom en la misma región de la imagen experimental

facilitando así la comparación de zonas detalladas de la imagen.

Todo los cambios en la imagen son en tiempo real y con rapidez

Todas las pestañas de los menús tienen los atajos conocidos y funcionales

como Ctrl+O para abrir, Ctrl+S para salvar, e inclusive un Ctrl+R para

correr el programa.

Los menús tienen un filtro que al abrir cada fichero solo se muestra

únicamente la extensión que se busca.

Estas características hacen que el usuario pueda hacer una comparación rápida,

intuitiva y sencilla del experimento. Es indispensable que el usuario tenga noción

de las características de su muestra para poder realizar una comparación

cualitativa de su experimento.

Si algo no concuerda en ambas imágenes, se puede modificar en pantalla el

parámetro que el usuario desee y correr nuevamente la imagen calculada con un

solo botón. Repitiendo este proceso hasta que el usuario tenga una imagen lo

suficientemente parecida, una con respecto a la otra, para poder decir con certeza

cada característica de la muestra.

Una muestra de la interfaz terminada de ANAELU 2.0 con un ejemplo particular de

una muestra de platino (FCC) con una orientación preferencial (textura) de la

familia de planos cristalinos 111 se muestra en la Fig. 1.26.

53

Fig.1.26 Muestra de la Gui terminada para el programa ANAELU 2.0

54

Conclusiones

- Se han sentado las bases para la reformulación profunda del programa

ANAELU, a partir del concepto físico básico del programa original, creando

a partir de cero la estructura computacional. El trabajo ha incluido los

siguientes aspectos.

- Creación de un sistema de contribuciones dinámicas de los participantes a

nivel internacional, mediante el sistema de repositorios en línea.

- Creación del marco que sostiene un sistema de entrada de datos –

procesamiento – salida de resultados que combine las facilidades de GUIs

de lenguajes amistosos (Python) con la potencia de cálculo de la librería

CrysFML (Instituto Laue-Langevin - FORTAN).

- Aprendizaje a partir de cero del lenguaje Phyton, del manejo de librerías

para procesamiento matemático y para creación de GUIs.

- Creación a partir de cero de una interfaz en Python para entrada de datos,

intercambio con rutinas FORTRAN para procesamiento y salida gráfica de

resultados cuantitativos.

- Programación en colaboración con el grupo de la entrada de patrones DRX-

2D para diferentes formatos. Aplicación de la programación mezclada

Phyton C FORTRAN.

- La versión actual del programa, en proceso de desarrollo, es factible ya de

ser utilizada por usuarios interesados. Esta versión es más amistosa y

estable que la inicial. En relación con la rapidez del procesamiento de

datos, la ganancia es de reducir los cálculos de horas a minutos.

55

Bibliografía

Argonne Office of Communications & Public Affairs. (2008). "Advanced Photon

Source." from http://www.aps.anl.gov/.

Authier, A. c. (2006). "Cromer–Mann coefficients." Dictionary of Crystallography

from

http://reference.iucr.org/dictionary/Cromer%E2%80%93Mann_coefficients.

Brown, G. E., Jr., G. Calas, et al. (2006). "Scientific Advances Made Possible by

User Facilities." ELEMENTS 2(1): 23-30.

Budai, J. D., W. Yang, et al. (2003). "X-ray microdiffraction study of growth modes

and crystallographic tilts in oxide films on metal substrates." Nature

Materials 2(7): 487-492.

Bunge, H. J. (1982). Texture Analysis in Material Science: Mathematical Methods.

London, Buttersworths.

Burcham, W. E. (1973). Nuclear Physics, an introduction. London, Longman.

Caglioti, G., A. Paoletti, et al. (1958). "Choice of collimators for a crystal

spectrometer for neutron diffraction." Nuclear Instruments 3(4): 223-228.

Cromer, D. T. and J. T. Waber (1965). "Scattering factors computed from

relativistic Dirac-Slater wave functions." Acta Crystallographica 18: 104-109.

Cullity, B. D. and S. R. Stock (2001). Elements of X-ray Diffraction. Upper Saddle

River, NJ, Prentice Hall.

Chapman, B. D., E. A. Stern, et al. (2005). "Diffuse x-ray scattering in perovskite

ferroelectrics." Physical Review B 71(2): 20102.

Chapman, H. N., S. P. Hau-Riege, et al. (2007). "Femtosecond time-delay X-ray

holography." Nature 448(7154): 676-679.

Dollase, W. A. (1986). "Correction of intensities for preferred orientation in powder

diffractometry: application of the March model." Journal of Applied

Crystallography 19(4): 267-272.

Eisebitt, S., J. Luning, et al. (2004). "Lensless imaging of magnetic nanostuctures

by X-ray spectro-holography." Nature(London) 432(7019): 885-888.

56

EPSIM 3D/JF Santarelli. (2005). "Schéma de principe du synchrotron." from

http://commons.wikimedia.org/wiki/Image:Sch%C3%A9ma_de_principe_du

_synchrotron.jpg.

Fong, D. D., C. Cionca, et al. (2005). "Direct structural determination in ultrathin

ferroelectric films by analysis of synchrotron x-ray scattering

measurements." Physical Review B 71(14): 144112.

Fong, D. D., J. A. Eastman, et al. (2006). "In situ synchrotron X-ray studies of

ferroelectric thin films." ANNUAL REVIEW OF MATERIALS RESEARCH 36:

431.

Fong, D. D., G. B. Stephenson, et al. (2004). "Ferroelectricity in Ultrathin

Perovskite Films." Science 304(5677): 1650-1653.

Fuentes-Montero, L., M. E. Montero-Cabrera, et al. (2009). "Synchrotron

Techniques Applied to Ferroelectrics: Some Representative Cases."

Integrated Ferroelectrics 101: 1–13.

Fuentes Cobas, L. E. and M. E. Fuentes Montero (2008). La Relación Estructura-

Simetría-Propiedades en Cristales y Policristales. México D.F., Reverté

Ediciones

Fuentes, L. (2006). Introducción al Método de Rietveld. México, Sociedad

Mexicana de Cristalografía.

Hahn, T. (1995). International tables for crystallography. Volume A, Space-group

symmetry, Kluwer Academic Publishers.

Hammersley, A. P., S. O. Svensson, et al. (1996). "Two-dimensional detector

software: From real detector to idealised image or two-theta scan." High

Pressure Research 14(4): 235 - 248.

He, B. B. (2003). "Introduction to two-dimensional X-ray diffraction." Powder

Diffraction 18(2): 71-85.

Izumi, F. (2008). "RIETAN Rietveld software.", from

http://homepage.mac.com/fujioizumi/rietan/angle_dispersive/angle_dispersiv

e.html.

JASRI Public Relations Office. (2008). "Japan Synchrotron Radiation Research

Institute." from http://www.spring8.or.jp/en/.

57

Kittel, C. (1995). Introduction to solid state physics. New York, John Wiley & Sons,

Inc.

Knotts, C. (2008). "Stanford Synchrotron Radiation Lightsource." from http://www-

ssrl.slac.stanford.edu.

König, F. and M. Robichon. (2008). "European Synchrotron Radiation Facility."

from http://www.esrf.eu.

Kvick, A. and M. Wulff (1992). The materials science and Laue diffraction

beamlines at the European Synchrotron Radiation Facility. Proceedings of

the 4th international conference on synchrotron radiation instrumentation,

Chester (UK), AIP.

Lutteroti, L. (2008). "RIETQUAN Rietveld software.", from

http://www.ing.unitn.it/~luttero/rietquan/rietquan_20.html.

Macromolecular Crystallography Group (2008). Data Collection at SSRL using Blu-

Ice 5. Menlo Park, CA.

Müller-Buschbaum, P. (2003). "Grazing incidence small-angle X-ray scattering: an

advanced scattering technique for the investigation of nanostructured

polymer films." Analytical and Bioanalytical Chemistry 376(1): 3-10.

Parrish, W. (1951). X-ray diffraction method. U. S. P. Off. 2,549,987.

Pollock, H. C. (1983). "The discovery of synchrotron radiation." American Journal

of Physics 51(3): 278-280.

Renaud, G. (1998). "Oxide surfaces and metal/oxide interfaces studied by grazing

incidence X-ray scattering." Surface Science Reports 32(1): 5-90.

Rietveld, H. M. (1969). "A profile refinement method for nuclear and magnetic

structures." Journal of Applied Crystallography 2(2): 65-71.

Robinson, I. K. (1998). "X-ray Crystallography of Surfaces and Interfaces-

Crystallography in two dimensions has been developed to the point that

surface and interface structures can be determined routinely. Some

principles." Acta Crystallographica-Section A-Foundations of

Crystallography 54(6): 772-778.

Roco, M. (2007). National Nanotechnology Initiative: Past, Present, Future.

Handbook of Nanoscience, Taylor and Francis.

58

Rodríguez-Carvajal, J. (2001). "Recent developments of the program FULLPROF."

Commission on Powder Diffraction Newsletter 26: 12–19.

Rodríguez-Carvajal, J. (2008). "FULLPROF Suite." from

http://www.ill.eu/sites/FULLPROF/index.html

Rodriguez-Navarro, A. (2006). "XRD2DScan: new software for polycrystalline

materials characterization using two-dimensional X-ray diffraction." Journal

of Applied Crystallography 39(6): 905-909.

Shido, T. and R. Prins (1998). "Application of synchrotron radiation to in situ

characterization of catalysts." Current Opinion in Solid State & Materials

Science 3(4): 330-335.

Trueblood, K. N., H. B. Burgi, et al. (1996). "Atomic Displacement Parameter

Nomenclature. Report of a Subcommittee on Atomic Displacement

Parameter Nomenclature." Acta Crystallographica Section A 52(5): 770-781.

Turton, M. (2008). "Nanotechnology Development in Taiwan." Retrieved 11-11-

2008, 2008, from

http://michaelturton.blogspot.com/2008/02/nanotechnology-development-in-

taiwan.html.

von Dreele, B. (2008). "GSAS Rietveld software.", from

http://www.ccp14.ac.uk/solution/gsas/.

Wenk, H. R., S. Matthies, et al. (1998). "BEARTEX: a Windows-based program

system for quantitative texture analysis." Journal of applied crystallography

31: 262-269.

Winick, H. (1994). Synchrotron Radiation Sources: A Primer, World Scientific

Publishing Company.

Xu, G., Z. Zhong, et al. (2006). "Electric-field-induced redistribution of polar nano-

regions in a relaxor ferroelectric." NATURE MATERIALS 5(2): 134.

Young, R. (2008). "DBWS Rietveld software." from

http://www.physics.gatech.edu/downloads/young/DBWS.html.