Sesión 5. Cálculo paralelo y postprocesado · 2015-04-14 · OpenFOAM User Guide (sección 3.4)...
Transcript of Sesión 5. Cálculo paralelo y postprocesado · 2015-04-14 · OpenFOAM User Guide (sección 3.4)...
Cálculo paraleloPostprocesado
Sesión 5. Cálculo paralelo y postprocesado
E. Martín1, M. Meis1,2 y F. Varas1
1Univ. de Vigo, 2Vicus Desarrollos Tecnológicos
Dinámica de fluidos computacional con OpenFOAM17–20 de Junio de 2014
E. Martín, M. Meis y F. Varas Sesión 5. Cálculo paralelo y postprocesado
Cálculo paraleloPostprocesado
Proyecto CloudPYME
El proyecto CloudPYME (ID 0682_CLOUDPYME2_1_E) estácofinanciado por la Comisión Europea a través del FondoEuropeo de Desarrollo Regional (FEDER), dentro de la terceraconvocatoria de proyectos del Programa Operativo deCooperación Transfronteriza España–Portugal 2007–2013(POCTEP).
E. Martín, M. Meis y F. Varas Sesión 5. Cálculo paralelo y postprocesado
Cálculo paraleloPostprocesado
Plan
1 Cálculo paralelo
2 Postprocesado
E. Martín, M. Meis y F. Varas Sesión 5. Cálculo paralelo y postprocesado
Cálculo paraleloPostprocesado
Plan
1 Cálculo paralelo
2 Postprocesado
E. Martín, M. Meis y F. Varas Sesión 5. Cálculo paralelo y postprocesado
Cálculo paraleloPostprocesado
Cálculo paralelo
Paralelización en OF 2.3.0IntroducciónUtilidades y diccionarios para el PreprocesoEjecuciónUtilidades para el Postproceso
Referenciashttp://www.openfoam.org/docs/user/running-applications-parallel.php
OpenFOAM User Guide (sección 3.4)
E. Martín, M. Meis y F. Varas Sesión 5. Cálculo paralelo y postprocesado
Cálculo paraleloPostprocesado
Introducción
CaracterísticasLa implementación del cálculo paralelo está oculta para elusuarioLa creación de un nuevo solver debería funcionar elparaleloLa mayor parte de la aplicaciones y utilidades funcionanen paraleloParalelización mediante descomposición de dominiosUso del diccionario decomposeParDictImplementación de la paralelización mediante openMPICreación de tantas carpetas como número de particiones($) con el nombre processor.$
Procesos de cálculo paraleloDescomposición de la malla y las variablesEjecuciones en paraleloPostprocesado de cálculos paralelos
E. Martín, M. Meis y F. Varas Sesión 5. Cálculo paralelo y postprocesado
Cálculo paraleloPostprocesado
Utilidades y diccionarios para el Preproceso
decomposeParAutomaticamente descompone una malla y las variables de uncaso para la ejecución paralela en OF
E. Martín, M. Meis y F. Varas Sesión 5. Cálculo paralelo y postprocesado
Cálculo paraleloPostprocesado
Utilidades y diccionarios para el Preproceso
redistributeParRedistribuye la malla particionada y los campos existentes deacuerdo con opciones actuales en el diccionariodecomposeParDict
NO FUNCIONA EN PARALELO
E. Martín, M. Meis y F. Varas Sesión 5. Cálculo paralelo y postprocesado
Cálculo paraleloPostprocesado
decomposeParDict
Opciones
E. Martín, M. Meis y F. Varas Sesión 5. Cálculo paralelo y postprocesado
Cálculo paraleloPostprocesado
decomposeParDict
Entradas obligatorias
numberOfSubdomains Indica el número de dominios en losque se descompone el caso
method Indica el método de descomposición a utilizar.Cada método lleva asociados unos coeficientesde entrada
distributed Entrada lógica para la indicación de la distribuciónde datos
root Indica la ruta de la carpeta del caso en cada nodo
E. Martín, M. Meis y F. Varas Sesión 5. Cálculo paralelo y postprocesado
Cálculo paraleloPostprocesado
decomposeParDict
Métodos de descomposiciónsimple Descomposición geométrica simple en función del
orden de los ejes coordenados (X, Y, Z)hierarchical Igual que el métodos simple pero el usuario
especifica el orden de los ejes (ej: Z, X, Y)manual Descomposición manual, donde el ususario
especifica la localización de cada celda a undeterminado procesador
multiLevel Similar a textithierarchical pero se pueden utilizartodos los métods en una manera anidada
structured Descomposición 2D para mallas estructuradas(caso especial)
E. Martín, M. Meis y F. Varas Sesión 5. Cálculo paralelo y postprocesado
Cálculo paraleloPostprocesado
decomposeParDict
Métodos de descomposiciónscotch/ptscotch Descomposición automática que intenta
minimizar el número de comunicaciones entreprocesadores y equilibrar la carga entreprocesadores. No requiere informacióngeométrica por parte del usuario. Se distribuyecon el código. Licencia CeCILL-C
metis Funcionamiento similar al algoritmo scotch(minimizar el número de comunicaciones entreprocesadores y equilibrar la carga entreprocesadores). No requiere informacióngeométrica por parte del usuario. No se distribuyecon el código. Licencia Apache License Version2.0.
E. Martín, M. Meis y F. Varas Sesión 5. Cálculo paralelo y postprocesado
Cálculo paraleloPostprocesado
Ejecución
Solvers$ mpirun -hostfile <machinefile> -np <nProcs> <foamExec><case> <otherArgu> -parallel
machinefile: archivo quye contiene los nombres de lasmáquinasnProcs: número de procesadores...
Utilidades$ mpirun -np <nProcs> <foamUtil> -parallel
nProcs: número de procesadoresfoamUtil ; Utilidad de OF
E. Martín, M. Meis y F. Varas Sesión 5. Cálculo paralelo y postprocesado
Cálculo paraleloPostprocesado
reconstructPar
Aplicación para reconstruir la malla particonada en una única
Opciones
E. Martín, M. Meis y F. Varas Sesión 5. Cálculo paralelo y postprocesado
Cálculo paraleloPostprocesado
reconstructPar
Aplicación para reconstruir la malla particonada en una única
Opciones
E. Martín, M. Meis y F. Varas Sesión 5. Cálculo paralelo y postprocesado
Cálculo paraleloPostprocesado
Plan
1 Cálculo paralelo
2 Postprocesado
E. Martín, M. Meis y F. Varas Sesión 5. Cálculo paralelo y postprocesado
Cálculo paraleloPostprocesado
Visualización de resultados
ConversiónfoamDataToFluent: convierte datos de OpenFOAM aformato de FluentfoamToEnsight: convierte datos de OpenFOAM a formatode EnSightfoamToVTK: convierte datos de OpenFOAM a formato deVTKfoamToTecplot360: convierte datos de OpenFOAM aformato de tecplot
E. Martín, M. Meis y F. Varas Sesión 5. Cálculo paralelo y postprocesado
Cálculo paraleloPostprocesado
Aplicaciones
Utilidades1
$ cd /opt/openFOAM-2.3.0/applications/utilities
1 http://www.openfoam.org/archive/2.3.0/docs/user/
standard-utilities.php
E. Martín, M. Meis y F. Varas Sesión 5. Cálculo paralelo y postprocesado
Cálculo paraleloPostprocesado
Aplicaciones
Utilidades. Postprocesado
Entrar en cada una de las carpetas para ver una descripcióncompleta de cada una de ellas.
E. Martín, M. Meis y F. Varas Sesión 5. Cálculo paralelo y postprocesado
Cálculo paraleloPostprocesado
Utilidades de preprocesado
UtilidadessetFields selecciona un conjunto de celdas y modifica sus
valoresmapFields Proyecta los campos de una malla a otra, leyendo
e interpolando todos los campos existentes.Casosparalelos y no parelelos son manejados sinnecesidad de reconstruir
E. Martín, M. Meis y F. Varas Sesión 5. Cálculo paralelo y postprocesado
Cálculo paraleloPostprocesado
Utilidades de postprocesado
PostProceso sobre fronteraspatchAverage Calcula el promedio de un campo ponderado
con el áreapatchIntegrate Calcula la integral de un campo ponderado con
el área
E. Martín, M. Meis y F. Varas Sesión 5. Cálculo paralelo y postprocesado
Cálculo paraleloPostprocesado
Utilidades de postprocesado (cont)
PostProceso de muestreo (sampling)probeLocations Muestras puntuales discretas
sample Muestras sobre nube de puntos, líneas ysuperficies.
E. Martín, M. Meis y F. Varas Sesión 5. Cálculo paralelo y postprocesado
Cálculo paraleloPostprocesado
Utilidades de postprocesado (cont)
samplePermite evaluar cualquier campo medidante líneas osuperficiessampleDict es el diccionario para controlar la evaluaciónPermite una amplia variedad de formatos de escritura:gnuplot, jPlot, grace/xmgrSe debe ejecutar una vez finalizada la simulación
E. Martín, M. Meis y F. Varas Sesión 5. Cálculo paralelo y postprocesado
Cálculo paraleloPostprocesado
Utilidades de postprocesado (cont)
sampleDictDiccionario que contiene la descripción de la evaluación arealizar. Puede contener lo siguiente
Elección del esquema de interpolaciónLa descripción de la líneaLa descripción de la superficieLos campos a evaluar
E. Martín, M. Meis y F. Varas Sesión 5. Cálculo paralelo y postprocesado
Cálculo paraleloPostprocesado
Utilidades de postprocesado (cont)
probesLocationPermite evaluar cualquier campo medidante puntosdiscretosprobesDict es el diccionario para controlar la evaluaciónLos valores se almacenan en una nueva carpetapostProcessing/probesLos valores se almacenan en archivos de tipo ascii con elnombre del campoSe debe ejecutar una vez finalizada la simulación
probesDictDiccionario que contiene la descripción de la evaluación arealizar. Puede contener lo siguiente
E. Martín, M. Meis y F. Varas Sesión 5. Cálculo paralelo y postprocesado
Cálculo paraleloPostprocesado
Utilidades de postprocesado en tiempo de ejecución
Function ObjectsBibliotecas de herramientas de postprocesado en tiempode ejecuciónPueden ser usadas en cualquier solver sin necesidad decompilaciónSe añaden en el diccionario controlDict
Más informaciónCódigo fuente:/opt/openFOAM-2.3.0/src/postProcessing/functionObjectshttp://www.openfoam.com/features/runtime-postprocessing.php
http://openfoamwiki.net/index.php/Contrib_simpleFunctionObjects
E. Martín, M. Meis y F. Varas Sesión 5. Cálculo paralelo y postprocesado
Cálculo paraleloPostprocesado
Utilidades de postprocesado en tiempo de ejecución(cont)
E. Martín, M. Meis y F. Varas Sesión 5. Cálculo paralelo y postprocesado
Cálculo paraleloPostprocesado
Más utilidades
InfopatchSummary Muestra la información de las condiciones de
contorno y de la variable para cada frontera y encada tiempo
checkMesh Comprueba y muestra información de la malla
VariaswriteCellCenters Guarda las tres componetes de las celdas
como un campo escalarptot Calcula la presión total a cada paso de tiempo
E. Martín, M. Meis y F. Varas Sesión 5. Cálculo paralelo y postprocesado
Cálculo paraleloPostprocesado
PyFoam
DescripciónBiblioteca que permite controlar ejecuciones y manipular datosde OF. Puede ser usada para:
Analizar los logs de salida de cualquier solverEjecuta y manipula los solvers y las aplicaciones y analizasu salida simultaneamenteManipula los parámetros de los archivos de condicionesinicialesVisualiza los residuales de cualquier solver
Más informaciónhttp://openfoamwiki.net/index.php/Contrib/PyFoam
E. Martín, M. Meis y F. Varas Sesión 5. Cálculo paralelo y postprocesado