Add to Watchlist

Scientific Visualization with GR


Citation of segment
Embed Code
Purchasing a DVD Cite video

Formal Metadata

Title Scientific Visualization with GR
Title of Series EuroPython 2014
Part Number 46
Number of Parts 120
Author Heinen, Josef
License CC Attribution 3.0 Unported:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
DOI 10.5446/19986
Publisher EuroPython
Release Date 2014
Language English
Production Place Berlin

Content Metadata

Subject Area Computer Science
Abstract Josef Heinen - Scientific Visualization with GR Python developers often get frustrated when managing visualization packages that cover the specific needs in scientific or engineering environments. The GR framework could help. GR is a library for visualization applications ranging from publication-quality 2D graphs to the creation of complex 3D scenes and can easily be integrated into existing Python environments or distributions like Anaconda. ----- Python has long been established in software development departments of research and industry, not least because of the proliferation of libraries such as *SciPy* and *Matplotlib*. However, when processing large amounts of data, in particular in combination with GUI toolkits (*Qt*) or three-dimensional visualizations (*OpenGL*), it seems that Python as an interpretative programming language may be reaching its limits. --- *Outline* - Introduction (1 min) - motivation - GR framework (2 mins) - layer structure - output devices and capabilities - GR3 framework (1 min) - layer structure - output capabilities (3 mins) - high-resolution images - POV-Ray scenes - OpenGL drawables - HTML5 / WebGL - Simple 2D / 3D examples (2 min) - Interoperability (PyQt/PySide, 3 min) - How to speed up Python scripts (4 mins) - Numpy - Numba (Pro) - Animated visualization examples (live demos, 6 mins) - physics simulations - surfaces / meshes - molecule viewer - MRI voxel data - Outlook (1 min)
Keywords EuroPython Conference
EP 2014
EuroPython 2014
use of language is the head of the scientific IT systems group at the Washington formulation Germany and he will be giving a talk on the physical education system he on and just as a vision system here is going to have worked on so
OK 1st of all thank you for coming here this morning my name is for the final and together with my colleagues I know I'm working on different projects of false sense communities most of them on visualization systems and an important part of the opportunity to give this talk to your mom and your reply the biology of a framework for the relational systems so let me start with a
question was already using some scientific software with poisons such like my RV VTK or creative become more as mentioned I'm working in the research company and in the past years it turned out that there are growing is that there is a growing need for better and faster the visualization software and especially scientists that need easy-to-use methods of visualizing tool and three-dimensional data sets possibly with that dynamic components and they wanna create public racing quality graphics and videos for their publications public probably in the Internet and I want to make a loss to figure out the for i in the joint press releases at 1st glance those methods don't seem to be a very challenging but so that we're talking about the later the
lot of scientific but in many methods really need the such as line bar-graph curve plots scatter all these things you see on this slide here in principle this is nothing new challenging and those of solutions for all these kind of putting them there are
also a powerful tool for libraries for for scientific the applications in Python of those listed here on this slide of the most popular ones I think maybe I've forgotten 1 but we all know matplotlib which is that the workflows and the de-facto standard containing graphics and and python and there's even my of form of three-dimensional applications my arguments is very powerful and based on the and it offer also application interface so call em 11 which can be used in your own that's BTK it's right versatile about it's difficult to learn because it's a very low level system and their tools like was B and open GL bitch of both very fast and which are limited to 3 D and which are really the lowest level API for for graphics Python and there are also some do we towards last livestock just like a QWT with its corresponding 3 D equivalence and the problem with this is that there are currently on and maintain at least 4 and those of my information is so there are some problems so far and the main
problem I think is that to the world and the accelerated 3 D world are separated you won't find a tool which provides services for both we and the previous 2 D and 3 D graphics and another problem is that some graphics back and only produce kind of figure it so it's not possible to president resent continuous data streams from from from light sources and also effects of major experience that there's only about minimum level of interoperability so user interaction is somehow limited with these tools are also if we are talking about what analyzing large data sets we often see that there only a poor performance and the of these ATIS partly due wise and platform independent so your own so that I will suffer from some system dependencies of the time OK so that's Python get up and running and was surprisingly is a very nice this year Rosalind which has been introduced to you in the light of the in the in the keynote this morning it's called an on and I can I would really like to reprimand this this used as it's very easy to install the complete scientific Python state but I think that we need something more for example we need some more performance and
this can also be achieved by combining for example number which called also be mentioned this morning which is capable of accelerating number of young by the applications of which which contain Mumbai codes even on GPU out there multi-core processors and I will give some examples later there's something more all we also want to of more graphics performs and interoperability and serve as opposed to like to introduce our framework which is a unit for universal framework for cross cross platform visualization and the main piece key points are that it has a procedure gross expect and so you can really present continuous data streams and it has built in the y I was so you can which relies on those 2 D and 3 D scenes in in in 1 can and that's right good interoperability with the we toolkits so you can establish a right good user interaction and as you can see at the bottom out of the slide it's also very easy to install so this will be all completed scientific by this solution I think we have everything we need especially if you have more performance and interoperability so let me give you some examples of how this looks like you can see here as the numerics of simulation of a damped pendulum the calculation is done and the the aka curfews functional and which is simply a numerical integration of this difference differential equation and you can see it again makes graphics with taste me last and you can do all these things lies while the script is running you don't have to produce the loss or something like that the same works for really and look and see if you are in this case there was realization is done with API which has been written by a colleague of mine from rim nt has written open GL layer for the which is called the US read and you see right performance and the task itself you can even of great you can even visualizing life signals from from from great files or from the microphone and log at its axis and this all runs in real time these are all things which are write hard to realize 2 you can do is also in 3 I just Bush all you away so so you can focus on the on the graphics so the frequency spectrum is so in this case we generalize powered by phase plot which is realized of G L and it's that fast equal to the you can also produced graphics review interaction the density urine MRR in applications which surrender some right . were marching cubes algorithm which is part of our software and which can be rendered very fast and so we moved with the mouse so let's start again about
performance we only have we not only have some 74 from aggressive performance but also for for for numerical performance and as mentioned before there's something called number which is part of an economy but also can install for and this number probe which has some additional feature it's part of an icon accelerate which of course a few boxes and although the actual price and it's it's capable of calculating the number of expressions on the GPU so you can write your own GPU kernels in Python its ionized tool and it was through to look at the and that even other tools like like will blast cool granted but those tools are just a dedicated to you would have so in this case you can see you on how can profit from such a so if there is the of particle simulation which is very slow currently running at the french the 2nd and just by adding some decorator and an import statement for sure you can increase the performance by time so 15 I think so it's you don't have to change the code and you can speed up their application enormously this is calculated in real time this would not be possible with this ball Python if you around the simulation bias and I think each frame is about 3 seconds in this case it was paralyzed or regularized vectorized this is the Iife several examples all of them mostly just take a look at the web site and you will see how the different optimizations work so let me introduce some of our success stories well we have integrated our sulfur in several of our applications we are working blow both for our experimental physicists and for and for the theoretical physicist and this is something to fall instruments it's so life display for a small angle neutron diffractometer and as you could see you could will set the region of interest and the surface is generated in real time you can retain to cancel of the axis and there's even more and all this can be done in real time so this is another example he here we are processing of huge datasets and tools it also done in real time and which was
formerly done by the preparatory solution and with a G often make quote embed this into a fall I could use for applications which shows was replaced replacement for the existing solutions and which is much much faster which can produce movies and all these funny things there's another example here the because it's itself very complex network-based based control system which is used in at the fossils their mentioned in Munich for all the instruments which neutron scattering and in this case would be placed on by collegiate core W. of applications now with equal to g of applications and it's it was much faster it was more responsive and it it was so had it had some additional features which which we didn't have before so this is the case
studies to see how fast you can assimilate state born is a software for for simulating neutron and X-ray scattering of to compare it so it was a replacement format but look at this point and it uses a single it was single it's a line that just in the bottom of the left side and if you look at the old code to compel the old source be the new 1 well that's only 1 line and so an export statement to generate we for example so it's not such a complicated to produce movies with a G framework so what are the conclusions the use of fire with all energy framework and number and bottom rule extensions allows the relation realization of high-performance visualization applications both in scientific and technical environments the and the gehe offering but can seamlessly be integrated into any Python environment I would suggest suggested to use an the the integration has to be done by the that's mechanism so you can also use it in your own 5 and solution and the combination conduct and iconic wider were easy to manage and ready to use by solution that can be and enhanced by the use of ontology off from work especially with its functions for real-time of 3 D visualization functions so what's next you're not far from implementing multiple Ecodynamics so Beckett and which will produce such results and we have already all this stuff written in C comments simply have to right some simple reports which will then be integrated into all of our framework and with this friend like you will be able to do things like listener this simulation which have been calculated on our Arabic machine entered the data was right with with a simple Python script and then run not Visagie have read libraries you can then explore this seems to for example of race and produce high-quality graphics like shown on the right side of the slides and you can even do with this in highest-resolution if you give the correct parameters to those routines and uh you can see you know it's there and the other is a list the co presentation of DNA so what are our future plans well we have thoughts to combine the power of problem and G or the and we think it should be possible and the basic idea is to use geometry matplotlib back and so this would speed up matplotlib and all your matplotlib scripts would profit from this speed I think it's possible read and some of this development but I think we that's a good chance that we get this things running through and that even more challenges you learned about OK this morning and I think this should also be possible once we have the mets potluck integration it should also be possible to connect those scripts to the book back and which forbid mentioned this morning and the keynote at this point I think you should talk to from this tool cooperate well on this slide
find some resources that the Web for all framework that a good friend when it's hosted on by package in the index we even have 1st been style of binary distribution for for the GII framework and the talks should be online on this link which occur in find out later so some closing words maybe write me after this but I think it's important I think that this relation realizations of a could be better the prerequisites of form application will be described in terms of usability and responsiveness and interoperability instead of a list of software with with this model dependencies we should use native API so on on the different systems instead of GUI toolkits and really updated should not so great was incompatibility this is to find something that I have observed very often so you end up and so thank you for your attention thanks fall from from
this great any questions at any questions 1 of the features of a lot but he that I find very convenient is its integration with IPython mobile because I can play with the visualizations before I integrated into some of the occasional save a hybrid solution copies for publication or something like that so I wonder if this year framework compared to the typewriter no more and it from the right now it's not but because there some discrepancy analysis on the 1 side we are talking about immediate mode for a fixed and with IPython notebook best just a sequence of commands and maybe if you get element but let through back and running as the we consider that it could work but then it might be possible to use my powers but I'm not sure of all the thank you for your best he thanks find during training of neural networks inside the life of very much almost completely outside of the conceptual would it be possible for me to find GCI the eyes of the wife the ice that all excluding but intend to local do I have to point back to Python and as I want to visualize the training of the network during the training process and we call for so I'm not sure about this I think we have to talk about this decision for plant and animal questions OK I have a question and when he use this vectorized decorated and to use the same code in yeah limits of basic number 1 and with this just to nothing over the medical complain with the name there also something more important role this this vectorized and decorated available I mean even if it does nothing in the basis number 1 so you you may give give itself present on a machine or the on the I mean I mean for example you have this factorized which I think I understood only works for the problem and if you have only the basic motion and so on and the difference is that the the probe word is capable of pushing those real code and on and on there are on GPU and the topic was there's only a couple of paralyzing on your own CPU yet so worse this only needed if you want to use the GPU for the computing of number of operations in and what I mean is and if I have if I get culled from you which has the spectral rise decorated and I only have the basic version and installed that just not factorize but otherwise can all the vectorized decorated so know this would not work so if you want to try those demos you really have to to put traces the problem that there are a lot of other than a switch don't dependent on the thanks a lot again if there then meanwhile no questions have been and all of the so thanks again and
Computer animation
Computer animation
Computer animation
Computer animation
Computer animation
Computer animation
Computer animation


  315 ms - page object


AV-Portal 3.8.0 (dec2fe8b0ce2e718d55d6f23ab68f0b2424a1f3f)