This module provides an implementation of the "Lagrangian-Eulerian Advection for Unsteady Flow Visualization" algorithm to visualize 2D unsteady vector fields.
Input Ports
Name Type Description Vector_Field Mesh_Struct+Node_Data Field with 2D vector node data. Parameters
Name Type Description Name nx, ny int output texture resolution Fields integrationStep int integration step size Slider blendCoef float temporal blending Slider licOn int enables LIC computation Toggle Button normalizationOn int LIC vector field normalization Toggle Button intensityCorrectionOn int LIC intensity correction Toggle Button kernelLength int LIC kernel length Slider maskOn int enable mask Toggle Button alphaOn int transparency Toggle Button velocityMaskVersion int contrast Slider nInitialSteps int number of initial steps Field nStepsAtOnce int number of steps at once Field trigger int automatic update (1); continuous run (2) Toggle Button Output Ports
Name Type Description lea_img IPfld the computed LEA texture obj DefaultObject renderable version of lea_img textured_obj DefaultObject textured input field
This module provides an implementation of the "Lagrangian-Eulerian Advection for Unsteady Flow Visualization" algorithm to visualize 2D unsteady vector fields.
Vector fields are represented as grayscale textures, spatially correlated along the flow. This technique produces still images of a steady vector field, but is mainly intended to depict the dynamic behavior of unsteady vector fields. In this case, a series of subsequent textures will display the path of thousands of particles in a comprehensive and intuitive manner. These particles follow pathlines in time while any single texture shows the instantaneous structure of the flow.
Inputs
Vector_FieldThe vector field to be visualized. Must be a 2D field with either two scalar components or one component with veclen = 2. When vector field values change, the computation of a new texture is triggered. This is the way to produce unsteady flow animations. Note that subsequent vector fields must change smoothly in order to produce smooth animations. It may be useful feed this module with interpolated intermediate vector fields for optimal results.Parameters
nx, nyThese parameters set the resulting output texture resolution. The image dimensions are forced to respect the input vector field aspect ratio.
integrationStepSet the integration step size for the advector calculation. This integration step size specifies the maximum distance the texel property will be advected between two computations. The size, in texels, is relative to the output texture resolution. If you double nx and ny, do not forget to double the integrationStep to produce higher resolution animation of the same phenomenon.blendCoefSpecifies the temporal blending coefficient. This coefficient controls a long time exposure photography effect enabling spatial correlation in the resulting image. A typical value for blendCoef is 0.9. If blendCoef = 0, there is no blending and the output texture shows the instantaneous distribution of particle properties.licOnIf set enables LIC filter computation. This filter enhances the resulting texture by fading out the high frequencies along the flow.normalizationOnLIC vector field normalization.
intensityCorrectionOn
The LIC filters correct the resulting texture image luminosity based on the local velocity magnitude.
kernelLength
LIC filter kernel length. A typical range for this parameter is between integrationStep and 2*integrationStep .
maskOn
If set applies a mask to the resulting image to remove noise from areas with low velocity.
alphaOn
The image transparency is set depending on the local velocity magnitude.
velocityMaskVersion
This parameter sets the mask contrast value. On the user interface this slider is called Contrast.
nInitialSteps
Displays the first image after nInitialSteps advection steps. This is necessary to have a well correlated first image. A good value for nInitialSteps is 15 to 30.
nStepsAtOnce
Number of computation steps between generated images. Allows to advect property over a longer distance without changing the integrationStep .
trigger
Sets the automatic computation behavior:On the user interface this parameter is computed from the setting of the two toggle buttons Automatic Update and run.
- 0: The output is not recomputed on parameter change
- 1: The output is automatically updated on parameters change
- 2: The computation automatically runs
Outputs
lea_img
The computed texture image.objRenderable version of lea_img.
textured_obj
The computed LEA image textured on a quadrilateral with the same aspect ratio of the input vector field.
The LEA_Example application display LEA Flow Textures on a slice of the wind.fld demo dataset. Push the run toggle to see the flow of the vector field.
iac_proj/lea/lea.v
Creates the IAC_PROJ.LEA library.
iac_proj/lea/lea_advector.v
End user module for The LEA Flow Texture routines.
iac_proj/lea/lea_example.v
LEA example application.
iac_proj/lea/lea_lib-1.0
The computation routines for the LEA algorithm. This directory is included as is received from the author.
iac_proj/lea/lea_mod.v and iac_proj/lea/lea_mod.cxx
Interface module to the LEA library.
Before compiling the Express project the LEA library must be rebuilt. Go to the lea_lib-1.0 directory and follow the INSTALL instructions, or simply execute the Makefile provided. The library and the project itself have been tested only on Linux.
Bruno Jobard
CSCS, Swiss Center for Scientific Computing
Mario Valle
CSCS, Swiss Center for Scientific Computing
International AVS Centre
Manchester Visualization Centre
Kilburn Building
University of Manchester
Oxford Road
Manchester
United Kingdom
M13 9PLBruno Jobard bjobard@univ-pau.fr LIUPPA, Université de Pau, BP 1155, 64013 PAU Cedex, France
The LEA algorithm is described in the paper "Lagrangian-Eulerian Advection for Unsteady Flow Visualization" written by Bruno Jobard, Gordon Erlebacher and M.Y. Hussaini. Other related papers are:Paper and videos can be downloaded also from: http://www.cscs.ch/~bjobard/Research/Publications/vis2001/lea_paper.htm
- Bruno Jobard, Gordon Erlebacher and Youssuf Hussaini, Lagrangian-Eulerian Advection of Noise and Dye Textures for Unsteady Flow Visualization, in IEEE Transactions on Visualization and Computer Graphics 8(3): 211-222 July-September 2002.
- Youssuf M. Hussaini, Gordon Erlebacher and Bruno Jobard, Real-Time Visualization of Unsteady Vector Fields, to appear in journal of American Institute for Aerospace and Aeronautics.
- Bruno Jobard and Jean M. Favre, Advanced Flow Representations Applied to Wind Visualization. In proceeding of the 8th Workshop on Meteorological Operational Systems, ECMWF in Reading (UK), November 12-16, 2001.
- Bruno Jobard, Gordon Erlebacher and Youssuf Hussaini, Lagrangian-Eulerian Advection for Unsteady Flow Visualization , In proceedings of IEEE Visualization'2001, San Diego, California, October 2001.