Scientific Visualization

Size: px
Start display at page:

Download "Scientific Visualization"

Transcription

1 Member of the Helmholtz Association Scientific Visualization PGI-1 / IAS-1 Scientific Visualization Workshop Josef Heinen

2 Outline Motivation Scientific visualization software Visualization with Python Python performance optimizations Development tools Conclusion Future plans Discussion 2

3 Motivation We need easy-to-use methods for: visualizing and analyzing two- and threedimensional data sets, perhaps with a dynamic component creating publication-quality graphics making glossy figures for high impact journals or press releases 3

4 Scientific plotting methods line / bar graphs, curve plots scatter plots surface plots, mesh rendering with iso-surface generation contour plots vector / streamline plots volume graphics molecule plots 4

5 Scientific visualization tools Gnuplot Xmgrace OpenDX ParaView Mayavi2 MATLAB Mathematica Octave, Scilab, Freemat 5

6 drawbacks Gnuplot limited functionality Xmgrace too old, requires OSF/Motif (X11) OpenDX no longer maintained (2007) ParaView not very intuitive Mayavi2 not very responsive MATLAB 5 floating, 3 user licenses (16K /year) Mathematica expensive (~2.500 /user) Octave, Scilab, Freemat no syntax compatibility 6

7 Scientific visualization APIs Matplotlib mlab, VTK OpenGL pgplot PyQtGraph PyQwt / PyQwt3D 7

8 Scientific visualization APIs Matplotlib de-facto standard ( workhorse ) mlab, VTK versatile, but difficult to learn; slow OpenGL large and complex pgplot too old PyQtGraph no yet mature PyQwt / PyQwt3D currently unmaintained 8

9 Remaining solutions GUI + API: ParaView Mayavi2 API: matplotlib } both based on VTK n.n. Let s talk about this later 9

10 ParaView 10

11 Mayavi2 11

12 matplotlib 12

13 Problems so far separated 2D and (hardware accelerated) 3D world some graphics backends "only" produce pictures no presentation of continuous data streams bare minimum level of interoperability limited user interaction poor performance on large data sets APIs are partly device- and platform-dependent 13

14 Isn t there an all-in-one solution? All these components provide powerful APIs for Python There must be a reason for that 14

15 so let s push for Python free and open dynamic typed language, easy to understand powerful modules for science, technology, engineering and mathematics (STEM): NumPy, SciPy, Pandas, SymPy great visualization libraries: Matplotlib, MayaVi, VTK, PyOpenGL techniques to boost execution speed: PyPy, Cython, PyOpenCL, PyCUDA, Numba wrapper for GUI toolkits: PyQt4, PyGTK, wxwidgets 15

16 get it up and running IPython + NumPy + SciPy + Matplotlib What else do we need? 16

