INTRODUCCION A CACTUS: PARTE 0 Francisco Siddhartha Guzman Murillo Instituto de Fisica y Matematicas, Univesidad Michoacana de San Nicolas de Hidalgo Instrucciones para poner la version adecuada de Cactus en tu maquina: - tar -zxvf Intro_a_Cactus.tgz -> El directorio generado contiene el material necesario para realizar los ejercicios que he planeado. -> Todo el material es de acceso libre y puede ser obtenido del servidor www.cactuscode.org (Excepto las espinas ejercicio que he agregado). -> La intalacion correcta debera ser a traves de cvs. -> Por razones practicas he concatenado lo necesario en una bola tar. -> Intrucciones acerca del uso de CVS pueden ser resueltas a traves de contacto directo conmigo. -------------------------------- Cactus en breve: - Cualquier aplicacion para resolver una ecuacion diferencia parcial necesita de los siguientes pasos: + Datos iniciales + Paramatros que definen los datos inciales + Rutinas de evolucion + Paramatros que controlan la ecolucion + Rutinas de escritura de datos + Un visualizador de datos - Cactus tiene las herramientas para resolver todos estos pasos: . Define la malla para las diferencias finitas (hasta ahora) . Define el loop para la discretizacion temporal . Permite la definicion de parametros (booleanos, realesm enteros, etc) . Provee de rutinas de integracion temporal (MoL) . Tambien hay libertad para escribir la rutina de evolucion a mano . PARALELIZA los codigos mediante la descomposicion del dominio espacial . Tiene modulos que escriben datos en formatos comodos: ascii, sdf, hdf5 de varios tipos: escalares, 1D, 2D, 3D ... - Cactus es un codigo central que + preprocesa distintos trozos de codigo + los trozos de codigo se llaman ESPINAS + interconecta diveras espinas unas con otras, independientemente del lenguaje en que esten escritas + descompone el dominio espacial y concatena el codigo completo en un codigo MPI central + Algunas espinas son fundamentales, pues definen el dominio - En este breve curso nos limitaremos a: # Aprender a compilar codigo escrito # Aprender a escribir codigo para ecuaciones parciales sencillas # Entender el significado de los parametros mas importantes