UNIVERSIDAD DE LOS ANDES
Tesis de Maestr´ıa
Simulaci´
on 3D de etiquetas SAW
RFID en el dominio del tiempo
usando Computaci´
on de Alto
Desempe˜
no
Fecha: Junio 25 del 2015
Asesor: N´
estor Pe˜
na
Estudiante: Luis E. Romero
´INDICE 3
´
Indice
´Indice 3
1. Revisi´on Bibliogr´afica 5
1.1. Sistemas RFID . . . 5
1.1.1. Etiquetas RFID . . . 6
1.2. Etiquetas SAW RFID . . . 7
1.2.1. Codificaci´on por posicionamiento en el tiempo . . . 9
1.2.2. Codificaci´on por fase . . . 10
1.2.3. Codificaci´on por frecuencia ortogonal (OFC) . . . 10
1.3. M´etodos num´ericos . . . 11
1.4. Computaci´on de alto desempe˜no . . . 13
2. Ondas Electroac´usticas en Medios Piezoel´ectricos 17 2.1. Ondas El´asticas en S´olidos . . . 17
2.2. Ecuaciones Gobernantes en un Piezoel´ectrico . . . 21
3. Modelo de Diferencias Finitas en el Dominio del Tiempo 23 3.1. Presentaci´on del problema . . . 23
3.2. Concepto de diferencia finita . . . 23
3.3. Discretizaci´on en el espacio y el tiempo . . . 26
3.4. Fronteras . . . 30
3.4.1. Superficie libre . . . 30
3.4.2. Superficie libre con metalizaci´on . . . 32
3.4.3. Fronteras absorbentes con PML . . . 33
3.5. An´alisis Num´erico del Modelo . . . 35
3.5.1. Estabilidad Temporal . . . 36
3.5.2. Dispersi´on num´erica . . . 39
3.6. Energ´ıa del Sistema . . . 42
4. Modelo FDTD de Alto Desempe˜no 44 4.1. Optimizaciones . . . 45
4.1.1. Operaciones Aritm´eticas . . . 45
4.1.2. Manejo de la Memoria . . . 46
4.2. Aceleraci´on con VALU . . . 47
4.3. FDTD Paralelo . . . 49
4.3.1. Librer´ıa MPI . . . 50
4.3.2. Intercambio de informaci´on . . . 51
4 ´INDICE
4.3.4. Minimizaci´on del flujo de informaci´on . . . 53
4.3.5. Pseudo algoritmo . . . 55
5. Resultados 57 5.1. Sintonizaci´on de la PML . . . 57
5.2. Estabilidad Temporal . . . 58
5.3. Desempe˜no del m´etodo . . . 63
5.3.1. Desempe˜no de la aceleraci´on con AVX . . . 63
5.3.2. Desempe˜no del FDTD Paralelo . . . 63
5.4. Simulaci´on . . . 67
6. Conclusiones 72 7. Trabajo Futuro 73 Appendices 74 A. Propiedades Electromec´anicas de los Sustratos 74 A.1. ´Oxido de Bismuto-Germanio . . . 74
A.2. Niobato de Sodio-Bario . . . 75
A.3. Rutile . . . 75
A.4. Sulfuro de Cadmio . . . 76
1. Revisi´on Bibliogr´afica 5
1.
Revisi´
on Bibliogr´
afica
1.1.
Sistemas RFID
Identificaci´on por radio-frecuencia o RFID (Radio Frequency IDentification) es un m´etodo autom´atico de identificaci´on, consistente en almacenar y re-cuperar informaci´on de manera inal´ambrica usando dispositivos llamados etiquetas RFID, los cuales pueden ser incorporados a productos, animales o personas [1].
Aunque esta tecnolog´ıa apareci´o hace ya varias d´ecadas, solo recientemente ha habido un inter´es creciente en el uso y masificaci´on de la tecnolog´ıa. A continuaci´on se listan algunos ejemplos de la aplicaci´on de esta tecnolog´ıa:
Control de acceso en edificios [2]. Log´ıstica de la producci´on [3].
Rastreo de productos en cadenas de suministro y en manejo de inventa-rio [4], como lo hace Wal-Mart y el departamento de defensa de Estados Unidos (DoD) [5].
Rastreo de animales [6].
Red de sensores inal´ambricos [7].
y el n´umero de aplicaciones sigue en aumento.
Un sistema RFID puede ser subdividido en tres componentes, como es suge-rido en [5]:
1. Etiqueta: Es un dispositivo electr´onico con antena, y en algunas oca-siones con bater´ıa, que almacena cierta informaci´on y la transmite inal´ambricamente cuando el interrogador la solicita.
2. Interrogador: El interrogador act´ua como un puente entre la etiqueta RFID y el controlador, y tiene unas funciones b´asicas: leer la infor-maci´on contenida en la etiqueta RFID, almacenar informaci´on en la etiqueta (en el caso de etiquetas Smart), llevar informaci´on desde y hacia el controlador, suministrar energ´ıa a la etiqueta (en el caso de etiquetas pasivas).
6 1.1 Sistemas RFID
3. Controlador: Es el “cerebro” de cualquier sistema RFID. Se usa para poner en red m´ultiples interrogadores RFID y centralizar y procesar la informaci´on. La informaci´on recopilada en campo por los interrogadores puede usarse para:
Mantener inventario y alertar a los proveedores cuando se requiere nuevo inventario.
Rastrear el movimiento de objetos a trav´es de un sistema, y po-siblemente redireccionarlos, como en una banda de transporte en una aplicaci´on de manufactura.
Verificar la identificaci´on y conceder autorizaci´on, como en siste-mas de acceso sin llaves.
Debitar una cuenta, como en aplicaciones de punto de venta.
1.1.1. Etiquetas RFID
La funci´on b´asica de una etiqueta es almacenar informaci´on, y transmitir dicha informaci´on cuando esta sea solicitada por el interrogador. La etiqueta m´as b´asica consiste ´unicamente de un chip y de una antena, sin embargo, dependiendo de la aplicaci´on, una etiquetas puede tener componentes adicio-nales como un sensor de temperatura y bater´ıa. Las etiquetas RFID pueden ser categorizadas de acuerdo a dos de sus caracter´ısticas [8]: a) la forma en que obtienen la energ´ıa para su operaci´on, y b) el tipo de memoria que utilizan para almacenar la informaci´on.
De acuerdo a la forma en que obtienen energ´ıa, las etiquetas se clasifican en activas o pasivas. Las etiquetas activas son aquellas que tienen incorporado una fuente de alimentaci´on, que puede ser una bater´ıa. Al tener una fuente de energ´ıa incorporada, da ciertas ventajas como requerir un interrogador de menor potencia, transmitir informaci´on a mayor distancia, y tener una memoria de mayor capacidad. Las desventajas de estas etiquetas es que tie-nen un costo mucho mayor. En el caso de etiquetas pasivas, estas obtietie-nen la energ´ıa necesaria para su funcionamiento de la se˜nal enviada por el inte-rrogador. Estas etiquetas son m´as sencillas y peque˜nas, y por tanto menos costosas que las activas.
De acuerdo al tipo de memoria que usan, pueden ser de memoria de s´olo lectura o de memoria re-escribible. Las etiquetas de s´olo lectura, son etique-tas que son programadas una sola vez, posiblemente por el fabricante de la
1.2 Etiquetas SAW RFID 7
etiqueta, y la etiqueta no puede volver a ser programada. Las etiquetas re-escribibles, tambi´en conocidas como Smart, tienen una mayor flexibilidad que su contraparte de s´olo lectura, puesto que la informaci´on contenida puede ser modificada.
1.2.
Etiquetas SAW RFID
Las etiquetas SAW RFID son etiquetas que su principio de operaci´on se basa en la micro-ac´ustica de cristales piezoel´ectricos, m´as a´un, hace uso de las ondas ac´usticas superficiales (Surface Acoustic Waves), de ah´ı su nombre, y del acople entre las propiedades el´ectricas y mec´anicas en estos cristales. Las etiquetas SAW RFID no hacen uso de circuitos integrados, por tanto son etiquetas totalmente pasivas que no requieren de ninguna fuente de poder DC, ya que lo ´unico que hacen es reflejar la se˜nal de interrogaci´on de una forma codificada. Esta es la principal ventaja de las etiquetas SAW REFID, y como consecuencia la potencia de la se˜nal de interrogaci´on requerida es me-nor, la potencia es del orden de 100 veces menor a la requerida por etiquetas basadas en circuitos integrados.[9]
Otras ventajas de las etiquetas SAW RFID, respecto a las etiquetas pasivas basadas en circuitos integrados, que la hacen atractivas son[10]:
Las etiquetas SAW RFID operan con pulsos de radiofrecuencia de bajo nivel del orden de 10mW. Las etiquetas basadas en circuitos integrados requieren una radiaci´on continua de algunos vatios.
Las etiquetas SAW RFID operan en la banda de 2.45 GHz, cumplien-do con las regulaciones de emisi´on en todo el mundo. Las basadas en circuitos integrados requieren certificaciones espec´ıficas.
Las etiquetas SAW RFID se pueden colocar en objetos met´alicos. Los sistemas de etiquetas SAW RFID logran mayor penetraci´on dentro de estantes que contienen objetos met´alicos o con l´ıquidos.
Debido a la baja potencia de radiaci´on, los lectores de etiquetas SAW tienen sustancialmente mayor resistencia a la interferencia.
El proceso de lectura de una etiqueta SAW permite una medida directa y precisa de la temperatura de la etiqueta. Las etiquetas SAW han mostrado tener una capacidad inherente para operar como sensores.
8 1.2 Etiquetas SAW RFID
Las etiquetas SAW son muy robustas y pueden operar en ambientes agresivos, por ejemplo, puede soportar rayos gamma y operar en altas temperaturas.
El principio f´ısico que rige el funcionamiento de los dispositivos SAW es la piezoelectricidad. En t´erminos generales, esto es un acople entre las propie-dades el´ectricas y mec´anicas del material. En ciertos cristales diel´ectricos, la aplicaci´on de un esfuerzo mec´anico genera una polarizaci´on el´ectrica, y an´alogamente, la aplicaci´on de un campo el´ectrico resulta en una deforma-ci´on mec´anica. Esta propiedad es usada en muchos dispositivas para obtener una respuesta mec´anica a partir de una el´ectrica, o vice versa[9]. En los dis-positivos SAW la transducci´on entre se˜nales ac´ustica y el´ectricas se logra uti-lizando un transductor interdigital (IDT), que consistente en dos estructuras met´alicas con forma de peinilla entrelazadas en la superficie del piezoel´ectrico [11].
El principio de operaci´on de una etiqueta SAW RFID basada en reflectores se muestra de manera esquem´aticamente en la figura 1. El lector env´ıa un pulso electromagn´etico, la se˜nal de interrogaci´on, y es captada por la antena de la etiqueta, que est´a conectada directamente al IDT. El IDT transforma la se˜nal el´ectrica en una onda ac´ustica superficial, la cual es una onda mec´anica. El pulso SAW se propaga en la superficie del sustrato, que usualmente est´a hecho de un material con una fuerte piezoelectricidad, como por ejemplo el niobato de litio. El pulso SAW es parcialmente reflejado y parcialmente transmitido por cada uno de los reflectores ubicados en determinadas posiciones precisas, posiciones que determinan el c´odigo de la etiqueta. Estos reflectores consisten en bandas met´alicas en la superficie del sustrato. Los pulsos SAW reflejados que regresan al IDT contienen la codificaci´on basada en la posici´on de los reflectores. Es decir, este m´etodo de codificaci´on es basado en el tiempo de retraso de los pulsos reflejados, y se conoce como modulaci´on por posici´on de pulso (PPM). M´as adelante se explicar´an otras formas de codificar una etiqueta SAW, pero la de mayor inter´es son las etiquetas codificadas con PPM. Finalmente, cuando el tren de pulsos SAW reflejado regresa al IDT, la se˜nal ac´ustica se reconvierte en una se˜nal el´ectrica y retransmitida por la antena. [9]
Estas etiquetas emplean l´ıneas de retrasos de SAW y simplemente reflejan la se˜nal de interrogaci´on en una forma modificada de acuerdo con la informaci´on de identificaci´on almacenada en la etiqueta [9]. Las etiquetas SAW generan
1.2 Etiquetas SAW RFID 9
Figura 1: Principio de funcionamiento de una etiqueta SAW. Tomado de [9] p´ag. 15.
una respuesta a cualquier nivel de potencia, usualmente 3 ordenes de mag-nitud por debajo que la requerida por las etiquetas con circuitos integrados [12].
1.2.1. Codificaci´on por posicionamiento en el tiempo
La codificaci´on por posicionamiento en el tiempo (PPM) es la m´as sencilla y directa, y es el m´etodo m´as usado en etiquetas SAW comerciales [13]. En este esquema de codificaci´on, el tiempo total de retraso es dividido en espacios de tiempo de cierta duraci´on. La duraci´on de cada espacio de tiempo es aproximadamente igual a la duraci´on de los pulsos. A 2.45 GHz, la banda t´ıpica usada es de 40 MHz, por tanto el ancho de los espacios de tiempo de 25 ns. Los espacios de tiempo forman grupos de por ejemplo 5 espacios. En una etiqueta con estos grupos, los primeros 4 espacios de cada grupo es ocupado por un reflector, mientras que el quinto espacio se deja vac´ıo. De esta forma, cada grupo tiene 4 posibles posiciones y el total de c´odigos diferentes posibles es 4n, donde n es el n´umero de reflectores que posee la etiqueta. As´ı, diez
reflectores podr´an dar alrededor de 106 c´odigos diferentes. Cuando todos los reflectores son colocados en l´ınea en un camino ac´ustico, la longitud de una etiqueta con 10 reflectores es de aproximadamente 2.5 mm. Las ventajas de esta codificaci´on es que siempre se tiene la misma cantidad de reflectores, haciendo f´acil el dise˜no de la etiqueta con amplitudes uniformes de la se˜nal
10 1.2 Etiquetas SAW RFID
de respuesta, y para el lector el problema se simplifica a buscar respuestas individuales en un grupo de espacios de tiempo. [14]
Para maximizar el n´umero de c´odigos, en la modulaci´on PPM, se deben usar de 3 a 4 espacios de tiempo. Sin embargo, en etiquetas reales se utilizan gru-pos decimales. En esos esquemas, un reflector puede ocupar diez gru-posiciones diferentes. Las etiquetas SAW comerciales disponibles tienen una capacidad de 10000 c´odigos diferentes, lo que corresponde a 4 reflectores en un posicio-namiento decimal.
1.2.2. Codificaci´on por fase
Para la modulaci´on PPM la posici´on exacta de un reflector, basta con que el reflector est´e dentro del espacio de tiempo correspondiente. Un reflector usualmente consiste en unos cuantos electrodos que t´ıpicamente tienen de 0.4 a 0.6 µm de ancho, por tanto mucho m´as angosto que el espacio de tiempo que ocupa. Un espacio de tiempo de 25 ns corresponde a alrededor de 50 µm. Si la fase de los pulsos reflejados puede medirse con precisi´on, la capacidad de codificaci´on puede incrementarse significativamente. La codificaci´on por fase se ha discutido por mucho a˜nos pero a´un no se ha implementado en productos actuales. La idea de la codificaci´on por fase es sencilla: haciendo un peque˜no desplazamiento de los reflectores, la fase se puede cambiar implementando as´ı la codificaci´on por fase. Si se desplaza los reflectores m´ultiplos de λ/8 se tendr´an cambios de fase de 90°, as´ı cada reflector podr´a tener 4 fases diferentes y la cantidad de c´odigos posibles para la etiqueta con 4 reflectores y diez espacios de tiempo es de 2.56 millones [15].
1.2.3. Codificaci´on por frecuencia ortogonal (OFC)
La codificaci´on por frecuencia ortogonal (OFC) fue propuesta y descrita por Malocha en [16]. En esta metodolog´ıa se utilizan reflectores de banda angosta cuidadosamente dise˜nados de tal forma que cuando un reflector tiene m´axima reflexi´on, la reflexi´on de los otros es cercana a cero. Este sistema permite una reducci´on en las p´erdidas, debido a que los reflectores pueden ser fuertes. Esta aproximaci´on dif´ıcilmente se puede usar para etiquetas SAW que requieran un gran n´umero de c´odigos [11].
1.3 M´etodos num´ericos 11
1.3.
M´
etodos num´
ericos
Para poder dise˜nar un dispositivo SAW, es necesario caracterizar de manera precisa los par´ametros de propagaci´on y cuantificar los efectos de las varia-ciones de manufactura. Una estrategia cl´asica consiste en una caracterizaci´on experimental usando un conjunto de dispositivos de prueba. Una de las prin-cipales dificultades de esta estrategia experimental es la exactitud/precisi´on de las mediciones tanto geom´etricas como el´ectricas. Esta estrategia implica la manufactura de nuevos dispositivos de prueba, cada vez que sea usada una nueva configuraci´on. M´etodos num´ericos precisos ventajosamente reemplazan los experimentos [17]. La limitaci´on est´a en el tama˜no m´aximo posible del problema que se pueda solucionar, que depender´a en gran medida del m´etodo escogido y de los recursos computacionales disponibles.
El objetivo de este trabajo de grado de maestr´ıa es lograr la simulaci´on 3D de etiquetas SAW RFID (codificadas en tiempo) en el dominio del tiempo usando computaci´on de alto desempe˜no, el cual es un problema computacio-nalmente grande debido a que el tama˜no de las etiquetas es del orden de 103
veces la longitud de la onda ac´ustica [18], por tanto el m´etodo usado para resolver el problema debe cumplir con las siguientes tres caracter´ısticas: que el m´etodo solucione el problema en el dominio del tiempo, que el n´umero de operaciones necesarias incremente lentamente con el n´umero de variables, y que permita el uso de computaci´on de alto desempe˜no.
Los softwares disponibles para la simulaci´on de dispositivos SAW son SAWLAB-CU y FemSaw. SAWLAB-SAWLAB-CU es un software de libre distribuci´on desarro-llado en los laboratorios de la Universidad de Chiba para la simulaci´on de dispositivos SAW y STW. El software completo, incluyendo las subrutinas matem´aticas, es distribuido en forma de c´odigo fuente en FORTRAN, inclu-yendo los ejemplos de prueba y el manual de uso. Las funciones y aplicaciones del software son discutidas en detalle en [19]. Este software tiene la limitante que s´olo permite la caracterizaci´on en frecuencia de dispositivos con estruc-tura peri´odica en 2D. Por el otro lado, FemSaw es un software licenciado desarrollado por GVR Trade SA1. Este software se desarroll´o para el an´alisis de dispositivos SAW. Debido a que este software utiliza el m´etodo FEM/-BEM, solo permite el an´alisis directo en frecuencia, por tanto para el an´alisis temporal se realiza a trav´es de la transformada r´apida de Fourier, y tambi´en tiene la limitante de realizar simulaciones en dos dimensiones.
Los principales m´etodos usados para la simulaci´on de piezoel´ectricos son:
12 1.3 M´etodos num´ericos
M´etodo de elementos finitos (FEM: Finite Element Method): Rahman, Langtangen y Barnes en [20] describen y eval´uan una estrategia de soluci´on num´erica para simular ondas ac´usticas superficiales. El modelo propuesto discretiza las escuaciones espacialmente usando FEM, y en el tiempo usando diferencias finitas. Y finalmente presentan resultados satisfactorios de simulaciones tanto en 2D como en 3D.
T´ecnica de integraci´on finita (FIT: Finite Integration Technic): Mar-klein en [21] realiza una revisi´on unificada del modelamiento num´erico, en el dominio del tiempo, para ondas ac´usticas, electromagn´eticas, elas-todin´amicas y de la combinaci´on de ellas, usando FIT.
Diferencias finitas en el dominio del tiempo (FDTD: Finite Differen-ce Time Domain): Peter Smith en [22] muestra c´omo FDTD puede ser aplicado para el an´alisis de propagaci´on de SAWs en sustratos pie-zol´ectricos. King-Yuen Wong en [23] usa FDTD para la simulaci´on de filtros SAW. Omar Nova en [18] presenta la simulaci´on de una etiqueta SAW RFID usando FDTD. Sin embargo, hasta el momento las publica-ciones relacionadas con simulaci´on de piezoel´ectricos usando FDTD se limitan a dos dimensiones. En [24] se presenta simulaciones con FDTD para Ba2N aN b5O15, Bi4Ge3O12 y Bi12GeO20, mostrando inestabilidad
para Bi4Ge3O12. A la fecha, el autor no consigui´o publicaciones en el
que se haga un estudio y an´alisis de la estabilidad m´etodo. Otro tema importante en el m´etodo son las condiciones de frontera absorbente. En FDTD la m´as usada es el PLM (Perfect Matching Layer), que fue propuesto por primera vez por Berenger en 1994 en [25] para ondas elec-tromagn´eticas, y posteriormente, W. C. Chew en [26] aplica la misma idea de Berenger para las ondas elastodin´amicas.
Actualmente, el m´etodo de FDTD es el m´as popular para la soluci´on de problemas en el dominio del tiempo. Un indicativo del inter´es que ha gana-do el m´etodo, son los cientos de art´ıculos, relacionados al tema, publicados cada a˜no alrededor del mundo [27]. Las principales caracter´ıstica que hacen atractivo al m´etodo son [27]:
FDTD no usa ´algebra lineal. Al usar expresiones completamente expl´ıci-tas, FDTD evita las dificultades con el ´algebra lineal que limita el ta-ma˜no de los modelos de elementos finitos y de ecuaciones integrales en el dominio de la frecuencia.
1.4 Computaci´on de alto desempe˜no 13
FDTD es una aproximaci´on sistem´atica. Con FDTD, modelar una nue-va estructura solo requiere de la generaci´on del mallado del problema, y no la reformulaci´on de ecuaciones, como en los m´etodos que utilizan funciones de Green.
FDTD modela de forma natural el comportamiento impulsivo. Por ser una t´ecnica en el dominio del tiempo, FDTD calcula la respuesta al impulso de un sistema.
Paralelizaci´on del m´etodo. En el m´etodo FDTD la actualizaci´on de cada celda s´olo requiere la informaci´on de los campos en el pasado, por tanto todas las celdas pueden ser actualizadas al mismo tiempo. Escalabilidad. La cantidad de operaciones requeridas en FDTD es del orden de N4/3, donde N es la cantidad de celdas. En problemas
gran-des resulta en muchas menos operaciones que en otros m´etodos que la cantidad de operaciones requeridas es del orden de N2
Crecimiento r´apido de la capacidad de memoria de los computadores. Aunque esto influencia positivamente a todos los m´etodos num´ericos, es particularmente ventajoso para el FDTD, ya que se basa en la dis-cretizaci´on del volumen y requiere del muso de una gran cantidad de memoria RAM.
No se encuentran publicaciones en simulaci´on de piezoel´ectricos usando FDTD con computaci´on de alto desempe˜no, pero si para ondas electromagn´eticas, por ejemplo en [27], [28] y [29], y para ondas el´asticas, por ejemplo en [30], sin embargo, la idea subyacente es la misma.
1.4.
Computaci´
on de alto desempe˜
no
Computaci´on de Alto Desempe˜no (HPC) hace referencia a todas las herra-mientas, tanto hardware como software, que se utilizan para lograr solucionar problemas computacionalmente pesados, que usando una computadora con-vencional (una computadora de hogar o un port´atil) no ser´ıa viable. Por ejemplo, la radicaci´on en la cabeza por un celular es un problema que requie-re del uso de computaci´on de alto desempe˜no [29], ver Figura 2. El tama˜no de este problema es aproximadamente de 50 × 50 × 50 longitudes de ondas, el cual es un tama˜no comparable a la de la etiqueta de aproximadamente
14 1.4 Computaci´on de alto desempe˜no
Figura 2: Radiaci´on en la cabeza por un celular a 2.5 GHz (50 × 50 × 50λEM). Tomado de [29].
∼ 1000λa
∼ 60λa
∼ 3λa
Figura 3: Tama˜no de una etiqueta SAW RFID.
1000 × 60 × 3 longitudes de ondas, ver Figura 3, mostrando la necesidad de usar computaci´on de alto desempe˜no en la simulaci´on de la etiqueta.
La tendencia actual en la industria de semiconductores es doblar el n´umero de unidades de procesamiento, en ves de duplicar la velocidad de procesamiento, debido a limitaciones f´ısicas en la disipaci´on de calor. Lo que ha llevado a una arquitectura de centros de c´omputo masivamente paralelos. Esto refleja que el paradigma tradicional de programas secuenciales no son adecuados bajo esta nueva arquitectura [31].
Los dispositivos de procesamiento con los que se cuenta hoy d´ıa son chips multi-procesadores (hasta 12 procesadores en un s´olo chip), GPU, FPGA, Co-procesadores (Intel), entre otros. Los de uso m´as com´un son los chips multiprocesadores y GPUs [29]. El uso de FPGA en computaci´on de alto desempe˜no no es muy com´un debido a que un desarrollo en una FPGA es m´as complejo, en especial cuando se trata de operaciones con n´umeros flotantes, sin embargo, el dise˜no e implementaci´on de FPGA en computaci´on de alto
1.4 Computaci´on de alto desempe˜no 15
desempe˜no se describe en [32], y en [27] se describe el uso de FPGAs para FDTD.
Los principales fabricantes de GPUs son Nvidia Y AMD. Nvidia tiene una linea de GPUs especializadas para computaci´on cient´ıfica y es la serie de GPUs Tesla. En cuanto a la programaci´on se cuenta principalmente con dos alternativas: OpenCL 2 (Open Computing Languaje) y CUDA 3 (Compute
Unified Device Architecture). La segunda (CUDA) s´olo funciona con GPUs de Nvidia.
Para paralelizar entre diferentes procesadores se cuenta principalmente con dos librer´ıas: OpenMP4 (Open Multiprocesing) y MPI (Message Passing In-terface). En la siguiente tabla se resumen las principales caracter´ısticas de cada una [29]
Dificultad de programaci´on
Tipo de memoria Escalabilidad
OpenMP Baja Compartida Baja
MPI Media Distribuida Alta
Las principales ventajas de OpenMP es que es f´acil de programar y depu-rar, las directivas pueden ser agregadas progresivamente, el programa puede seguir ejecut´andose como c´odigo serial, el c´odigo es f´acil de entender y mante-ner, sin embargo, solo puede correr en computadores con memoria compartida y su principal uso es en la paralelizaci´on de bucles. [33]
Las principales ventajas de MPI es que puede correr en arquitecturas con memoria compartida o distribuida, cada proceso tiene su propia memoria, y el costo de un servidor con memoria distribuida es menor que el de un servidor con una sola memoria compartida. Las desventajas est´an en que requiere de m´as cambios en el c´odigo para pasar de serial a paralelo, la dificultad de depuraci´on del c´odigo es mayor, y el desempe˜no es limitado por la red de comunicaci´on entre los diferentes nodos. [29]
Actualmente una gran limitante en los cluster HPC est´a en la transferencia de datos, desde la transferencia de datos en el procesador desde los regis-tros hasta las ALUs, hasta la transferencia de datos de un nodo a otro. El cuello de botella suele estar en la red que comunica los diferentes nodos en
2 https://www.khronos.org/opencl/
3http://www.nvidia.com/object/cuda home new.html 4http://www.openmp.org/
16 1.4 Computaci´on de alto desempe˜no
un cluster. Actualmente los cluster de computaci´on de alto desempe˜no usan InfiniBand (IB). Las especificaciones de esta tecnolog´ıa permite una trans-ferencia de datos de 25[Gb/s] en cada sentido, aunque comercialmente se consiguen modems y adaptadores que duplican y cuadruplican la capacidad del canal [34].
El desempe˜no de un cluster se mide por la cantidad de operaciones de punto flotantes (flop) por segundo capaz de realizar. Para evaluar el desempe˜no de un cluster hay pruebas de referencia permiten medir los flops por segundo pico. La m´etrica inicial que se utilizaba para medir el desempe˜no de los su-percomputadores era la cantidad de n´ucleos, sin embargo, a inicios de los 90s se vi´o la necesidad de una nueva medida para medir de manera m´as precisa el desempe˜no de un supercomputador. As´ı que en 1993 fue propuesto un bench-mark usando LINPACK, y la lista de los supercomputadores m´as r´apidos se publican en TOP500 5. En la lista de noviembre de 2013, el primer puesto
lo tiene el Tianhe-2 con un desempe˜no de 33862[T f lop/s]. Este supercompu-tador fue desarrollado por la Universidad Nacional de Defensa Tecnol´ogica de China, cuenta con un total de 3’120.000 n´ucleos y un consumo de potencia de 17808[kW ].
2. Ondas Electroac´usticas en Medios Piezoel´ectricos 17
2.
Ondas Electroac´
usticas en Medios
Piezo-el´
ectricos
2.1.
Ondas El´
asticas en S´
olidos
Con un entendimiento de la propagaci´on de ondas el´asticas y una revisi´on de las ecuaciones parciales gobernantes explican la complejidad de resolver problemas de ondas ac´usticas superficiales.
Las ondas no son m´as que energ´ıa que se propaga de un punto a otro en un medio. Las ondas el´asticas en particular son las que se propagan a trav´es de un medio sin causar una deformaci´on permanente en ´el. Una clasificaci´on muy b´asica de las ondas el´astica resulta en dos tipos, las ondas longitudinales y las ondas transversales [35]. Esta clasificaci´on es basada en la polarizaci´on del desplazamiento de part´ıcula en el medio.
Ondas longitudinales: Estas tambi´en son conocidas como ondas de com-presi´on, y la propagaci´on de la onda toma lugar en la misma direcci´on que el desplazamiento de part´ıcula.
Ondas transversales: En las ondas transversales el desplazamiento de part´ıcula es perpendicular al vector de onda, y a diferencia de las ondas longitudinales, no hay variaci´on en el volumen.
Sin embargo, en muchos casos pr´acticos, como el de las ondas ac´usticas super-ficiales, la aproximaci´on sencilla de propagaci´on de ondas antes mencionada no es suficiente, el desplazamiento de part´ıcula en el medio usualmente es complejo y es una combinaci´on de estos dos tipos de ondas.
La elasticidad es concerniente a las fuerzas internas en un s´olido cuando las part´ıculas de un s´olido se han desplazado por fuera de su punto de equilibrio. En este contexto, part´ıcula hace referencia a un volumen muy peque˜no del material, pero lo suficientemente grande que solo se tiene en cuenta los efectos macrosc´opicos de las interacciones at´omicas. Este desplazamiento se puede representar con el campo u(r, t), el cual es una variable continua que indica el desplazamiento de la part´ıcula ubicada en la posici´on r. Y la deformaci´on del material en t´erminos del desplazamiento de part´ıcula se define como
Sij(r, t) = 1 2 ∂ui(r, t) ∂rj +∂uj(r, t) ∂ri , i, j = x, y, z. (2.1)
18 2.1 Ondas El´asticas en S´olidos
Con esta definici´on, cualquier desplazamiento o rotaci´on del material como un todo no causa deformaci´on, y la deformaci´on est´a relacionada con las fuerzas internas. La deformaci´on es un tensor de segundo orden y es sim´etrico, tal que
Sij(r, t) = Sji(r, t). (2.2)
Por tanto, solo seis de los nueve componentes son independientes.
En un material lineal las fuerzas internas son proporcionales a la deformaci´on del material, por tanto el esfuerzo tambi´en debe ser un tensor de segundo orden representado por T(r, t). La componente Tij(r, t) es la fuerza por
uni-dad de ´area que se aplica al plano normal a j en la direcci´on i, por tanto, los esfuerzos cortantes son cuando i 6= j, y los esfuerzo axiales son cuando i = j. La relaci´on entre el tensor de deformaci´on y el tensor de esfuerzos, la ley de Hook generalizada, en la notaci´on abreviada de Einstein, esta dada por
Tij = cijklSkl, i, j, k, l = x, y, z, (2.3)
donde cijkles el tensor de rigidez del material, y es un tensor de cuarto orden
con 81 elementos. La simetr´ıa de S y de T implica que
cijkl = cjikl = cjilk = cijlk = cklij. (2.4)
Por tanto, solo 21 elementos de los 81 son independientes. Estos elementos son propiedades f´ısicas del material en consideraci´on, as´ı que el n´umero de elementos independientes puede ser reducido a´un m´as dependiendo de la simetr´ıa del material, hasta dos elementos independientes en el caso de un material isotr´opico.
Adem´as de la ley de Hook, en un material tambi´en se debe cumplir las leyes de Newton, que en t´erminos del desplazamiento de part´ıcula y del tensor de esfuerzos, la ecuaci´on de movimiento queda expresada como
ρ∂ 2u i ∂t2 = ∂Tij ∂rj , (2.5)
donde ρ es la densidad del material. El lado izquierdo de la ecuaci´on viene de la masa por la aceleraci´on, y el lado derecho de la suma de fuerzas. Al combinar la ecuaci´on del movimiento con las relaciones constitutivas dadas en las ecuaciones 2.1 y 2.3, se obtiene la ecuaci´on de onda
ρ∂ 2u i ∂t2 = c E ijkl ∂2u k ∂rj∂rl . (2.6)
2.1 Ondas El´asticas en S´olidos 19
En la anterior ecuaci´on de onda la velocidad de los diferentes tipos de ondas est´a dada por la ra´ız de los valores propios de cE divididos por la densidad del
material. Y las diferentes polarizaciones est´an dadas por los vectores propios de cE.
En algunos casos la ley de Hooke no describe completamente las respues-ta de un s´olido cuando este es deformado. Algunos materiales se polarizan el´ectricamente cuando son deformados, este fen´omeno es llamado efecto pie-zoel´ectrico directo. El efecto piezoel´ectrico inverso, es cuando un s´olido es deformado cuando es sometido a un campo el´ectrico. Las relaciones consti-tutivas en un material piezoel´ectrico est´an dadas por
Tij = cEijklSkl− ekijEk, (2.7)
Di = SijEj+ eijkSjk, (2.8)
donde E es el campo el´ectrico, D es el desplazamiento el´ectrico, S es la
permitividad del material a deformaci´on constante, y eijk son las constantes
piezoel´ectricas de esfuerzos.
Si se combinan las anteriores relaciones constitutivas de los piezoel´ectricos (ecuaciones 2.7 y 2.8) con la ecuaci´on de movimiento 2.5 se obtiene la si-guiente ecuaci´on de onda
ρ∂ 2u i ∂t2 = c E ijkl ∂2uk ∂rj∂rl + ∂ekijEk ∂rj . (2.9)
Esta ecuaci´on de onda describe completamente la propagaci´on de ondas en cualquier material piezoel´ectrico.
Aprovechando la simetr´ıa en los tensores involucrados, las anteriores ecua-ciones pueden ser escritas de forma matricial. La forma matricial es fre-cuentemente usada porque reduce la cantidad de elementos que deben ser especificados. De esta forma los tensores de rango 2 se convierten en vectores y solo requieren de un ´ındice para especificar un elemento. La notaci´on que generalmente se sigue se muestra en la siguiente tabla.
I ij 1 xx 2 yy 3 zz 4 yz, xy 5 xz, zx 6 xy, yx
20 2.1 Ondas El´asticas en S´olidos
De esta forma, el tensor de esfuerzos pasa de ser una matriz de 3 × 3 con nueve elementos a un vector de 6 elementos como se muestra a continuaci´on
T = Txx Txy Txz Tyx Tyy Tyz Tzx Tzy Tzz = T1 T6 T5 T6 T2 T4 T5 T4 T3 −→ T = T1 T2 T3 T4 T5 T6 . (2.10)
Y el tensor de rigidez de rango 4 es ahora una matriz de 6 × 6, donde el elemento cE
IJ de la matriz de rigidez corresponde al elemento cEijkl del tensor
de rigidez, por ejemplo, cE14 = cExxyz.
Utilizando la notaci´on matricial la ecuaci´on 2.1 puede ser escrita de la si-guiente forma
S = ∇su, (2.11)
donde el operador de gradiente sim´etrico (∇s) se define como
∇s := ∂ ∂x 0 0 0 ∂ ∂y 0 0 0 ∂ ∂z 0 ∂ ∂z ∂ ∂y ∂ ∂z 0 ∂ ∂x ∂ ∂y ∂ ∂x 0 . (2.12)
Siguiendo la notaci´on matricial, las relaciones constitutivas de las ecuaciones 2.7 y 2.8 quedan expresadas como
T = cES − e0E, (2.13)
D = SE + eS. (2.14)
Y la ecuaci´on de movimiento en 2.5 queda ρ∂
2u
2.2 Ecuaciones Gobernantes en un Piezoel´ectrico 21
donde (∇·) es el operador de divergencia definido como
(∇· ) := ∂ ∂x 0 0 0 ∂ ∂z ∂ ∂y 0 ∂ ∂y 0 ∂ ∂z 0 ∂ ∂x 0 0 ∂ ∂z ∂ ∂y ∂ ∂x 0 . (2.16)
2.2.
Ecuaciones Gobernantes en un Piezoel´
ectrico
En un material piezoel´ectrico, el acople entre los campos el´asticos y los cam-pos electromagn´eticos introduce t´erminos el´ectricos en el desarrollo de las ecuaciones mec´anicas, y t´erminos mec´anicos en el desarrollo de las ecua-ciones de Maxwell, como ya se mostr´o anteriormente. La distribuci´on de estos campos puede ser determinada solo resolviendo de forma simult´anea estas ecuaciones acopladas. En la pr´actica, como los campos el´asticos im-plican desplazamientos del material, la velocidad con la que los esfuerzos y deformaciones se propagan son mucho menor que la de los campos electro-magn´eticos. La velocidad de las ondas el´asticas es de 104 a 105 veces menor
que la velocidad de las ondas electromagn´eticas [35]. Por consiguiente, el campo magn´etico asociado con las vibraciones mec´anicas son despreciables, implicando que el campo electromagn´etico asociado a un campo el´astico es cuasiest´atico, as´ı que la ecuaci´on de Maxwell se reduce a
∇ × E = −∂B
∂t ≈ 0. (2.17)
Las ´unicas variables electromagn´eticas necesarias para la descripci´on de ma-terial piezoel´ectrico son el campo el´ectrico E y la densidad de flujo el´ectrico D. Y al igual que en el caso electrost´atico, el campo el´ectrico es derivado del potencial escalar Φ como
E = −∇Φ. (2.18)
Introduciendo la variable de velocidad de part´ıcula v, definido como v := ∂u/∂t, y derivando y combinando la ecuaci´on 2.13 con 2.14 se obtiene el siguiente par de ecuaciones que permiten evolucionar el sistema en el tiempo
ρ∂v ∂t = ∇ · T, (2.19) ∂T ∂t = c D∇ sv − e0βS ∂D ∂t , (2.20)
22 2.2 Ecuaciones Gobernantes en un Piezoel´ectrico ∂E ∂t = −β Se∇ s ∂v ∂t + β S∂D ∂t , (2.21)
donde cD = cE + e0βSe, y βS es el inverso de la permitividad el´ectrica
3. Modelo de Diferencias Finitas en el Dominio del Tiempo 23
3.
Modelo de Diferencias Finitas en el
Domi-nio del Tiempo
Con el objetivo de caracterizar etiquetas SAW RFID se desarroll´o un modelo tridimensional de diferencias finitas en el dominio del tiempo. A continuaci´on se procede a describir el modelo desarrollado.
3.1.
Presentaci´
on del problema
La geometr´ıa del problema corresponde a la de una etiqueta SAW en un sustrato de tama˜no infinito. Se asume que el sustrato de la etiqueta es la mitad del espacio (z ≥ 0) limitado por una superficie libre en contacto con el aire. En la superficie de la etiqueta se ubican el IDT y los reflectores. El IDT transduce las se˜nales el´ectricas en ondas mec´anicas, y viceversa, y los reflectores codifican la etiqueta de acuerdo a la posici´on de los mismos. Para adaptar este problema a un modelo num´erico se deben hacer supuestos pa-ra simplificar el modelo y hacer posible su implementaci´on. Para el modelo num´erico, se asume que la etiqueta es la mitad del espacio semiinfinito, limi-tado s´olo por el plano z = 0. As´ı, los efectos debidos a las dimensiones finitas de las etiquetas reales no son tenidas en cuenta. El sustrato de la etiqueta se asume lineal y sin p´erdidas. En el modelo num´erico las variables mec´anicas y el´ectricas son evaluadas en un conjunto de puntos discretos del espacio. Para el esquema del modelo de diferencias finitas, una grilla c´ubica regular es usada. Para el modelo num´erico, el medio espacio semiinfinito debe ser truncado y debe implementarse las condiciones de fronteras adecuadas para evitar reflexiones artificiales de las celdas exteriores. La figura 4 muestra de forma esquem´atica el modelo de diferencias finitas tridimensional. El espacio de soluci´on est´a limitado en la parte superior por una superficie libre, y en todos los otros lados por una capa perfectamente adaptada (PML).
3.2.
Concepto de diferencia finita
El m´etodo FDTD es una t´ecnica num´erica basada en el concepto de diferencia diferencia finita usado para resolver ecuaciones diferenciales en el dominio del espacio y del tiempo. Primero se introduce el concepto de diferencia
24 3.2 Concepto de diferencia finita
PML
IDT
Re ectores
SAW
Super cie libre
x
y
z
Figura 4: Geometr´ıa del problema.
finita, para luego desarrollar el modelo FDTD del problema en cuesti´on. El incremento de una funci´on f (ξ) en el punto ξ puede ser expresado como
∆f (ξ) = f (ξ + ∆ξ) − f (ξ). (3.1)
La raz´on de incremento de la funci´on f (ξ) respecto a la variable ξ puede ser escrita como
∆f (ξ)
∆ξ =
f (ξ + ∆ξ) − f (ξ)
∆ξ . (3.2)
Permitiendo que el incremento ∆ξ de la variable independiente se aproxime a cero, la derivada de la funci´on f (ξ) respecto a ξ puede se escrita como
df (ξ) dξ = l´ım∆ξ→0 ∆f (ξ) ∆ξ = l´ım∆ξ→0 f (ξ + ∆ξ) − f (ξ) ∆ξ . (3.3)
As´ı que, cuando el incremento ∆ξ es lo suficientemente peque˜no, la deriva-da de la funci´on f (ξ) respecto a ξ puede ser aproximada por la raz´on de diferencias, esto es
df (ξ)
dξ ≈
∆f (ξ)
∆ξ . (3.4)
Hay tres formas diferentes con las que se puede aproximar la derivada de una funci´on f (ξ), estas son
3.2 Concepto de diferencia finita 25
Diferencia hacia adelante: ∆f ∆ξ ξ = f (ξ + ∆ξ) − f (ξ) ∆ξ (3.5)
Diferencia hacia atr´as: ∆f ∆ξ ξ = f (ξ) − f (ξ − ∆ξ) ∆ξ (3.6) Diferencia centrada: ∆f ∆ξ ξ = f (ξ + ∆ξ/2) − f (ξ − ∆ξ/2) ∆ξ (3.7)
Expresando las funciones f (ξ + ∆ξ/2) y f (ξ − ∆ξ/2) en el punto ξ en series de Taylor se obtiene f (ξ + ∆ξ/2) = f (ξ) +∆ξ 2 df (ξ) dξ + 1 2! ∆ξ2 22 d2f (ξ) dξ2 + 1 3! ∆ξ3 23 d3f (ξ) dξ3 + . . . (3.8) f (ξ − ∆ξ/2) = f (ξ) −∆ξ 2 df (ξ) dξ + 1 2! ∆ξ2 22 d2f (ξ) dξ2 − 1 3! ∆ξ3 23 d3f (ξ) dξ3 + . . . (3.9)
Sustituyendo las ecuaciones 3.8 y 3.9 en la ecuaci´on de diferencia centrada 3.7 se obtiene ∆f ∆ξ ξ = df (ξ) dξ + 1 3! ∆ξ2 22 d3f (ξ) dξ3 + . . . (3.10)
De la anterior ecuaci´on se puede observar que en la diferencia centrada el error es una funci´on cuadr´atica en ∆ξ. De forma similar, cuando se realiza las series de Taylor para las diferencias en adelanto y atraso, se llega que el error es lineal con ∆ξ. Adem´as, la diferencia en adelanto es siempre inestable, porque trata de predecir el comportamiento futuro de una funci´on con el valor actual y un valor conocido en el pasado. La diferencia centrada, que es la usada com´unmente en el m´etodo de FDTD, es condicionalmente estable. Y la diferencia hacia atr´as es incondicionalmente estable, pero resulta en un esquema impl´ıcito para la actualizaci´on de los campos en el que se hace necesario resolver una ecuaci´on matricial en cada iteraci´on. Por lo anterior, el esquema a escoger ser´a el de diferencias centradas.
26 3.3 Discretizaci´on en el espacio y el tiempo
3.3.
Discretizaci´
on en el espacio y el tiempo
Como ya se describi´o en el Cap´ıtulo 2, las ondas ac´usticas propagadas en un piezoel´ectrico, en la aproximaci´on cuasiest´atica, son descritas por las ecua-ciones 2.19, 2.20 y 2.21. Con este conjunto de ecuaecua-ciones se puede determinar la evoluci´on temporal de los campos. Tambi´en es evidente que la derivada parcial respecto al tiempo de una variable depende de las derivadas parciales respecto al espacio de las otras variables. Al usar las diferencias centradas se llega a un esquema en el que las variables no son conocidas en el mismo punto del tiempo ni del espacio. En la figura 5 se muestra el esquema de evoluci´on temporal al que se llega. Como se puede ver en la figura, el sistema evolucio-na en medios pasos de tiempo (∆t/2). Las variables v y T se actualizan de forma intercalada, cada medio paso de tiempo, usando la informaci´on actual y la informaci´on medio paso de tiempo atr´as. Por otra parte, la densidad de campo el´ectrico D es impuesta, y se asume que tiene la siguiente forma
D(t) = D0 f (t), (3.11)
donde D0 se obtiene de una simulaci´on electrost´atica, y f (t), es una funci´on
escalar que depende del tiempo, usada para variar la densidad de campo el´ectrico en el tiempo.
Figura 5: Evoluci´on temporal del esquema FDTD.
De forma similar al desfase en el tiempo de las variables v y T, el esquema de diferencias centradas lleva a que las variables se conozcan en puntos des-fasados medio delta espacial. El espacio puede ser visto como una nube en los que se ubica una variable, y alrededor de ´esta, a medio delta espacial, se encuentra su variable an´aloga. Es decir, las componentes de v est´an rodeadas
3.3 Discretizaci´on en el espacio y el tiempo 27
de las componentes T, y viceversa, de forma regular, por tanto, es como si el espacio estuviera compuesto de celdas bases, similar a la llamada celda Yee introducida en [27].
La distribuci´on de los campos al interior de la celda se escoge de tal forma que una componente siempre est´e rodeada de las componentes que se necesitan para su actualizaci´on. De esta forma, se puede llegar a la celda base con un distribuci´on de los campos mec´anicos como se muestra en la figura 6. La ubicaci´on de los campos el´ectricos depende de las propiedades piezoel´ectricas del cristal. x y z Vx Vy Vz T1, T2, T3 T4 T5 T6 x z
y
Figura 6: Variables mec´anicas en la celda base.
Para cristales con simetr´ıa C´ubica 23 y ¯43m, Ortor´ombica 222, Tetragonal ¯
42m y 422, y Hexagonal 622, la celda base a la que se llega se muestra en la figura 7. x y z Vx Vy Vz T1, T2, T3 T4, Ex, Dx T5, Ey, Dy T6, Ez, Dz x z
y
Figura 7: Celda base A.
Para cristales con simetr´ıa Ortor´ombica 2mm, Tetragonal 4mm, Hexagonal 6mm, la celda base a la que se llega se muestra en la figura 8.
28 3.3 Discretizaci´on en el espacio y el tiempo x y z Vx Vy Vz T1, T2, T3, Ez, Dz T4, Ey, Dy T5, Ex, Dx T6 x z
y
Figura 8: Celda base B.
Cada celda, con sus variables, pueden ser identificadas un´ıvocamente con tres ´ındices (i, j, k), de tal forma que el centro de la celda (i, j, k) se encuentra en el punto del espacio con coordenadas (i∆x, j∆y, ∆z). De esta forma se utilizar´a la nomenclatura fl
i,j,k para designar el valor de la variable f en la
celda (i, j, k) en el instante de tiempo l∆t.
La ecuaci´on 2.19 siempre tiene la misma forma, ya que no depende de las propiedades del material, y se puede reescribir en las siguientes 3 ecuaciones parciales ∂vx ∂t = 1 ρ ∂T1 ∂x + ∂T5 ∂z + ∂T6 ∂y , (3.12) ∂vy ∂t = 1 ρ ∂T2 ∂y + ∂T4 ∂z + ∂T6 ∂x , (3.13) ∂vz ∂t = 1 ρ ∂T3 ∂z + ∂T4 ∂y + ∂T5 ∂x . (3.14) Utilizando la notaci´on fl
i,j,k, descrita anteriormente, la forma discreta y
3.3 Discretizaci´on en el espacio y el tiempo 29
quedan escritas como
vxl+1 i,j,k = v l x i,j,k + ∆t ρ T1l+1/2 i+1,j,k − T1l+1/2 i,j,k ∆x + T5l+1/2 i,j,k− T l+1/2 5 i,j,k−1 ∆z + T6l+1/2 i,j,k − T6l+1/2 i,j−1,k ∆y , (3.15) vyl+1 i,j,k = v l y i,j,k+ ∆t ρ T2l+1/2 i,j+1,k − T2l+1/2 i,j,k ∆y + T4l+1/2 i,j,k− T l+1/2 4 i,j,k−1 ∆z + T6l+1/2 i,j,k − T6l+1/2 i−1,j,k ∆x , (3.16) vzl+1 i,j,k = v l z i,j,k+ ∆t ρ T3l+1/2 i,j,k+1− T l+1/2 3 i,j,k ∆z + T4l+1/2 i,j,k − T4l+1/2 i,j−1,k ∆y + T5l+1/2 i,j,k − T5l+1/2 i−1,j,k ∆x . (3.17)
Las ecuaciones de actualizaci´on para los esfuerzos se derivan de la ecuaci´on en 2.20, sin embargo el desarrollo de las ecuaciones, la cantidad de elementos en la expresi´on, depende de las propiedades el´asticas y piezoel´ectricas del material en cuesti´on. Por ejemplo, en el caso m´as sencillo, un cristal con
30 3.4 Fronteras
simetr´ıa c´ubica 23, la ecuaciones de actualizaci´on para T1 y de T4 quedan
T1l+1/2 i,j,k = T1l−1/2 i,j,k + ∆t " cE11 v l x i,j,k− v l x i−1,j,k ∆x ! + cE12 v l y i,j,k− v l y i,j−1.k ∆y ! +cE13 v l z i,j,k− v l z i,j,k−1 ∆z !# , (3.18) T4l+1/2 i,j,k = T l−1/2 4 i,j,k+ ∆t " cE44 vl y i,j,k+1− v l y i,j,k ∆z + v l z i,j+1,k− v l z i,j,k ∆y !# − ex4βxx∆t ∂Dx ∂t i,j,k . (3.19)
3.4.
Fronteras
Para la simulaci´on de una etiqueta SAW RFID es necesario derivar las ecua-ciones para cumplir con tres diferentes condiecua-ciones de frontera. Las tres con-diciones de frontera necesarias, como se ilustran a continuaci´on son: fronteras absorbentes, superficie libre, y superficie libre con conductor.
Super cie libre Fronteras
absorbentes Super cie libre
con metal
Figura 9: Condiciones de fronteras
3.4.1. Superficie libre
Una superficie libre es una superficie sobre la cual no hay fuerzas, o bien no hay esfuerzos. Asumiendo que la mitad del espacio definido por z+ es
3.4 Fronteras 31
de material piezoel´ectrico, y que la otra mitad del espacio es vac´ıo, el plano z = 0 es una superficie libre, y por tanto se cumple que
T3|z=0= T4|z=0= T5|z=0= 0 (3.20)
En la celda Yee el esfuerzo axial, la componente T3, queda sobre el plano de
la superficie libre, por tanto la ecuaci´on de actualizaci´on de queda
T3l+1/2 i,j,0 = 0 (3.21)
Mientras que los esfuerzos cortantes T4 y T5 est´an al interior de la celda,
media celda por debajo de la superficie, por tanto no se pueden forzar a 0. Una forma de lograrlo es agregar una capa de celdas en k = −1, y hacer que el promedio sobre la superficie sea cero, esto es
T4l+1/2 i,j,−1+ T l+1/2 4 i,j,0 2 = 0 T5l+1/2 i,j,−1 + T5l+1/2 i,j,0 2 = 0 (3.22)
Despejando para las componentes en k = −1 se obtienen las ecuaciones de actualizaci´on T4l+1/2 i,j,−1 = −T4l+1/2 i,j,0 (3.23a) T5l+1/2 i,j,−1= −T l+1/2 5 i,j,0 (3.23b)
Para lo cual se requiere que T4l+1/2 i,j,0 y T5l+1/2 i,j,0 se actualizan de la forma habitual.
Usando los componentes del esfuerzo en la superficie y en la capa adicional, los componentes del vector de velocidad pueden ser actualizados, incluyendo
32 3.4 Fronteras
los componentes que quedan sobre la superficie. La ´unica componente que no puede ser actualizada es vl+1
z
i,j,−1. Para obtener v
l+1/2 z i,j,−1 se utiliza la ecuaci´on de actualizaci´on de T3l+1/2 i,j,0
y se iguala a 0 para cumplir con las condiciones frontera T3l+1/2 i,j,0 = 0 =cD33∆l ∆z vzl+1 i,j,0− v l+1 z i,j,−1 + cD32∆t ∆y vl+1y i,j+1,0− v l+1 y i,j,0 + cD31∆t ∆x vl+1x i+1,j,0− v l+1 x i,j,0 (3.24) Despejando vzl+1 i,j,−1 se obtiene vl+1z i,j,−1 = v l+1 z i,j,0 + ∆z cD33 cD32 ∆y vyl+1 i,j+1,0− v l+1 y i,j,0 +c D31 ∆x vxl+1 i+1,j,0− v l+1 x i,j,0 (3.25)
3.4.2. Superficie libre con metalizaci´on
Si se tiene una superficie libre en z = 0 con metalizaci´on, las condiciones de frontera que se deben cumplir son
T3|z=0 = T4|z=0 = T5|z=0= 0 (3.26a)
Ex|z=0= Ey|z=0 = 0 (3.26b)
La ecuaci´on de actualizaci´on del campo el´ectrico en la superficie z = 0 queda
Exl+0,5 i,j,0= E l+0,5 y i,j,0 = 0 (3.27)
3.4 Fronteras 33
3.4.3. Fronteras absorbentes con PML
Para modelar la extensi´on infinita del semiespacio, las ondas que alcancen las caras exteriores de la grilla deben ser absorbidas. Para absorber dichas ondas se puede utilizar una PML (Perfectly Matched Layer), que en general es considerada el estado del arte para la terminaci´on de una grilla FDTD. Hay algunas situaciones en las que condiciones de frontera absorbentes espe-cialmente dise˜nadas tengan un mejor desempe˜no que la PML, pero por regla general la mejor condici´on de frontera absorbente es la PML [36]. La teor´ıa detr´as de la PML t´ıpicamente es pertinente al mundo continuo. En el mundo continuo la PML puede tener un comportamiento perfecto para ondas inci-dentes a cualquier ´angulo y frecuencia. Sin embargo, en el mundo discreto, como es el caso del FDTD, siempre se presentan imperfecciones, por ejemplo peque˜nas reflexiones.
Hay muchas formulaciones diferentes para la PML. Sin embargo, en esencia todas las PML act´uan como un material adaptado y con p´erdidas. La capa de material adaptado y con p´erdida es usado para absorber las ondas que viajan hacia fuera del dominio de simulaci´on. La primera formulaci´on de la PML fue propuesta originalmente por B´erenger en 1994 para el caso electromagn´etico en dos dimensiones. Ber´enger propuso dividir cada componente de campo en dos partes, y la componente real del campo era la suma de estas dos partes. Con esta divisi´on logr´o crear un medio anisotr´opico con la velocidad de fase y conductividad necesarios para eliminar las reflexiones en la interfase entre la regi´on PML y la regi´on sin PML[36].
Siguiendo el trabajo de B´erenger, Chew y Liu adaptaron la PML para el caso el´astico. Chew y Liu interpretaron la PML como un cambio de coordenadas en el dominio de la frecuencia [26]. Esto es: dada una onda que se propaga en un medio sin p´erdidas y descrita por el fasor ejkx0, el cambio de coordenada
representa un cambio de variable : x0 → (1 + jα)x, y como consecuencia la onda queda representada por el fasor e−αxejkx, y por tanto es atenuada [30].
La implementaci´on de la PML para la grilla se ejemplificar´a derivando la ecuaci´on de actualizaci´on para vx de la ecuaci´on 3.12. Pasando la ecuaci´on
3.12 del dominio del tiempo al de la frecuencia y realizando el cambio de coordenadas ζ0 → (1 + jΩζ/ω)ζ se obtiene: − jωρvx= 1 1 + jΩx ω ∂T1 ∂x + 1 1 + jΩy ω ∂T6 ∂y + 1 1 + jΩz ω ∂T5 ∂z (3.28)
34 3.4 Fronteras
Para amortiguar de forma independiente los campos en cada una de las di-recciones (x, y y z), la anterior ecuaci´on se divide en tres partes, una para cada t´ermino del lado de la derecha resultando en:
−jωρvxx = 1 1 + jΩx ω ∂T1 ∂x (3.29a) −jωρvxy = 1 1 + jΩy ω ∂T6 ∂y (3.29b) −jωρvxz = 1 1 + jΩz ω ∂T5 ∂z (3.29c) vx = vxx+ vxy + vxz (3.29d)
y al volver al dominio del tiempo se obtiene:
∂ ∂t+ Ωx ρvxx = ∂T1 ∂x (3.30a) ∂ ∂t+ Ωy ρvxy = ∂T6 ∂y (3.30b) ∂ ∂t+ Ωz ρvxz = ∂T5 ∂z (3.30c) vx = vxx+ vxy + vxz (3.30d)
El anterior conjunto de ecuaciones puede ser discretizado usando diferencias finitas centradas y usando la celda base anteriormente mostrada. Como el t´ermino de velocidad aparece dos veces, una diferenciada en el tiempo y la otra sin diferenciar, se hace necesario conocer la velocidad medio paso de tiempo y un paso de tiempo atr´as, pero la velocidad en el medio paso de tiempo puede ser calculada con el promedio de la velocidad en los pasos de tiempo enteros, esto es, vxx|l+0,5i,j,k = 0,5 ∗ (vxx|l+1i,j,k+ vxx|li,j,k). De esta forma las
ecuaciones de actualizaci´on para vx quedan
vl+1x,x i+0,5,j,k = v l x,x i+0,5,j,k 2 − ∆tΩx|i,j,k 2 + ∆tΩx|i,j,k + 2∆t ρ∆x(2 + ∆tΩx|i,j,k) T1l+0,5 i+1,j,k − T1l+0,5 i,j,k (3.31a)
3.5 An´alisis Num´erico del Modelo 35 vx,yl+1 i+0,5,j,k = v l x,y i+0,5,j,k 2 − ∆tΩy|i,j,k 2 + ∆tΩy|i,j,k + 2∆t ρ∆y(2 + ∆tΩy|i,j,k) T6l+0,5 i+0,5,j+0,5,k − T l+0,5 6 i+0,5,j−0,5,k (3.31b) vx,zl+1 i+0,5,j,k = v l x,z i+0,5,j,k 2 − ∆tΩz|i,j,k 2 + ∆tΩz|i,j,k + 2∆t ρ∆z(2 + ∆tΩz|i,j,k) T5l+0,5 i+0,5,j,k+0,5− T l+0,5 5 i+0,5,j,k−0,5 (3.31c)
vx|i+0,5,j,k = vx,x|i+0,5,j,k + vx,y|i+0,5,j,k+ vx,z|i+0,5j,j,k (3.31d)
donde Ωξ(δ) es el perfil de la PML.
3.5.
An´
alisis Num´
erico del Modelo
El objetivo principal de esta Tesis no es el an´alisis de estabilidad del mo-delo propuesto, sin embargo, no se puede pasar por alto una revisi´on de la estabilidad del m´etodo, debido a que en resultados preliminares se pre-sent´o inestabilidad num´erica en las simulaciones.
Revisando la literatura, se encontr´o la publicaci´on [24] donde el autor reporta inestabilidad num´erica con algunos cristales con el modelo propuesto por el mismo autor. Al revisar en detalle el modelo del autor se encuentra que la distribuci´on de las variables al interior de las celdas no es la adecuada, requiriendo el c´alculo de promedios de unas variables para la actualizaci´on de las otras variables, incurriendo en mayor uso de los recursos computacionales y un mayor error num´erico. Al realizar una distribuci´on de las variables al interior de la celda adecuada, como en el modelo propuesto en esta Tesis, se obtuvo estabilidad num´erica en las simulaciones para los cristales que el autor reporta inestabilidad.
A´un con la mejora de la ubicaci´on de las variables al interior de la celda, apa-recen inestabilidades num´ericas en las simulaciones, dichas inestabilidades se originan en la PML. La PML deriva de un artificio matem´atico en el que
36 3.5 An´alisis Num´erico del Modelo
se hace un ”stretching”de las coordenadas, resultando en una modificaci´on de las ecuaciones y representa un medio no f´ısico. As´ı que, se hace necesario investigar como afecta este cambio en la estabilidad del sistema. En la pu-blicaci´on [37] el autor hace un estudio de la propagaci´on y estabilidad de las ondas al interior de la PML para el caso elastodin´amico 2D, y como resultado encuentra unos criterios para determinar la estabilidad de la PML. Para el modelo propuesto en esta Tesis, los resultados de B´ecache para determinar estabilidad han sido suficientes para determinar la estabilidad del sistema en la PML. Ser´ıa interesante obtener un criterio de estabilidad para el caso pie-zoel´ectrico en 3D. El tema de estabilidad de los m´etodos num´ericos y de las condiciones de frontera absorbentes sigue siendo un problema abierto de gran inter´es en el que se sigue investigando, pero que un estudio mas profundo de ello se escapa de los alcances propuestos en la Tesis.
Debido a que los tiempos de simulaci´on son largos, hay la necesidad de usar el mayor paso de tiempo posible asegurando la estabilidad num´erica del sistema, por consiguiente a continuaci´on se hace un desarrollo para determinar ese paso de tiempo cr´ıtico.
3.5.1. Estabilidad Temporal
La discretizaci´on temporal de la ecuaci´on de movimiento, independiente de la discretizaci´on espacial que se realice, es siempre condicionalmente estable [38]. Por ello, es necesario hacer un an´alisis de la estabilidad del esquema de diferencias finitas desarrollado, para poder asegurar estabilidad de las simulaciones que se desean realizar.
La integraci´on num´erica de la ecuaci´on de onda por diferencias centradas es condicionalmente estable, y el correspondiente criterio de estabilidad para la discretizaci´on en el dominio del tiempo se deducir´a como funci´on de las propiedades del material y de la discretizaci´on geom´etrica. El problema es resuelto aplicando el m´etodo de Von Neumann.
Istv´an Veres en [39] deduce un criterio de estabilidad para el modelo de diferencias finitas de propagaci´on de ondas en un medio ortotr´opico. En su modelo, considera en la discretizaci´on espacial una aproximaci´on de segundo y cuarto orden, mientras que en la discretizaci´on temporal de segundo orden en la ecuaci´on parcial de segundo orden.
3.5 An´alisis Num´erico del Modelo 37
Partiendo de las ecuaciones 2.19 y 2.20, haciendo D = 0, y al discretizar en el tiempo resultan las siguientes ecuaciones de actualizaci´on:
vl = vl−1+ ∆t/ρ∇ · Tl−0,5 (3.32)
Tl+0,5 = Tl−0,5+ ∆tcD∇svl (3.33)
En el modelo usado el espacio es discretizado en una grilla regular donde cada celda tiene un tama˜no de ∆x× ∆y × ∆z en cada uno de los ejes (x, y
,z). Para aplicar el m´etodo de Von Neumann se propone la siguiente soluci´on arm´onica:
v = v0eI(ωl∆t−kxi∆x−kyj∆y−kzk∆z) (3.34)
T = T0eI(ωl∆t−kxi∆x−kyj∆y−kzk∆z) (3.35)
donde i, j y k denotan el n´umero de la celda en las direcciones x, y y z, respectivamente, I = √−1, y kx, ky y kz son los n´umeros de onda en las
direcciones x, y y z, respectivamente. Y esta soluci´on es reemplazada en las ecuaciones de actualizaci´on 3.32 y 3.33. Despu´es de discretizar en el espacio y de realizar el ´algebra, haciendo uso de la identidad eIα− e−Iα = 2I sin α,
se llega a las siguientes ecuaciones
Stv0 = 1/ρAT0 (3.36) StT0 = cDA0v0 (3.37) donde A = 2I Sx 0 0 0 Sz Sy 0 Sy 0 Sz 0 Sx 0 0 Sz Sy Sx 0 (3.38) St = sin ω∆t 2 /∆t Sξ= sin kξ ∆ξ 2 /∆ξ (3.39)
Combinando las ecuaciones 3.36 y 3.37, y reordenando se obtiene la siguiente ecuaci´on
˜
Γv0 = ρSt2v0 (3.40)
˜
Γ = AcDA0 (3.41)
La anterior ecuaci´on obtenida presenta la misma forma que la ecuai´on de Christoffel, por tal raz´on la llamo la ecuaci´on de Christoffel del medio dis-creto. El medio discreto se asemeja al medio continuo en la medida que las
38 3.5 An´alisis Num´erico del Modelo
celdas sean m´as peque˜nas y el paso de tiempo menor (∆ → 0 y ∆t → 0), es decir, l´ım ∆→0, ∆t→0 ˜Γv0 = ρS2 tv0 → k2Γv 0 = ρω2v0 (3.42)
donde Γij = cDikljnknl, y n es el vector unitario en la direcci´on de propagaci´on.
Como era de esperarse, se obtuvo la ecuaci´on de Christoffel stiffened del medio continuo. La ecuaci´on de Christofell es de inter´es porque permite hallar la relaci´on de dispersi´on de las ondas que se propagan en el medio, y por tanto c´omo se propaga el error. De la ecuaci´on de Christoffel del medio discreto se puede escribir la siguiente ecuaci´on homog´enea
(˜Γ − IρSt2)v0 = 0 (3.43)
que se reduce a un problema de valores propios, y por tanto, por lo menos uno de las valores propios de ˜Γ cumple que
˜
ν = ρSt2 (3.44)
Siendo ˜ν uno de los valores propios de la matriz ˜Γ. De esta ecuaci´on es posible despejar ω obteni´endose
ω = 2 ∆tsin −1 ∆t s ˜ ν ρ ! (3.45)
Para la estabilidad del sistema se requiere que ω sea siempre real, por tanto, para asegurar la estabilidad del sistema, para cualquier valor propio ˜ν, se debe cumplir la siguiente desigualdad
∆t s
˜ ν
ρ ≤ 1 (3.46)
De donde se obtiene el siguiente paso de tiempo cr´ıtico ∆tcr = r ρ ˜ νmax (3.47) El valor propio m´aximo ˜νmaxde la matriz de Christoffel del medio discreto se
obtiene cuando el vector de onda es el m´aximo vector de onda que se puede representar en el medio discreto, dicho vector de onda es
kmax = π ∆x ˆ x + π ∆y ˆ y + π ∆z ˆ z (3.48)
3.5 An´alisis Num´erico del Modelo 39
3.5.2. Dispersi´on num´erica
Es sabido que el m´etodo de diferencias finitas sufre de error por la dispersi´on num´erica. Es decir, si se trata de un medio isotr´opico, en el que la velocidad de la onda es independiente de la direcci´on de propagaci´on, en el modelo FDTD del medio la velocidad de la onda depende de la direcci´on de propagaci´on y de la frecuencia.
La dispersi´on en el modelo FDTD es introducido en el momento en que las derivadas son aproximadas con una diferencia finita. En el modelo propuesto la derivada de una funci´on f (ξ) respecto a ξ es aproximada de la siguiente forma ∂f (ξ) ∂ξ ≈ f (ξ + ∆ξ/2) ∆ξ − f (ξ − ∆ξ/2) ∆ξ . (3.49)
Al aplicar la transformada de Fourier a ambos lados se obtiene ikF (k) ≈ 1
∆ξ(e
ik∆ξ/2− e−ik∆ξ/2
)F (k), i =√−1. (3.50)
Aplicando identidades trigonom´etricas se obtiene ikF (k) ≈ 2i sin (k∆ξ/2)
∆ξ F (k). (3.51)
Comparando ambos lados de la anterior ecuaci´on de puede concluir que el vector de onda que el vector de onda del esquema FDTD es
k = 2 sin (k∆ξ/2)
∆ξ . (3.52)
Es evidente que k∆ξ es una funci´on peri´odica de k∆ξ con periodo de 4π, y cuando k∆ξ es muy peque˜no, es decir, frecuencias bajas, el vector de onda efectivo k se aproxima al vector de onda k. Otro hecho importante, es que la dispersi´on num´erica es independiente de la f´ısica subyacente, solo depende de como se aproximen las derivadas. En la figura 10 se muestra el n´umero de onda efectivo del modelo FDTD normalizado en funci´on del n´umero de onda real. Cuando se utilizan 20 muestras por longitud de onda k∆ξ es 0,314 y el n´umero de onda efectivo es el 99,59 % de k.
El error en la propagaci´on de la onda inducido por la discretizaci´on del medio, en las diferentes direcciones, se puede evaluar hallando las curvas de ”slow-ness”. Las curvas de ”sloweness”se pueden obtener de la ecuaci´on de relaci´on de dispersi´on, esta ecuaci´on es la ecuaci´on homog´enea en la ecuaci´on (3.29).
40 3.5 An´alisis Num´erico del Modelo
Figura 10: N´umero de onda efectivo normalizado en funci´on del n´umero de onda real.
Debido a la complejidad de las ecuaciones resultantes, en la pr´actica no es posible tener una expresi´on anal´ıtica para k/ω, sin embargo, se puede evaluar num´ericamente. Para un vector de onda k dado se reemplaza en la ecuacion (3.29) y num´ericamente se resuelve la ecuaci´on para ω, y de esta forma hacer la relaci´on k/ω.
En las Figuras 11 y 12 se muestran las gr´aficas de las curvas de “slowness” del medio continuo, en l´ınea continua, y del medio discreto para una longitud de onda igual a 4 veces el tama˜no lineal de la celda, en l´ınea discontinua. En estas gr´aficas de “slowness” se puede observar que tomar 4 muestras por longitud de onda no es un muestreo adecuado, ya que es evidente la diferencia entre la curva del medio real y del medio discreto.
Para disminuir el error en la dispersi´on del medio discreto, sin cambiar el esquema de diferencias finitas usado, se debe aumentar el muestreo, como lo indica la Figura 10. Con un muestreo de 20 muestras por longitud de onda, las curvas del medio real y del medio discreto son virtualmente iguales, como se puede apreciar en la Figura 13, en este caso el error es inferior al 0,5 %.
3.5 An´alisis Num´erico del Modelo 41
Figura 11: Curva de slowness para el sustrato niobato de sodio bario en el plano xy. L´ınea continua medio real, l´ınea discontinua medio discreto con λ = 4∆.
Figura 12: Curva de slowness para el sustrato niobato de sodio bario en el plano xz. L´ınea continua medio real, l´ınea discontinua medio discreto con λ = 4∆.
42 3.6 Energ´ıa del Sistema
Figura 13: Curva de slowness para el sustrato niobato de sodio bario en el plano xy. L´ınea continua medio real, l´ınea discontinua medio discreto con λ = 20∆.
3.6.
Energ´ıa del Sistema
En un sistema conservativo, como es el caso de estudio aqu´ı, la energ´ıa del sistema se conserva, es decir, solo puede ser introducida de forma externa y no se puede desvanecer del sistema. En otras palabras, despu´es del periodo de excitaci´on, la energ´ıa debe permanecer constante. Esta propiedad puede ser usada para evaluar la estabilidad del modelo propuesto en este trabajo de grado.
La energ´ıa cin´etica (UK), de deformaci´on (US) y el´ectrica (Ue) de un
diferen-cial de volumen (δV ) es [40] UK = ρ 2kvk 2, (3.53) US = 1 2ScS, (3.54) Ue = 1 2E · D, (3.55)
3.6 Energ´ıa del Sistema 43
E = Z Z Z
V
(Uk+ US+ Ue)δV. (3.56)
En la versi´on discreta, para el modelo de diferencias finitas presentado, la energ´ıa cin´etica, de deformaci´on y el´ectrica de la celda (i, j, k) quedan defi-nidas como UK|ijk = ρ 2k v|ijkk 2, (3.57) US|ijk = 1 2 S|ijkc S|ijk, (3.58) Ue|ijk= 1 2 E|ijk· D|ijk, (3.59)
y la energ´ıa total del sistema como
E =X i X j X k
44 4. Modelo FDTD de Alto Desempe˜no
4.
Modelo FDTD de Alto Desempe˜
no
Un solo procesador con 8 gigabytes de memoria est´a en la capacidad de solucionar un problema cuyo tama˜no est´e en el orden de las 10 longitudes de ondas [41], sin embargo, el problema que se quiere atacar aqu´ı supera, y por mucha, la capacidad de un s´olo procesador, tanto en tiempo de computo como en la memoria requerida. Para sobrepasar este l´ımite, a continuaci´on se presenta un modelo FDTD de alto desempe˜no, con optimizaciones y dos niveles de paralelizaci´on.
Para evaluar el desempe˜no de un algoritmo paralelo, de acuerdo la literatura ([29, 41, 42, 43]) se utilizan las siguientes tres m´etricas:
Escalabilidad (Aceleraci´on): La escalabilidad indica que tanto es m´as r´apido el algoritmo cuando se ejecuta de forma paralela. Es la raz´on entre el tiempo de ejecuci´on usando un solo proceso T1 y el tiempo de
ejecuci´on utilizando n procesos Tn.
Sn=
T1
Tn
(4.1)
Eficiencia: La eficiencia se puede interpretar como el porcentaje del tiempo en que el el algoritmo est´a realizando la tarea que realmente importa, y no en tareas adicionales como transfiriendo informaci´on de un proceso a otro. Es la raz´on entre la escalabilidad y el n´umero de procesos (n).
En=
Sn
n (4.2)
Desempe˜no: En el caso del FDTD, el desempe˜no es la cantidad de celdas por unidad de tiempo que se logran actualizar en un sistema determinado.
P n = # de Celdas × # iteraciones
T iempo total (4.3)
Est´as mismas m´etricas ser´an usadas para evaluar el modelo propuesto en este trabajo de grado.
4.1 Optimizaciones 45
4.1.
Optimizaciones
En el momento de implementar la FDTD se hace evidente que se pueden realizar algunas optimizaciones, siguiendo buenas pr´acticas de programaci´on, permitiendo un mejor desempe˜no que en la implementaci´on directa. Se reali-zaron dos tipos de optimizaciones, unas a nivel de las operaciones aritm´eticas y otras referentes al uso de la memoria.
4.1.1. Operaciones Aritm´eticas
Revisando las ecuaciones de actualizaci´on se puede observar que las diferen-cias de las variables son siempre multiplicadas y divididas por las mismas constantes, estas constates pueden ser reunidas en una sola constante im-plicando solo una operaci´on de multiplicaci´on. Por ejemplo, la ecuaci´on de actualizaci´on en 3.15 puede ser modificada a la siguiente ecuaci´on de actua-lizaci´on equivalente vxl+1i,j,k = vlx i,j,k + A T1l+1/2 i+1,j,k − T1l+1/2 i,j,k + B T5l+1/2 i,j,k − T5l+1/2 i,j,k−1 + C T6l+1/2 i,j,k − T6l+1/2 i,j−1,k , (4.4) donde las constantes A, B y C son calculadas una sola vez de la siguiente forma A = ∆t ρ∆x B = ∆t ρ∆y C = ∆t ρ∆z.
La ecuaci´on de actualizaci´on en 4.4 requiere solo 9 operaciones aritm´eticas para ser evaluada, mientras que la ecuaci´on de actualizaci´on original en 3.15 requiere de 11 operaciones aritm´eticas, incluida por lo menos una divisi´on.