17 achieve more Python performance Numba: compiles annotated Python and NumPy code to LLVM (through decorators) just-in-time compilation vectorization parallelization NumbaPro: adds support for multicore and GPU architectures (* Numba (Pro) is part of Anaconda (Accelerate), a (commercial) Python distribution from Continuum Analytics 17

18 achieve more graphics performance and interop GR framework: a universal framework for crossplatform visualization (* procedural graphics backend presentation of continuous data streams coexistent 2D and 3D world interoperability with GUI toolkits good user interaction (* The GR framework is an in-house project initiated by the group Scientific IT Systems 18

19 Our Scientific Python distribution IPython + NumPy + SciPy + Numba + GR framework + PyOpenGL + PyOpenCL + PyCUDA + PyQt4/PyGTK/wxWidgets more performance and interoperability 19

20 How can we use it? GR framework (and other mentioned packages) available on all Linux and OS X machines (Python and IPython) at PGI / JCNS: % gr % igr" GR framework can also be used with Anaconda: % anaconda Windows version(s) on request 20

21 Batteries included NumPy package for numerical computation SciPy collection of numerical algorithms and specific toolboxes Matplotlib popular plotting package Pandas provides high-performance, easy to use data structures SymPy symbolic mathematics and computer algebra IPython rich interactive interface (including IPython notebook) Mayavi2 3D visualization framework, based on VTK scikit-image algorithms for image processing h5py, PyTables managing hierarchical datasets (HDF5) 21

22 Visualization with Python Qt / wx event loop IPython / PyPy/ Anaconda GR C / C++ GR3... glgr / igr App C / ObjC socket communication off-screen rendering direct rendering JavaScript generation POV-Ray generation GLUT wxglcanvas QGLWidget OpenGL ES Browser GKS WebGL OpenGL (WGL / CGL / GLX) POV-Ray GKS logical device drivers Qt wx X11 Quartz Win32 Java PDF MOV PS 0MQ SVG OpenGL... More logical device drivers / plugins: CGM, GKSM, GIF, RF, UIL WMF, Xfig GS (BMP, JPEG, PNG, TIFF) gksqt GKSTerm gksweb HTML5 Highlights: simultaneous output to multiple output devices direct generation of MPEG4 image sequences flicker-free display ("double buffering") 22

23 Presentation of continuous data streams in 2D... from numpy import sin, cos, sqrt, pi, array import gr def rk4(x, h, y, f): k1 = h * f(x, y) k2 = h * f(x * h, y * k1) k3 = h * f(x * h, y * k2) k4 = h * f(x + h, y + k3) return x + h, y + (k1 + 2 * (k2 + k3) + k4) / 6.0 def damped_pendulum_deriv(t, state): theta, omega = state return array([omega, -gamma * omega / L * sin(theta)]) def pendulum(t, theta, omega) gr.clearws()... # draw pendulum (pivot point, rod, bob,...) gr.updatews() theta = 70.0 # initial angle gamma = 0.1 # damping coefficient L = 1 # pendulum length t = 0 dt = 0.04 state = array([theta * pi / 180, 0]) while t < 30: t, state = rk4(t, dt, state, damped_pendulum_deriv) theta, omega = state pendulum(t, theta, omega) 23

24 ... with full 3D functionality from numpy import sin, cos, array import gr, gr3 def rk4(x, h, y, f): k1 = h * f(x, y) k2 = h * f(x * h, y * k1) k3 = h * f(x * h, y * k2) k4 = h * f(x + h, y + k3) return x + h, y + (k1 + 2 * (k2 + k3) + k4) / 6.0 def pendulum_derivs(t, state): t1, w1, t2, w2 = state a = (m1 + m2) * l1 b = m2 * l2 * cos(t1 - t2) c = m2 * l1 * cos(t1 - t2) d = m2 * l2 e = -m2 * l2 * w2**2 * sin(t1 - t2) * (m1 + m2) * sin(t1) f = m2 * l1 * w1**2 * sin(t1 - t2) - m2 * 9.81 * sin(t2) return array([w1, (e*d-b*f) / (a*d-c*b), w2, (a*f-c*e) / (a*d-c*b)]) def double_pendulum(theta, length, mass): gr.clearws() gr3.clear()... # draw pivot point, rods, bobs (using 3D meshes) gr3.drawimage(0, 1, 0, 1, 500, 500, gr3.gr3_drawable.gr3_drawable_gks) gr.updatews() 24

25 ... in real-time import wave, pyaudio import numpy import gr SAMPLES=1024 FS=44100 # Sampling frequency f = [FS/float(SAMPLES)*t for t in range(1, SAMPLES/2+1)] wf = wave.open('monty_python.wav', 'rb') pa = pyaudio.pyaudio() stream = pa.open(format=pa.get_format_from_width(wf.getsampwidth()), channels=wf.getnchannels(), rate=wf.getframerate(), output=true)... data = wf.readframes(samples) while data = '' and len(data) == SAMPLES * wf.getsampwidth(): stream.write(data) amplitudes = numpy.fromstring(data, dtype=numpy.short) power = abs(numpy.fft.fft(amplitudes / ))[:SAMPLES/2] gr.clearws()... gr.polyline(samples/2, f, power) gr.updatews() data = wf.readframes(samples) 25

26 ... with user interaction import gr3 from OpenGL.GLUT import * #... Read MRI data width = height = 1000 isolevel = 100 angle = 0 def display(): vertices, normals = gr3.triangulate(data, (1.0/160, 1.0/160, 1.0/200), (-0.5, -0.5, -0.5), isolevel) mesh = gr3.createmesh(len(vertices)*3, vertices, normals, np.ones(vertices.shape)) gr3.drawmesh(mesh, 1, (0,0,0), (0,0,1), (0,1,0), (1,1,1), (1,1,1)) gr3.cameralookat(-2*math.cos(angle), -2*math.sin(angle), -0.25, 0, 0, -0.25, 0, 0, -1) gr3.drawimage(0, width, 0, height, width, height, gr3.gr3_drawable.gr3_drawable_opengl) glutswapbuffers() gr3.clear() gr3.deletemesh(ctypes.c_int(mesh.value)) def motion(x, y): isolevel = 256*y/height angle = -math.pi + 2*math.pi*x/width glutpostredisplay() glutinit() glutinitwindowsize(width, height) glutcreatewindow("marching Cubes Demo") glutdisplayfunc(display) glutmotionfunc(motion) glutmainloop() 26

27 ... with Qt 27

28 ... and wxwidgets 28

29 Scalable graphics in Web browsers 29

30 Import PDF import gr (w, h, data) = gr.readimage("fs.pdf") if w < h: r = float(w)/h gr.setviewport(0.5*(1-r), 0.5*(1+r), 0, 1); else: r = float(h)/w gr.setviewport(0, 1, 0.5*(1-r), 0.5*(1+r)); gr.drawimage(0, 1, 0, 1, w, h, data) gr.updatews() 30

31 Success stories (I) World s most powerful laboratory small-angle X-ray scattering facility at Forschungszentrum Jülich 31

32 Success stories (II) Nframes = 100 radius = 1 height = 4 distance = 5 def RunSimulation(): # defining materials mair = HomogeneousMaterial("Air", 0.0, 0.0) msubstrate = HomogeneousMaterial("Substrate", 6e-6, 2e-8) mparticle = HomogeneousMaterial("Particle", 6e-4, 2e-8) # collection of particles cylinder_ff = FormFactorCylinder(radius, height) cylinder = Particle(mParticle, cylinder_ff) particle_layout = ParticleLayout() particle_layout.addparticle(cylinder) # interference function interference = InterferenceFunction1DParaCrystal(distance, 3 * nanometer) particle_layout.addinterferencefunction(interference) # air layer with particles and substrate form multi layer air_layer = Layer(mAir) air_layer.setlayout(particle_layout) substrate_layer = Layer(mSubstrate) multi_layer = MultiLayer() multi_layer.addlayer(air_layer) multi_layer.addlayer(substrate_layer) # build and run experiment simulation = Simulation() simulation.setdetectorparameters(250, -4*degree, 4*degree, 250, 0*degree, 8*degree) simulation.setbeamparameters(1.0 * angstrom, 0.2 * degree, 0.0 * degree) simulation.setsample(multi_layer) simulation.runsimulation() return simulation.getintensitydata().getarray() BornAgain A software to simulate and fit neutron and x-ray scattering at grazing incidence (GISANS and GISAXS), using distortedwave Born approximation (DWBA) def SetParameters(i): radius = (1. + (3.0/Nframes)*i) * nanometer height = (1. + (4.0/Nframes)*i) * nanometer distance = (10. - (1.0/Nframes)*i) * nanometer for i in range(100): SetParameters(i) result = RunSimulation() gr.pygr.imshow(numpy.log10(numpy.rot90(result, 1)), cmap=gr.colormap_pilatus) 32

33 Success stories (III) NICOS a network-based control system written for neutron scattering instruments at the FRM II 33

34 Coming soon: Python moldyn package 34

35 with video output 35

36 and POV-Ray output 36

37 in highest resolution 37

38 Performance optimizations NumPy module for handling multi-dimensional arrays (ndarray) Numba (Anaconda) just-in-time compilation driven (LLVM) vectorization of ndarray based functions (ufuncs) Numba Pro (Anaconda Accelerate) parallel loops and ufuncs execution of ufunfs on GPUs Python GPU kernels GPU optimized libraries (cublas, cufft, curand) 38

39 Realization NumPy vector operations on ndarrays instead of loops works in any NumPy Python environment Numba (Anaconda) decorators useful for many function calls with big arrays Numba Pro (Anaconda Accelerate) decorators implementation of multi-core / GPU kernels in "Python" switch to GPU-optimized features useful only for "large" arrays performance 39

40 Particle simulation import numpy as np from numba.decorators import autojit N = 300 M = 0.05 * np.ones(n) size = def step(dt, size, a): a[0] += dt * a[1]... # number of particles # masses # particle size # update positions n = a.shape[1] D = np.empty((n, n), dtype=np.float) for i in range(n): for j in range(n): dx = a[0, i, 0] - a[0, j, 0] dy = a[0, i, 1] - a[0, j, 1] D[i, j] = np.sqrt(dx*dx + dy*dy)... # find pairs of particles undergoing a collision... # check for crossing boundary return a a[0, :] = np.random.random((n, 2)) # positions a[1, :] = np.random.random((n, 2)) # velocities a[0, :] *= (4-2*size) dt = 1. / 30 while True: a = step(dt, size, a)... 40

41 Diffusion import numpy from numba.decorators import jit dx = dy = a = 0.5 dt = dx*dx*dy*dy/(2*a*(dx*dx+dy*dy)) timesteps = 300 nx = int(1/dx) ny = int(1/dy) ui = numpy.zeros([nx,ny]) u = numpy.zeros([nx,ny]) def diff_step(u, ui): for i in range(1,nx-1): for j in range(1,ny-1): uxx = ( ui[i+1,j] - 2*ui[i,j] + ui[i-1, j] )/(dx*dx) uyy = ( ui[i,j+1] - 2*ui[i,j] + ui[i, j-1] )/(dy*dy) u[i,j] = ui[i,j]+dt*a*(uxx+uyy) diff_step_numba = jit('void(f8[:,:], f8[:,:])')(diff_step) for m in range(timesteps): diff_step_numba(u, ui) ui = numpy.copy(u)... 41

42 Mandelbrot set from numbapro import vectorize import numpy as f8, f8, f8, f8, uint32, uint32, uint32)'], target='gpu') def mandel(tid, min_x, max_x, min_y, max_y, width, height, iters): pixel_size_x = (max_x - min_x) / width pixel_size_y = (max_y - min_y) / height x = tid % width y = tid / width real = min_x + x * pixel_size_x imag = min_y + y * pixel_size_y c = complex(real, imag) z = 0.0j for i in range(iters): z = z * z + c if (z.real * z.real + z.imag * z.imag) >= 4: return i return 255 def create_fractal(min_x, max_x, min_y, max_y, width, height, iters): tids = np.arange(width * height, dtype=np.uint32) return mandel(tids, np.float64(min_x), np.float64(max_x), np.float64(min_y), np.float64(max_y), np.uint32(height), np.uint32(width), np.uint32(iters)) 42

43 Performance comparison Calculation of Mandelbrot set 43

44 Numba (Pro) review functions with numerical code can be compiled with little effort and lead to impressive results numerical code should be separated from logic statements (and processing of lists, dictionaries) advanced Technologie due to LLVM intermediate language (LLVM IR) easy installation and maintenance Download link (Continuum Analytics): % bash Anaconda-1.x.x-[Linux MacOSX]-x86[_64].sh % conda update conda % conda update anaconda 44

45 Development tools You can use your favorite editor and start Python in a shell. But the impatient user should chose a development environment: 45

46 IPython console 46

47 IPython notebook 47

48 Spyder 48

49 PyCharm 49

50 Bokeh import numpy as np from scipy.integrate import odeint from bokeh.plotting import * sigma = 10 rho = 28 beta = 8.0/3 theta = 3 * np.pi / 4 def lorenz(xyz, t): x, y, z = xyz x_dot = sigma * (y - x) y_dot = x * rho - x * z - y z_dot = x * y - beta* z return [x_dot, y_dot, z_dot] initial = (-10, -7, 35) t = np.arange(0, 100, 0.006) solution = odeint(lorenz, initial, t) x = solution[:, 0] y = solution[:, 1] z = solution[:, 2] xprime = np.cos(theta) * x - np.sin(theta) * y colors = ["#C6DBEF", "#9ECAE1", "#6BAED6", #4292C6", "#2171B5", "#08519C", "#08306B",] output_file("lorenz.html", title="lorenz.py example") multi_line(np.array_split(xprime, 7), np.array_split(z, 7), line_color=colors, line_alpha=0.8, line_width=1.5, tools= pan,wheel_zoom,box_zoom,reset,previewsave", title="lorenz example", name="lorenz_example") show() # open a browser 50

51 Resources Website: PyPI: Git Repository: Binstar: Talk: Scientific Visualization Workshop (PDF, HTML) 51

52 Website 52

53 Git-Repo 53

54 PyPI 54

55 Binstar 55

56 Conclusion The use of Python with the GR framework and Numba (Pro) extensions allows the realization of high-performance visualization applications in scientific and technical environments The GR framework can seamlessly be integrated into "foreign" Python environments, e.g. Anaconda, by using the ctypes mechanism Anaconda (Accelerate) is an easy to manage (commercial) Python distribution that can be enhanced by the use of the GR framework with its functions for real-time or 3D visualization applications 56

57 Future plans implement your() feature requests moldyn package for Python more tutorials convenience functions documentation examples (gallery) IPython notebook integration Bokeh integration 57

58 Thank you for your attention References: Numba, A Dynamic Python compiler for Science: Continuum Analytics: Contact: Thanks to: Florian Rhiem, Ingo Heimbach, Christian Felder, David Knodt, Jörg Winkler, Fabian Beule, Marcel Dück, Marvin Goblet, et al. 58

GR.jl Plotting for Julia based on GR

GR.jl Plotting for Julia based on GR Member of the Helmholtz Association GR.jl Plotting for Julia based on GR June 24 th 28 th, 2015 Massachusetts Institute of Technology, Cambridge, Massachusetts JuliaCon 2015 Josef Heinen @josef_heinen

More information

Getting more out of Matplotlib with GR

Getting more out of Matplotlib with GR Member of the Helmholtz Association Getting more out of Matplotlib with GR July 20 th 26 th, 2015 Bilbao EuroPython 2015 Josef Heinen @josef_heinen Visualization needs visualize and analyzing two- and

More information

GR Framework / MODBUS on Raspberry Pi

GR Framework / MODBUS on Raspberry Pi Member of the Helmholtz Association GR Framework / MODBUS on Raspberry Pi May 4 5, 2013 PythonCamp 2013 Cologne Josef Heinen Part I: GR Framework on Raspberry Pi GR basic functionality Ø lines, marker

More information

GR A universal framework for visualization applications

GR A universal framework for visualization applications Mitglied der Helmholtz-Gemeinschaft GR A universal framework for visualization applications 26. April 2012 73. Koordinierungstreffen J. Heinen GR Layer Structure Fortran C / C++ Objective-C Python Ruby...

More information

Neutron Science Visualization Software

Neutron Science Visualization Software Mitglied der Helmholtz-Gemeinschaft Neutron Science Visualization Software 1. September 2011 69. Koordinierungstreffen J. Heinen Contents ü Visualization Software Requirements in Neutron Science ü Available

More information

Unlocking the True Value of Hadoop with Open Data Science

Unlocking the True Value of Hadoop with Open Data Science Unlocking the True Value of Hadoop with Open Data Science Kristopher Overholt Solution Architect Big Data Tech 2016 MinneAnalytics June 7, 2016 Overview Overview of Open Data Science Python and the Big

More information

Nicolas P. Rougier PyConFr Conference 2014 Lyon, October 24 25

Nicolas P. Rougier PyConFr Conference 2014 Lyon, October 24 25 GRAPHICS AND ANIMATIONS IN PYTHON USING MATPLOTLIB AND OPENGL Nicolas P. Rougier PyConFr Conference 2014 Lyon, October 24 25 Graphics and Animations in Python Where do we start? A Bit of Context The Python

More information

Visualizing Data: Scalable Interactivity

Visualizing Data: Scalable Interactivity Visualizing Data: Scalable Interactivity The best data visualizations illustrate hidden information and structure contained in a data set. As access to large data sets has grown, so has the need for interactive

More information

MayaVi: A free tool for CFD data visualization

MayaVi: A free tool for CFD data visualization MayaVi: A free tool for CFD data visualization Prabhu Ramachandran Graduate Student, Dept. Aerospace Engg. IIT Madras, Chennai, 600 036. e mail: [email protected] Keywords: Visualization, CFD data,

More information

Why are we teaching you VisIt?

Why are we teaching you VisIt? VisIt Tutorial Why are we teaching you VisIt? Interactive (GUI) Visualization and Analysis tool Multiplatform, Free and Open Source The interface looks the same whether you run locally or remotely, serial

More information

3D Data visualization with Mayavi

3D Data visualization with Mayavi 3D Data visualization with Mayavi Prabhu Ramachandran Department of Aerospace Engineering IIT Bombay SciPy.in 2012, December 27, IIT Bombay. Prabhu Ramachandran (IIT Bombay) Mayavi2 tutorial 1 / 53 In

More information

Data Analytics at NERSC. Joaquin Correa [email protected] NERSC Data and Analytics Services

Data Analytics at NERSC. Joaquin Correa JoaquinCorrea@lbl.gov NERSC Data and Analytics Services Data Analytics at NERSC Joaquin Correa [email protected] NERSC Data and Analytics Services NERSC User Meeting August, 2015 Data analytics at NERSC Science Applications Climate, Cosmology, Kbase, Materials,

More information

PyCompArch: Python-Based Modules for Exploring Computer Architecture Concepts

PyCompArch: Python-Based Modules for Exploring Computer Architecture Concepts PyCompArch: Python-Based Modules for Exploring Computer Architecture Concepts Workshop on Computer Architecture Education 2015 Dan Connors, Kyle Dunn, Ryan Bueter Department of Electrical Engineering University

More information

IDL. Get the answers you need from your data. IDL

IDL. Get the answers you need from your data. IDL Get the answers you need from your data. IDL is the preferred computing environment for understanding complex data through interactive visualization and analysis. IDL Powerful visualization. Interactive

More information

Programming Languages & Tools

Programming Languages & Tools 4 Programming Languages & Tools Almost any programming language one is familiar with can be used for computational work (despite the fact that some people believe strongly that their own favorite programming

More information

Continuum Data Analytics Stack

Continuum Data Analytics Stack Continuum Data Analytics Stack Pycon DE 2013, Köln Yves Hilpisch Continuum Analytics Europe GmbH [email protected] @dyjh Agenda Big Data and Python Architecting for Data Continuum s Stack Big Data and

More information

Exercise 0. Although Python(x,y) comes already with a great variety of scientic Python packages, we might have to install additional dependencies:

Exercise 0. Although Python(x,y) comes already with a great variety of scientic Python packages, we might have to install additional dependencies: Exercise 0 Deadline: None Computer Setup Windows Download Python(x,y) via http://code.google.com/p/pythonxy/wiki/downloads and install it. Make sure that before installation the installer does not complain

More information

Today's Topics. COMP 388/441: Human-Computer Interaction. simple 2D plotting. 1D techniques. Ancient plotting techniques. Data Visualization:

Today's Topics. COMP 388/441: Human-Computer Interaction. simple 2D plotting. 1D techniques. Ancient plotting techniques. Data Visualization: COMP 388/441: Human-Computer Interaction Today's Topics Overview of visualization techniques 1D charts, 2D plots, 3D+ techniques, maps A few guidelines for scientific visualization methods, guidelines,

More information

ANACONDA. Open Source Modern Analytics Platform Powered by Python ANACONDA DELIVERS OPEN ENTERPRISE PYTHON KEY FEATURES WHY YOU LL LOVE ANACONDA

ANACONDA. Open Source Modern Analytics Platform Powered by Python ANACONDA DELIVERS OPEN ENTERPRISE PYTHON KEY FEATURES WHY YOU LL LOVE ANACONDA 1 Open Source Modern Analytics Platform Powered by Python KEY FEATURES 100% Open Source Modern Analytics Platform Powered by Python Single click installation Package management Works with Windows, OS X,

More information

Material for tutorial. Twitter: prabhu_r. Slides: http://goo.gl/5u7pv. Demos: http://goo.gl/mc0ea. www.enthought.com/~prabhu/m2_tutorial.

Material for tutorial. Twitter: prabhu_r. Slides: http://goo.gl/5u7pv. Demos: http://goo.gl/mc0ea. www.enthought.com/~prabhu/m2_tutorial. Material for tutorial Twitter: prabhu_r Slides: http://goo.gl/5u7pv www.enthought.com/~prabhu/m2_tutorial.pdf Demos: http://goo.gl/mc0ea www.enthought.com/~prabhu/demos.zip 3D Data visualization with Mayavi

More information

Introduction to Visualization with VTK and ParaView

Introduction to Visualization with VTK and ParaView Introduction to Visualization with VTK and ParaView R. Sungkorn and J. Derksen Department of Chemical and Materials Engineering University of Alberta Canada August 24, 2011 / LBM Workshop 1 Introduction

More information

Introduction to Python

Introduction to Python Introduction to Python Sophia Bethany Coban Problem Solving By Computer March 26, 2014 Introduction to Python Python is a general-purpose, high-level programming language. It offers readable codes, and

More information

Python. Python. 1 Python. M.Ulvrova, L.Pouilloux (ENS LYON) Informatique L3 Automne 2011 1 / 25

Python. Python. 1 Python. M.Ulvrova, L.Pouilloux (ENS LYON) Informatique L3 Automne 2011 1 / 25 Python 1 Python M.Ulvrova, L.Pouilloux (ENS LYON) Informatique L3 Automne 2011 1 / 25 Python makes you fly M.Ulvrova, L.Pouilloux (ENS LYON) Informatique L3 Automne 2011 2 / 25 Let s start ipython vs python

More information

From mathematics to a nice figure in a LaTeX document

From mathematics to a nice figure in a LaTeX document From mathematics to a nice figure in a L A T E Xdocument: a post-processing chain Matthieu Haefele High Level Support Team Max-Planck-Institut für Plasmaphysik, München, Germany Autrans, 26-30 Septembre

More information

Introduction Installation Comparison. Department of Computer Science, Yazd University. SageMath. A.Rahiminasab. October9, 2015 1 / 17

Introduction Installation Comparison. Department of Computer Science, Yazd University. SageMath. A.Rahiminasab. October9, 2015 1 / 17 Department of Computer Science, Yazd University SageMath A.Rahiminasab October9, 2015 1 / 17 2 / 17 SageMath(previously Sage or SAGE) System for Algebra and Geometry Experimentation is mathematical software

More information

ANSA and μeta as a CAE Software Development Platform

ANSA and μeta as a CAE Software Development Platform ANSA and μeta as a CAE Software Development Platform Michael Giannakidis, Yianni Kolokythas BETA CAE Systems SA, Thessaloniki, Greece Overview What have we have done so far Current state Future direction

More information

The Ultra-scale Visualization Climate Data Analysis Tools (UV-CDAT): A Vision for Large-Scale Climate Data

The Ultra-scale Visualization Climate Data Analysis Tools (UV-CDAT): A Vision for Large-Scale Climate Data The Ultra-scale Visualization Climate Data Analysis Tools (UV-CDAT): A Vision for Large-Scale Climate Data Lawrence Livermore National Laboratory? Hank Childs (LBNL) and Charles Doutriaux (LLNL) September

More information

The Most Popular UI/Apps Framework For IVI on Linux

The Most Popular UI/Apps Framework For IVI on Linux The Most Popular UI/Apps Framework For IVI on Linux About me Tasuku Suzuki Qt Engineer Qt, Developer Experience and Marketing, Nokia Have been using Qt since 2002 Joined Trolltech in 2006 Nokia since 2008

More information

Availability of the Program A free version is available of each (see individual programs for links).

Availability of the Program A free version is available of each (see individual programs for links). Choosing a Programming Platform Diane Hobenshield Tepylo, Lisa Floyd, and Steve Floyd (Computer Science and Mathematics teachers) The Tasks Working Group had many questions and concerns about choosing

More information

Postprocessing with Python

Postprocessing with Python Postprocessing with Python Boris Dintrans (CNRS & University of Toulouse) [email protected] Collaborator: Thomas Gastine (PhD) Outline Outline Introduction - what s Python and why using it? - Installation

More information

Data analysis and visualization topics

Data analysis and visualization topics Data analysis and visualization topics Sergei MAURITS, ARSC HPC Specialist [email protected] Content Day 1 - Visualization of 3-D data - basic concepts - packages - steady graphics formats and compression

More information

Analysis Programs DPDAK and DAWN

Analysis Programs DPDAK and DAWN Analysis Programs DPDAK and DAWN An Overview Gero Flucke FS-EC PNI-HDRI Spring Meeting April 13-14, 2015 Outline Introduction Overview of Analysis Programs: DPDAK DAWN Summary Gero Flucke (DESY) Analysis

More information

Intro to scientific programming (with Python) Pietro Berkes, Brandeis University

Intro to scientific programming (with Python) Pietro Berkes, Brandeis University Intro to scientific programming (with Python) Pietro Berkes, Brandeis University Next 4 lessons: Outline Scientific programming: best practices Classical learning (Hoepfield network) Probabilistic learning

More information

Lecture 1 Introduction to Android

Lecture 1 Introduction to Android These slides are by Dr. Jaerock Kwon at. The original URL is http://kettering.jrkwon.com/sites/default/files/2011-2/ce-491/lecture/alecture-01.pdf so please use that instead of pointing to this local copy

More information

First Prev Next Last MayaVi: A Free Tool for 3D/2D Data Visualization Prabhu Ramachandran October, 25, 2002 Abstract MayaVi (http://mayavi.sf.net) is an easy to use tool for interactive 3D/2D data visualization

More information

Chaco: A Plotting Package for Scientists and Engineers. David C. Morrill Enthought, Inc.

Chaco: A Plotting Package for Scientists and Engineers. David C. Morrill Enthought, Inc. Chaco: A Plotting Package for Scientists and Engineers David C. Morrill Enthought, Inc. Introduction With packages such as Mathematica and MatLab, scientists and engineers already have a variety of high-quality

More information

JavaFX Session Agenda

JavaFX Session Agenda JavaFX Session Agenda 1 Introduction RIA, JavaFX and why JavaFX 2 JavaFX Architecture and Framework 3 Getting Started with JavaFX 4 Examples for Layout, Control, FXML etc Current day users expect web user

More information

Computational Mathematics with Python

Computational Mathematics with Python Boolean Arrays Classes Computational Mathematics with Python Basics Olivier Verdier and Claus Führer 2009-03-24 Olivier Verdier and Claus Führer Computational Mathematics with Python 2009-03-24 1 / 40

More information

HPC & Visualization. Visualization and High-Performance Computing

HPC & Visualization. Visualization and High-Performance Computing HPC & Visualization Visualization and High-Performance Computing Visualization is a critical step in gaining in-depth insight into research problems, empowering understanding that is not possible with

More information

VisIt Visualization Tool

VisIt Visualization Tool The Center for Astrophysical Thermonuclear Flashes VisIt Visualization Tool Randy Hudson [email protected] Argonne National Laboratory Flash Center, University of Chicago An Advanced Simulation and Computing

More information

Computational Mathematics with Python

Computational Mathematics with Python Computational Mathematics with Python Basics Claus Führer, Jan Erik Solem, Olivier Verdier Spring 2010 Claus Führer, Jan Erik Solem, Olivier Verdier Computational Mathematics with Python Spring 2010 1

More information

Web Based 3D Visualization for COMSOL Multiphysics

Web Based 3D Visualization for COMSOL Multiphysics Web Based 3D Visualization for COMSOL Multiphysics M. Jüttner* 1, S. Grabmaier 1, W. M. Rucker 1 1 University of Stuttgart Institute for Theory of Electrical Engineering *Corresponding author: Pfaffenwaldring

More information

HPC Wales Skills Academy Course Catalogue 2015

HPC Wales Skills Academy Course Catalogue 2015 HPC Wales Skills Academy Course Catalogue 2015 Overview The HPC Wales Skills Academy provides a variety of courses and workshops aimed at building skills in High Performance Computing (HPC). Our courses

More information

Cross-Platform GP with Organic Vectory BV Project Services Consultancy Services Expertise Markets 3D Visualization Architecture/Design Computing Embedded Software GIS Finance George van Venrooij Organic

More information

Parallel Large-Scale Visualization

Parallel Large-Scale Visualization Parallel Large-Scale Visualization Aaron Birkland Cornell Center for Advanced Computing Data Analysis on Ranger January 2012 Parallel Visualization Why? Performance Processing may be too slow on one CPU

More information

A Hybrid Visualization System for Molecular Models

A Hybrid Visualization System for Molecular Models A Hybrid Visualization System for Molecular Models Charles Marion, Joachim Pouderoux, Julien Jomier Kitware SAS, France Sébastien Jourdain, Marcus Hanwell & Utkarsh Ayachit Kitware Inc, USA Web3D Conference

More information

Data analysis and visualization topics

Data analysis and visualization topics 10/23/12 Data analysis and visualization topics Sergei MAURITS, ARSC HPC Specialist [email protected] Schedule - Visualization of 3-D data, visualization package Vis5D, conversion of user data to.v5d format

More information

Feature Comparison of PTC Creo View MCAD. Product Suite. Topic Sheet. Page 1 of 6 Feature Comparison of PTC Creo View MCAD Product Suite

Feature Comparison of PTC Creo View MCAD. Product Suite. Topic Sheet. Page 1 of 6 Feature Comparison of PTC Creo View MCAD Product Suite Comparison of Product Suite User Interface Lite Microsoft Fluent paradigm Ribbon User Interface User interface customization Command finder Usage Standalone version Interoperability with PTC Products Performance

More information

Python for Scientific Computing. http://bender.astro.sunysb.edu/classes/python-science

Python for Scientific Computing. http://bender.astro.sunysb.edu/classes/python-science http://bender.astro.sunysb.edu/classes/python-science Course Goals Simply: to learn how to use python to do Numerical analysis Data analysis Plotting and visualizations Symbol mathematics Write applications...

More information

PyCompArch: Python-Based Modules for Exploring Computer Architecture Concepts

PyCompArch: Python-Based Modules for Exploring Computer Architecture Concepts PyCompArch: Python-Based Modules for Exploring Computer Architecture Concepts Dan Connors, Kyle Dunn, and Ryan Bueter Department of Electrical Engineering University of Colorado Denver Denver, Colorado

More information

Scientific Programming with Python. Randy M. Wadkins, Ph.D. Asst. Prof. of Chemistry & Biochem.

Scientific Programming with Python. Randy M. Wadkins, Ph.D. Asst. Prof. of Chemistry & Biochem. Scientific Programming with Python Randy M. Wadkins, Ph.D. Asst. Prof. of Chemistry & Biochem. What is Python? Python for computers is: a scripting language a programming language interpreted, so it

More information

Main Bullet #1 Main Bullet #2 Main Bullet #3

Main Bullet #1 Main Bullet #2 Main Bullet #3 Main Bullet #1 Main Bullet #2 Main Bullet #3 : a bag of chips or all that? :A highlevelcrossplatformpowerfullyfunapplication andorsmallusefultooldevelopmentlanguage Why? Main Bullet #1 Main Bullet Vas

More information

FDVis: the Interactive Visualization and Steering Environment for the Computational Processes Using the Finite-Difference Method

FDVis: the Interactive Visualization and Steering Environment for the Computational Processes Using the Finite-Difference Method Nonlinear Analysis: Modelling and Control, 2003, Vol. 8, No. 2, 71 82 FDVis: the Interactive Visualization and Steering Environment for the Computational Processes Using the Finite-Difference Method A.

More information

Introduction to TIZEN SDK

Introduction to TIZEN SDK Introduction to TIZEN SDK Hyungoo Kang, Kangho Kim S-Core, Samsung April, 2012 2012 SAMSUNG Electronics Co. Contents Overview Tizen SDK (selected features) Demo (10 minutes) Conclusion 2/20 2012 SAMSUNG

More information

Visualizing molecular simulations

Visualizing molecular simulations Visualizing molecular simulations ChE210D Overview Visualization plays a very important role in molecular simulations: it enables us to develop physical intuition about the behavior of a system that is

More information

Applications to Computational Financial and GPU Computing. May 16th. Dr. Daniel Egloff +41 44 520 01 17 +41 79 430 03 61

Applications to Computational Financial and GPU Computing. May 16th. Dr. Daniel Egloff +41 44 520 01 17 +41 79 430 03 61 F# Applications to Computational Financial and GPU Computing May 16th Dr. Daniel Egloff +41 44 520 01 17 +41 79 430 03 61 Today! Why care about F#? Just another fashion?! Three success stories! How Alea.cuBase

More information

Big Data Paradigms in Python

Big Data Paradigms in Python Big Data Paradigms in Python San Diego Data Science and R Users Group January 2014 Kevin Davenport! http://kldavenport.com [email protected] @KevinLDavenport Thank you to our sponsors: Setting up

More information

CHAPTER FIVE RESULT ANALYSIS

CHAPTER FIVE RESULT ANALYSIS CHAPTER FIVE RESULT ANALYSIS 5.1 Chapter Introduction 5.2 Discussion of Results 5.3 Performance Comparisons 5.4 Chapter Summary 61 5.1 Chapter Introduction This chapter outlines the results obtained from

More information

Android Architecture. Alexandra Harrison & Jake Saxton

Android Architecture. Alexandra Harrison & Jake Saxton Android Architecture Alexandra Harrison & Jake Saxton Overview History of Android Architecture Five Layers Linux Kernel Android Runtime Libraries Application Framework Applications Summary History 2003

More information

Exploratory Climate Data Visualization and Analysis

Exploratory Climate Data Visualization and Analysis Exploratory Climate Data Visualization and Analysis by Thomas Maxwell, Jerry Potter & Laura Carriere, NASA NCCS and the UVCDAT Development Consortium Scientific Visualization! We process, understand, and

More information

Introduction to MATLAB Gergely Somlay Application Engineer [email protected]

Introduction to MATLAB Gergely Somlay Application Engineer gergely.somlay@gamax.hu Introduction to MATLAB Gergely Somlay Application Engineer [email protected] 2012 The MathWorks, Inc. 1 What is MATLAB? High-level language Interactive development environment Used for: Numerical

More information

Outline. 1.! Development Platforms for Multimedia Programming!

Outline. 1.! Development Platforms for Multimedia Programming! Outline 1.! Development Platforms for Multimedia Programming! 1.1.! Classification of Development Platforms! 1.2.! A Quick Tour of Various Development Platforms! 2.! Multimedia Programming with Python

More information

Introduction to Python

Introduction to Python 1 Daniel Lucio March 2016 Creator of Python https://en.wikipedia.org/wiki/guido_van_rossum 2 Python Timeline Implementation Started v1.0 v1.6 v2.1 v2.3 v2.5 v3.0 v3.1 v3.2 v3.4 1980 1991 1997 2004 2010

More information

Introduction GPU Hardware GPU Computing Today GPU Computing Example Outlook Summary. GPU Computing. Numerical Simulation - from Models to Software

Introduction GPU Hardware GPU Computing Today GPU Computing Example Outlook Summary. GPU Computing. Numerical Simulation - from Models to Software GPU Computing Numerical Simulation - from Models to Software Andreas Barthels JASS 2009, Course 2, St. Petersburg, Russia Prof. Dr. Sergey Y. Slavyanov St. Petersburg State University Prof. Dr. Thomas

More information

Java the UML Way: Integrating Object-Oriented Design and Programming

Java the UML Way: Integrating Object-Oriented Design and Programming Java the UML Way: Integrating Object-Oriented Design and Programming by Else Lervik and Vegard B. Havdal ISBN 0-470-84386-1 John Wiley & Sons, Ltd. Table of Contents Preface xi 1 Introduction 1 1.1 Preliminaries

More information

SUNPY: PYTHON FOR SOLAR PHYSICS. AN IMPLEMENTATION FOR LOCAL CORRELATION TRACKING

SUNPY: PYTHON FOR SOLAR PHYSICS. AN IMPLEMENTATION FOR LOCAL CORRELATION TRACKING ISSN 1845 8319 SUNPY: PYTHON FOR SOLAR PHYSICS. AN IMPLEMENTATION FOR LOCAL CORRELATION TRACKING J. I. CAMPOS ROZO 1 and S. VARGAS DOMINGUEZ 2 1 Universidad Nacional de Colombia, Bogotá, Colombia 2 Big

More information

Modernizing Simulation Input Generation and Post-Simulation Data Visualization with Eclipse ICE

Modernizing Simulation Input Generation and Post-Simulation Data Visualization with Eclipse ICE and Post- Data Visualization with Eclipse ICE Alex McCaskey Research Staff Oak Ridge National Laboratory [email protected] @amccaskey2223 Taylor Patterson Research Associate Oak Ridge National Laboratory

More information

Astronomical Instruments Software System Design

Astronomical Instruments Software System Design Astronomical Instruments Software System Design Fabricio Ferrari [email protected] Universidade Federal do Pampa Brasil CEFCA Meeting, Teruel, Feb 2010 Facts Data is beyond astronomers processing

More information

Modeling with Python

Modeling with Python H Modeling with Python In this appendix a brief description of the Python programming language will be given plus a brief introduction to the Antimony reaction network format and libroadrunner. Python

More information

Introduction to GPU hardware and to CUDA

Introduction to GPU hardware and to CUDA Introduction to GPU hardware and to CUDA Philip Blakely Laboratory for Scientific Computing, University of Cambridge Philip Blakely (LSC) GPU introduction 1 / 37 Course outline Introduction to GPU hardware

More information

Integrated Open-Source Geophysical Processing and Visualization

Integrated Open-Source Geophysical Processing and Visualization Integrated Open-Source Geophysical Processing and Visualization Glenn Chubak* University of Saskatchewan, Saskatoon, Saskatchewan, Canada [email protected] and Igor Morozov University of Saskatchewan,

More information

Scientific Programming, Analysis, and Visualization with Python. Mteor 227 Fall 2015

Scientific Programming, Analysis, and Visualization with Python. Mteor 227 Fall 2015 Scientific Programming, Analysis, and Visualization with Python Mteor 227 Fall 2015 Python The Big Picture Interpreted General purpose, high-level Dynamically type Multi-paradigm Object-oriented Functional

More information

MEng, BSc Computer Science with Artificial Intelligence

MEng, BSc Computer Science with Artificial Intelligence School of Computing FACULTY OF ENGINEERING MEng, BSc Computer Science with Artificial Intelligence Year 1 COMP1212 Computer Processor Effective programming depends on understanding not only how to give

More information

Multiprocess System for Virtual Instruments in Python

Multiprocess System for Virtual Instruments in Python Multiprocess System for Virtual Instruments in Python An Introduction to Pythics Brian R. D Urso Assistant Professor of Physics and Astronomy School of Arts and Sciences Oak Ridge National Laboratory Measurement

More information

Computational Mathematics with Python

Computational Mathematics with Python Numerical Analysis, Lund University, 2011 1 Computational Mathematics with Python Chapter 1: Basics Numerical Analysis, Lund University Claus Führer, Jan Erik Solem, Olivier Verdier, Tony Stillfjord Spring

More information

Numerical Analysis. Professor Donna Calhoun. Fall 2013 Math 465/565. Office : MG241A Office Hours : Wednesday 10:00-12:00 and 1:00-3:00

Numerical Analysis. Professor Donna Calhoun. Fall 2013 Math 465/565. Office : MG241A Office Hours : Wednesday 10:00-12:00 and 1:00-3:00 Numerical Analysis Professor Donna Calhoun Office : MG241A Office Hours : Wednesday 10:00-12:00 and 1:00-3:00 Fall 2013 Math 465/565 http://math.boisestate.edu/~calhoun/teaching/math565_fall2013 What is

More information

CRASH COURSE PYTHON. Het begint met een idee

CRASH COURSE PYTHON. Het begint met een idee CRASH COURSE PYTHON nr. Het begint met een idee This talk Not a programming course For data analysts, who want to learn Python For optimizers, who are fed up with Matlab 2 Python Scripting language expensive

More information

Scientific Visualization

Scientific Visualization .PRACE Winter School 2013 Scientific Visualization SOME CONCEPTS, TOOLS & LIBRARIES Nicolas P. Rougier Introduction Audience Yourself Scientific community Students Media Criterion Quality Speed Development

More information

CS 528 Mobile and Ubiquitous Computing Lecture 2: Android Introduction and Setup. Emmanuel Agu

CS 528 Mobile and Ubiquitous Computing Lecture 2: Android Introduction and Setup. Emmanuel Agu CS 528 Mobile and Ubiquitous Computing Lecture 2: Android Introduction and Setup Emmanuel Agu What is Android? Android is world s leading mobile operating system Google: Owns Android, maintains it, extends

More information

MMGD0203 Multimedia Design MMGD0203 MULTIMEDIA DESIGN. Chapter 3 Graphics and Animations

MMGD0203 Multimedia Design MMGD0203 MULTIMEDIA DESIGN. Chapter 3 Graphics and Animations MMGD0203 MULTIMEDIA DESIGN Chapter 3 Graphics and Animations 1 Topics: Definition of Graphics Why use Graphics? Graphics Categories Graphics Qualities File Formats Types of Graphics Graphic File Size Introduction

More information

Visualization with ParaView

Visualization with ParaView Visualization with ParaView Before we begin Make sure you have ParaView 4.1.0 installed so you can follow along in the lab section http://paraview.org/paraview/resources/software.php Background http://www.paraview.org/

More information

Chemical and Biological Engineering Calculations using Python 3. Jeffrey J. Heys

Chemical and Biological Engineering Calculations using Python 3. Jeffrey J. Heys Chemical and Biological Engineering Calculations using Python 3 Jeffrey J. Heys Copyright c 2014 Jeffrey Heys All rights reserved. This version is being made available at no cost. Please acknowledge access

More information

What s New in MATLAB and Simulink

What s New in MATLAB and Simulink What s New in MATLAB and Simulink Kevin Cohan Product Marketing, MATLAB Michael Carone Product Marketing, Simulink 2015 The MathWorks, Inc. 1 What was new for Simulink in R2012b? 2 What Was New for MATLAB

More information

RIA DEVELOPMENT OPTIONS - AIR VS. SILVERLIGHT

RIA DEVELOPMENT OPTIONS - AIR VS. SILVERLIGHT RIA DEVELOPMENT OPTIONS - AIR VS. SILVERLIGHT Oxagile 2010 www.oxagile.com TABLE OF CONTENTS 1 ATTRIBUTION... 3 2 ABOUT OXAGILE... 4 3 QUESTIONNAIRE... 5 3.1 DO YOU THINK AIR AND SILVERLIGHT ARE COMPARABLE

More information

Programming models for heterogeneous computing. Manuel Ujaldón Nvidia CUDA Fellow and A/Prof. Computer Architecture Department University of Malaga

Programming models for heterogeneous computing. Manuel Ujaldón Nvidia CUDA Fellow and A/Prof. Computer Architecture Department University of Malaga Programming models for heterogeneous computing Manuel Ujaldón Nvidia CUDA Fellow and A/Prof. Computer Architecture Department University of Malaga Talk outline [30 slides] 1. Introduction [5 slides] 2.

More information

Some Experiences With Python For Android (Py4A) Nik Klever University of Applied Sciences Augsburg

Some Experiences With Python For Android (Py4A) Nik Klever University of Applied Sciences Augsburg Some Experiences With Python For Android (Py4A) Nik Klever University of Applied Sciences Augsburg Content Introduction and General Aspects SL4A Basics Architecture / Features / API SL4A API Motivation

More information

Computer Vision Technology. Dave Bolme and Steve O Hara

Computer Vision Technology. Dave Bolme and Steve O Hara Computer Vision Technology Dave Bolme and Steve O Hara Today we ll discuss... The OpenCV Computer Vision Library Python scripting for Computer Vision Python OpenCV bindings SciPy / Matlab-like Python capabilities

More information

Технологии Java. Android: Введение. Кузнецов Андрей Николаевич. Санкт-Петербургский Государственный Политехнический Университет

Технологии Java. Android: Введение. Кузнецов Андрей Николаевич. Санкт-Петербургский Государственный Политехнический Университет Технологии Java Android: Введение Санкт-Петербургский Государственный Политехнический Университет Кузнецов Андрей Николаевич 1 2 Архитектура ОС Android See http://www.android-app-market.com/android-architecture.html

More information

Visualization and Post Processing of OpenFOAM results a Brie. a Brief Introduction to VTK

Visualization and Post Processing of OpenFOAM results a Brie. a Brief Introduction to VTK Visualization and Post Processing of OpenFOAM results a Brief Introduction to VTK December 13:th 2007 OpenFOAM Introdutory Course Chalmers University of Technology Post Processing in OF No built in post

More information

ArcGIS Platform. An Integrated System. Portal

ArcGIS Platform. An Integrated System. Portal Platform An Integrated System Portal An Integrated Web GIS Platform Knowledge Workers Executive Access Public Engagement Work Anywhere Enterprise Integration Providing Mapping, Analysis, Data Management,

More information

2: Introducing image synthesis. Some orientation how did we get here? Graphics system architecture Overview of OpenGL / GLU / GLUT

2: Introducing image synthesis. Some orientation how did we get here? Graphics system architecture Overview of OpenGL / GLU / GLUT COMP27112 Computer Graphics and Image Processing 2: Introducing image synthesis [email protected] 1 Introduction In these notes we ll cover: Some orientation how did we get here? Graphics system

More information

FreeFem++-cs, the FreeFem++ Graphical Interface

FreeFem++-cs, the FreeFem++ Graphical Interface FreeFem++-cs, the FreeFem++ Graphical Interface Antoine Le Hyaric Laboratoire Jacques-Louis Lions Université Pierre et Marie Curie Antoine.Le [email protected] December 10, 2014 1 / 54 FreeFem++-cs How to

More information

RIC 2007 SNAP: Symbolic Nuclear Analysis Package. Chester Gingrich USNRC/RES 3/13/07

RIC 2007 SNAP: Symbolic Nuclear Analysis Package. Chester Gingrich USNRC/RES 3/13/07 RIC 2007 SNAP: Symbolic Nuclear Analysis Package Chester Gingrich USNRC/RES 3/13/07 1 SNAP: What is it? Standard Graphical User Interface designed to simplify the use of USNRC analytical codes providing:

More information