|
[Sponsors] |
Visualizing OpenFOAM VTK-files using mayavi/mlab in Python |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
December 16, 2013, 10:39 |
Visualizing OpenFOAM VTK-files using mayavi/mlab in Python
|
#1 |
Member
Bas Nieuwboer
Join Date: Mar 2013
Posts: 34
Rep Power: 13 |
Hi All,
I am trying to visualize my model results from OpenFOAM in python using mayavi/mlab. I am able to plot the surfaces of my model. However, I would like to make a quiverplot of my velocity field and a volume plot of my pressures. I found some documentation this. However, this documentation did not state anything on the combination with loaded VTK-files. The code beneath is the one I use for plotting the surfaces. Could anyone help me extend this to plotting the velocities and pressures using python? Code:
import os from mayavi.core.api import Engine from mayavi.sources.vtk_file_reader import VTKFileReader from mayavi.modules.surface import Surface from mayavi import mlab vtkFile_tot = os.path.normpath('D:/Bas/python/VTK/131023cutterBlended08RelVel_0.vtk') engine = Engine() engine.start() scene = engine.new_scene() reader = VTKFileReader() reader.initialize(vtkFile_tot) engine.add_source(reader) surface = Surface() engine.add_module(surface) Last edited by bjnieuwboer; December 16, 2013 at 10:40. Reason: typo in title |
|
July 30, 2014, 11:52 |
Working principle
|
#2 |
Member
Bas Nieuwboer
Join Date: Mar 2013
Posts: 34
Rep Power: 13 |
After a while I found a way to visualise my VTK files generated by OpenFOAM using mayavi.
Code:
import os # engine imports. from mayavi.scripts import mayavi2 from mayavi.sources.api import VTKFileReader from mayavi.modules.glyph import Glyph from mayavi.filters.mask_points import MaskPoints from mayavi.core.api import Engine from mayavi import mlab # Create a new VTK scene if none is present yet def initializeVTK(filename): try: engine except NameError: global engine print 'warning is due to the check if the global variable named engine already exists' engine = Engine() engine.start() if len(engine.scenes) == 0: engine.new_scene() r = VTKFileReader() r.initialize(filename) engine.add_source(r) VTK=os.path.normpath('/myFolder/myVTK-file.vtk') initializeVTK(VTK) # Make a mask for the points m = MaskPoints() m.filter.set(on_ratio=300, random_mode=False) engine.add_filter(m) # this adds the module 'm' the engine g = Glyph() engine.add_module(g) # this adds the module 'g' the engine g.glyph.color_mode = 'color_by_vector' g.glyph.scale_mode = 'scale_by_vector' # Use arrows to view the scalars. gs = g.glyph.glyph_source gs.glyph_source = gs.glyph_dict['arrow_source'] f = mlab.gcf() mlab.view(distance=3.5) f.scene.background = (1.0, 1.0, 1.0) # set background color f.scene.render() mlab.show() |
|
Tags |
mayavi, mlab, openfoam, vtk |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Superlinear speedup in OpenFOAM 13 | msrinath80 | OpenFOAM Running, Solving & CFD | 18 | March 3, 2015 06:36 |
64bitrhel5 OF installation instructions | mirko | OpenFOAM Installation | 2 | August 12, 2008 19:07 |
Adventure of fisrst openfoam installation on Ubuntu 710 | jussi | OpenFOAM Installation | 0 | April 24, 2008 15:25 |
OpenFOAM Debian packaging current status problems and TODOs | oseen | OpenFOAM Installation | 9 | August 26, 2007 14:50 |
Results saving in CFD | hawk | Main CFD Forum | 16 | July 21, 2005 21:51 |