Introduction Our choice Example Problem Final slide :-) Python + FEM. Introduction to SFE. Robert Cimrman

Size: px
Start display at page:

Download "Introduction Our choice Example Problem Final slide :-) Python + FEM. Introduction to SFE. Robert Cimrman"

Transcription

1 Python + FEM Introduction to SFE Robert Cimrman Department of Mechanics & New Technologies Research Centre University of West Bohemia Plzeň, Czech Republic April 3, 2007, Plzeň 1/22

2 Outline 1 Introduction Programming Languages Programming Techniques 2 Our choice Mixing Languages Best of Both Worlds Python Software Dependencies 3 Example Problem Continuous Formulation Weak Formulation Problem Description File 4 Final slide :-) 2/22

3 Programming Languages Pros Pros 1 compiled (fortran, C, C++, Java,... ) speed, speed, speed,..., did I say speed? large code base (legacy codes), tradition Cons (often) complicated build process, recompile after any change low-level lots of lines to get basic stuff done code size maintenance problems static! 2 interpreted or scripting (sh, tcl, matlab, perl, ruby, python,... ) no compiling (very) high-level a few of lines to get (complex) stuff done code size easy maintenance dynamic! (often) large code base Cons many are relatively new lack of speed, or even utterly slow! 3/22

4 Programming Languages Pros Pros 1 compiled (fortran, C, C++, Java,... ) speed, speed, speed,..., did I say speed? large code base (legacy codes), tradition Cons (often) complicated build process, recompile after any change low-level lots of lines to get basic stuff done code size maintenance problems static! 2 interpreted or scripting (sh, tcl, matlab, perl, ruby, python,... ) no compiling (very) high-level a few of lines to get (complex) stuff done code size easy maintenance dynamic! (often) large code base Cons many are relatively new lack of speed, or even utterly slow! 3/22

5 Programming Languages Pros Pros 1 compiled (fortran, C, C++, Java,... ) speed, speed, speed,..., did I say speed? large code base (legacy codes), tradition Cons (often) complicated build process, recompile after any change low-level lots of lines to get basic stuff done code size maintenance problems static! 2 interpreted or scripting (sh, tcl, matlab, perl, ruby, python,... ) no compiling (very) high-level a few of lines to get (complex) stuff done code size easy maintenance dynamic! (often) large code base Cons many are relatively new lack of speed, or even utterly slow! 3/22

6 Programming Languages Pros Pros 1 compiled (fortran, C, C++, Java,... ) speed, speed, speed,..., did I say speed? large code base (legacy codes), tradition Cons (often) complicated build process, recompile after any change low-level lots of lines to get basic stuff done code size maintenance problems static! 2 interpreted or scripting (sh, tcl, matlab, perl, ruby, python,... ) no compiling (very) high-level a few of lines to get (complex) stuff done code size easy maintenance dynamic! (often) large code base Cons many are relatively new lack of speed, or even utterly slow! 3/22

7 Programming Languages Pros Pros 1 compiled (fortran, C, C++, Java,... ) speed, speed, speed,..., did I say speed? large code base (legacy codes), tradition Cons (often) complicated build process, recompile after any change low-level lots of lines to get basic stuff done code size maintenance problems static! 2 interpreted or scripting (sh, tcl, matlab, perl, ruby, python,... ) no compiling (very) high-level a few of lines to get (complex) stuff done code size easy maintenance dynamic! (often) large code base Cons many are relatively new lack of speed, or even utterly slow! 3/22

8 Programming Languages Pros Pros 1 compiled (fortran, C, C++, Java,... ) speed, speed, speed,..., did I say speed? large code base (legacy codes), tradition Cons (often) complicated build process, recompile after any change low-level lots of lines to get basic stuff done code size maintenance problems static! 2 interpreted or scripting (sh, tcl, matlab, perl, ruby, python,... ) no compiling (very) high-level a few of lines to get (complex) stuff done code size easy maintenance dynamic! (often) large code base Cons many are relatively new lack of speed, or even utterly slow! 3/22

9 Example Python Code 4/22

10 Example C Code char s [ ] = s e l tudy, mel dudy. a s e l opravdu tudy. ; i n t s t r f i n d ( char s t r, char t g t ) { i n t t l e n = s t r l e n ( t g t ) ; i n t max = s t r l e n ( s t r ) t l e n ; r e g i s t e r i n t i ; f o r ( i = 0 ; i < max ; i ++) { i f ( strncmp (& s t r [ i ], tgt, t l e n ) == 0) r e t u r n i ; r e t u r n 1; i n t i 1 ; i 1 = s t r f i n d ( s, tudy ) ; p r i n t f ( %d\n, i 1 ) ; 5/22

11 Programming Techniques Random remarks: spaghetti code modular programming OOP design patterns (gang-of-four, GO4) post-oop dynamic languages... all used, but I try to move down the list! :-) 6/22

12 Programming Techniques Random remarks: spaghetti code modular programming OOP design patterns (gang-of-four, GO4) post-oop dynamic languages... all used, but I try to move down the list! :-) 6/22

13 Mixing Languages Best of Both Worlds Low level: C FE matrix evaluations costly mesh-related functions (listing faces, edges, surface generation,... )... can use also fortran High level: Python logic of the code configuration files! problem input files! + batteries included 7/22

14 Mixing Languages Best of Both Worlds Low level: C FE matrix evaluations costly mesh-related functions (listing faces, edges, surface generation,... )... can use also fortran High level: Python logic of the code configuration files! problem input files! + batteries included 7/22

15 Python I Python r is a dynamic object-oriented programming language that can be used for many kinds of software development. It offers strong support for integration with other languages and tools, comes with extensive standard libraries, and can be learned in a few days. Many Python programmers report substantial productivity gains and feel the language encourages the development of higher quality, more maintainable code.... batteries included 8/22

16 Python II Why is it called Python? At the same time he began implementing Python, Guido van Rossum was also reading the published scripts from Monty Python s Flying Circus (a BBC comedy series from the seventies, in the unlikely case you didn t know). It occurred to him that he needed a name that was short, unique, and slightly mysterious, so he decided to call the language Python Do I have to like Monty Python s Flying Circus? No, but it helps. :)... General Python FAQ 9/22

17 Python III NASA uses Python so does Rackspace, Industrial Light and Magic, AstraZeneca, Honeywell, and many others. 10/22

18 Python III NASA uses Python so does Rackspace, Industrial Light and Magic, AstraZeneca, Honeywell, and many others. 10/22

19 Software Dependencies 1 libraries & modules SciPy: free (BSD license) collection of numerical computing libraries for Python enables Matlab-like array/matrix manipulations and indexing UMFPACK: very fast direct solver for sparse systems Python wrappers are part of SciPy :-) output files (results) and data files in HDF5: general purpose library and file format for storing scientific data, efficient storage and I/O... via PyTables misc: Pyparsing, Matplotlib 2 tools SWIG: automatic generation of Python-C interface code Medit: simple mesh and data viewer ParaView: VTK-based advanced mesh and data viewer in Tcl/Tk MayaVi/MayaVi2: VTK-based advanced mesh and data viewer in Python 11/22

20 Software Dependencies 1 libraries & modules SciPy: free (BSD license) collection of numerical computing libraries for Python enables Matlab-like array/matrix manipulations and indexing UMFPACK: very fast direct solver for sparse systems Python wrappers are part of SciPy :-) output files (results) and data files in HDF5: general purpose library and file format for storing scientific data, efficient storage and I/O... via PyTables misc: Pyparsing, Matplotlib 2 tools SWIG: automatic generation of Python-C interface code Medit: simple mesh and data viewer ParaView: VTK-based advanced mesh and data viewer in Tcl/Tk MayaVi/MayaVi2: VTK-based advanced mesh and data viewer in Python 11/22

21 Software Dependencies 1 libraries & modules SciPy: free (BSD license) collection of numerical computing libraries for Python enables Matlab-like array/matrix manipulations and indexing UMFPACK: very fast direct solver for sparse systems Python wrappers are part of SciPy :-) output files (results) and data files in HDF5: general purpose library and file format for storing scientific data, efficient storage and I/O... via PyTables misc: Pyparsing, Matplotlib 2 tools SWIG: automatic generation of Python-C interface code Medit: simple mesh and data viewer ParaView: VTK-based advanced mesh and data viewer in Tcl/Tk MayaVi/MayaVi2: VTK-based advanced mesh and data viewer in Python 11/22

22 Software Dependencies 1 libraries & modules SciPy: free (BSD license) collection of numerical computing libraries for Python enables Matlab-like array/matrix manipulations and indexing UMFPACK: very fast direct solver for sparse systems Python wrappers are part of SciPy :-) output files (results) and data files in HDF5: general purpose library and file format for storing scientific data, efficient storage and I/O... via PyTables misc: Pyparsing, Matplotlib 2 tools SWIG: automatic generation of Python-C interface code Medit: simple mesh and data viewer ParaView: VTK-based advanced mesh and data viewer in Tcl/Tk MayaVi/MayaVi2: VTK-based advanced mesh and data viewer in Python 11/22

23 Software Dependencies 1 libraries & modules SciPy: free (BSD license) collection of numerical computing libraries for Python enables Matlab-like array/matrix manipulations and indexing UMFPACK: very fast direct solver for sparse systems Python wrappers are part of SciPy :-) output files (results) and data files in HDF5: general purpose library and file format for storing scientific data, efficient storage and I/O... via PyTables misc: Pyparsing, Matplotlib 2 tools SWIG: automatic generation of Python-C interface code Medit: simple mesh and data viewer ParaView: VTK-based advanced mesh and data viewer in Tcl/Tk MayaVi/MayaVi2: VTK-based advanced mesh and data viewer in Python 11/22

24 Software Dependencies 1 libraries & modules SciPy: free (BSD license) collection of numerical computing libraries for Python enables Matlab-like array/matrix manipulations and indexing UMFPACK: very fast direct solver for sparse systems Python wrappers are part of SciPy :-) output files (results) and data files in HDF5: general purpose library and file format for storing scientific data, efficient storage and I/O... via PyTables misc: Pyparsing, Matplotlib 2 tools SWIG: automatic generation of Python-C interface code Medit: simple mesh and data viewer ParaView: VTK-based advanced mesh and data viewer in Tcl/Tk MayaVi/MayaVi2: VTK-based advanced mesh and data viewer in Python 11/22

25 Software Dependencies 1 libraries & modules SciPy: free (BSD license) collection of numerical computing libraries for Python enables Matlab-like array/matrix manipulations and indexing UMFPACK: very fast direct solver for sparse systems Python wrappers are part of SciPy :-) output files (results) and data files in HDF5: general purpose library and file format for storing scientific data, efficient storage and I/O... via PyTables misc: Pyparsing, Matplotlib 2 tools SWIG: automatic generation of Python-C interface code Medit: simple mesh and data viewer ParaView: VTK-based advanced mesh and data viewer in Tcl/Tk MayaVi/MayaVi2: VTK-based advanced mesh and data viewer in Python 11/22

26 Shape Optimization in Incompressible Flow Problems Objective Function Ψ Γ (u) ν u 2 min (1) 2 c minimize gradients of solution (e.g. losses) in c by moving design boundary Γ perturbation of Γ by vector field V (t) = + {tv(x) x where V = 0 in c \ Γ (2) Γ D Γ in Γ D D Γ C C Γout 12/22

27 Shape Optimization in Incompressible Flow Problems Objective Function Ψ Γ (u) ν u 2 min (1) 2 c minimize gradients of solution (e.g. losses) in c by moving design boundary Γ perturbation of Γ by vector field V (t) = + {tv(x) x where V = 0 in c \ Γ (2) Γ D Γ in Γ D D Γ C C Γout 12/22

28 Shape Optimization in Incompressible Flow Problems Objective Function Ψ Γ (u) ν u 2 min (1) 2 c minimize gradients of solution (e.g. losses) in c by moving design boundary Γ perturbation of Γ by vector field V (t) = + {tv(x) x where V = 0 in c \ Γ (2) Γ D Γ in Γ D D Γ C C Γout 12/22

29 Appetizer flow and spline boxes, left: initial, right: final connectivity of spline boxes (6 boxes in different colours) 13/22

30 Continuous Formulation laminar steady state incompressible Navier-Stokes equations ν 2 u + u u + p = 0 in (3) u = 0 in (4) boundary conditions u = u 0 on Γ in pn + ν u n = pn on Γ out u = 0 on Γ walls (5) adjoint equations for computing the adjoint solution w: ν 2 w + u w u w r = χ c ν 2 u in w = 0 in (6) w = 0 on Γ in Γ walls and χ c is the characteristic function of c 14/22

31 Continuous Formulation laminar steady state incompressible Navier-Stokes equations ν 2 u + u u + p = 0 in (3) u = 0 in (4) boundary conditions u = u 0 on Γ in pn + ν u n = pn on Γ out u = 0 on Γ walls (5) adjoint equations for computing the adjoint solution w: ν 2 w + u w u w r = χ c ν 2 u in w = 0 in (6) w = 0 on Γ in Γ walls and χ c is the characteristic function of c 14/22

32 Weak Formulation state problem: find u, p (from suitable function spaces) such that ν v : u + (u u) v p v = pv n v V 0, Γ out q u = 0 q Q adjoint equations: find w, r (from suitable function spaces) such that ν v : w + (v u) w + (u v) w + r v = ν v : u v V 0, (8) c q w = 0 q Q + proper BC... 15/22 (7)

33 Weak Formulation state problem: find u, p (from suitable function spaces) such that ν v : u + (u u) v p v = pv n v V 0, Γ out q u = 0 q Q adjoint equations: find w, r (from suitable function spaces) such that ν v : w + (v u) w + (u v) w + r v = ν v : u v V 0, (8) c q w = 0 q Q + proper BC... 15/22 (7)

34 Weak Formulation state problem: find u, p (from suitable function spaces) such that ν v : u + (u u) v p v = pv n v V 0, Γ out q u = 0 q Q adjoint equations: find w, r (from suitable function spaces) such that ν v : w + (v u) w + (u v) w + r v = ν v : u v V 0, (8) c q w = 0 q Q + proper BC... 15/22 (7)

35 Problem Description File I a regular python file all python machinery is accessible! requires/recognizes several keywords to define mesh regions subdomains, boundaries, characteristic functions,... boundary conditions Dirichlet fields field approximation per subdomain variables unknown fields, test fields, parameters equations materials constitutive relations, e.g. newton fluid, elastic solid,... solver parameters nonlinear solver, flow solver, optimization solver, /22

36 Problem Description File I a regular python file all python machinery is accessible! requires/recognizes several keywords to define mesh regions subdomains, boundaries, characteristic functions,... boundary conditions Dirichlet fields field approximation per subdomain variables unknown fields, test fields, parameters equations materials constitutive relations, e.g. newton fluid, elastic solid,... solver parameters nonlinear solver, flow solver, optimization solver, /22

37 Problem Description File II mesh f i lename m e s h = s i m p l e. mesh regions r e g i o n = { name : Omega, s e l e c t : e l e m e n t s o f group 6, r e g i o n 0 = { name : Walls, s e l e c t : nodes o f s u r f a c e n r. Outlet, r e g i o n 1 = { name : I n l e t, s e l e c t : nodes by c i n c ( x, y, z, 0 ), r e g i o n 2 = { name : Outlet, s e l e c t : nodes by c i n c ( x, y, z, 1 ), r e g i o n = { name : Omega C, # C o n t r o l domain. s e l e c t : nodes i n ( x > e 3) & ( x < e 3), r e g i o n = { name : Omega D, # Design domain. s e l e c t : a l l e r. Omega C, 17/22

38 Problem Description File III fields f i e l d 1 = { name : 3 v e l o c i t y, dim : ( 3, 1 ), f l a g s : ( BQP, ), bases : ( ( Omega, 3 4 P1B ), ) f i e l d 2 = { name : p r e s s u r e, dim : ( 1, 1 ), f l a g s : ( ), bases : ( ( Omega, 3 4 P1 ), ) variables v a r i a b l e s = { u : ( f i e l d, parameter, 3 v e l o c i t y, ( 3, 4, 5 ) ), w 0 : ( f i e l d, parameter, 3 v e l o c i t y, ( 3, 4, 5 ) ), w : ( f i e l d, unknown, 3 v e l o c i t y, ( 3, 4, 5 ), 0 ), v : ( f i e l d, t e s t, 3 v e l o c i t y, ( 3, 4, 5 ), w ), p : ( f i e l d, parameter, p r e s s u r e, ( 9, ) ), r : ( f i e l d, unknown, p r e s s u r e, ( 9, ), 1 ), q : ( f i e l d, t e s t, p r e s s u r e, ( 9, ), r ), Nu : ( f i e l d, m e s h V e l o c i t y, p r e s s u r e, ( 9, ) ), 18/22

39 Problem Description File III fields f i e l d 1 = { name : 3 v e l o c i t y, dim : ( 3, 1 ), f l a g s : ( BQP, ), bases : ( ( Omega, 3 4 P1B ), ) f i e l d 2 = { name : p r e s s u r e, dim : ( 1, 1 ), f l a g s : ( ), bases : ( ( Omega, 3 4 P1 ), ) variables v a r i a b l e s = { u : ( f i e l d, parameter, 3 v e l o c i t y, ( 3, 4, 5 ) ), w 0 : ( f i e l d, parameter, 3 v e l o c i t y, ( 3, 4, 5 ) ), w : ( f i e l d, unknown, 3 v e l o c i t y, ( 3, 4, 5 ), 0 ), v : ( f i e l d, t e s t, 3 v e l o c i t y, ( 3, 4, 5 ), w ), p : ( f i e l d, parameter, p r e s s u r e, ( 9, ) ), r : ( f i e l d, unknown, p r e s s u r e, ( 9, ), 1 ), q : ( f i e l d, t e s t, p r e s s u r e, ( 9, ), r ), Nu : ( f i e l d, m e s h V e l o c i t y, p r e s s u r e, ( 9, ) ), 18/22

40 Problem Description File IV Dirichlet BC ebc = { Walls : ( ( Walls, ( 3, 4, 5 ), 0. 0 ), ), I n l e t : ( ( V e l o c i t y I n l e t x, ( 4, ), 1. 0 ), ( V e l o c i t y I n l e t y z, ( 3, 5 ), 0. 0 ) ), state equations (compare with (7)) e q u a t i o n s = { b a l a n c e : + d w d i v g r a d. Omega ( f l u i d, v, w ) + dw convect. Omega ( v, w ) dw grad. Omega ( v, r ) = d w s u r f a c e l t r. O u t l e t ( b p r e s s, v ), i n c o m p r e s s i b i l i t y : d w d i v. Omega ( q, w ) = 0, 19/22

41 Problem Description File IV Dirichlet BC ebc = { Walls : ( ( Walls, ( 3, 4, 5 ), 0. 0 ), ), I n l e t : ( ( V e l o c i t y I n l e t x, ( 4, ), 1. 0 ), ( V e l o c i t y I n l e t y z, ( 3, 5 ), 0. 0 ) ), state equations (compare with (7)) e q u a t i o n s = { b a l a n c e : + d w d i v g r a d. Omega ( f l u i d, v, w ) + dw convect. Omega ( v, w ) dw grad. Omega ( v, r ) = d w s u r f a c e l t r. O u t l e t ( b p r e s s, v ), i n c o m p r e s s i b i l i t y : d w d i v. Omega ( q, w ) = 0, 19/22

42 Problem Description File V adjoint equations (compare with (8)) e q u a t i o n s a d j o i n t = { b a l a n c e : + d w d i v g r a d. Omega ( f l u i d, v, w ) + dw adj convect1. Omega ( v, w, u ) + dw adj convect2. Omega ( v, w, u ) + dw grad. Omega ( v, r ) = d w a d j d i v g r a d 2. Omega C ( one, f l u i d, v, u ), i n c o m p r e s s i b i l i t y : d w d i v. Omega ( q, w ) = 0, materials m a t e r i a l 2 = { name : f l u i d, mode : here, r e g i o n : Omega, v i s c o s i t y : e 1, m a t e r i a l = { name : b p r e s s, mode : here, r e g i o n : Omega, v a l : 0. 0, 20/22

43 Problem Description File V adjoint equations (compare with (8)) e q u a t i o n s a d j o i n t = { b a l a n c e : + d w d i v g r a d. Omega ( f l u i d, v, w ) + dw adj convect1. Omega ( v, w, u ) + dw adj convect2. Omega ( v, w, u ) + dw grad. Omega ( v, r ) = d w a d j d i v g r a d 2. Omega C ( one, f l u i d, v, u ), i n c o m p r e s s i b i l i t y : d w d i v. Omega ( q, w ) = 0, materials m a t e r i a l 2 = { name : f l u i d, mode : here, r e g i o n : Omega, v i s c o s i t y : e 1, m a t e r i a l = { name : b p r e s s, mode : here, r e g i o n : Omega, v a l : 0. 0, 20/22

44 Yes, the final slide! What is done basic FE element engine approximations up to P2 on simplexes (possibly with bubble) Q1 tensor-product approximation on rectangles handling of fields and variables boundary conditions, DOF handling FE assembling equations, terms, regions materials, material caches generic solvers (Newton iteration, direct linear system solution) What is not done general FE engine, with symbolic evaluation (à la SyFi - merge it?) documentation, unit tests organization of solvers fast problem-specific solvers parallelization of both assembling and solving use PETSC? What will not be done (?) GUI real symbolic parsing/evaluation of equations 21/22

45 Yes, the final slide! What is done basic FE element engine approximations up to P2 on simplexes (possibly with bubble) Q1 tensor-product approximation on rectangles handling of fields and variables boundary conditions, DOF handling FE assembling equations, terms, regions materials, material caches generic solvers (Newton iteration, direct linear system solution) What is not done general FE engine, with symbolic evaluation (à la SyFi - merge it?) documentation, unit tests organization of solvers fast problem-specific solvers parallelization of both assembling and solving use PETSC? What will not be done (?) GUI real symbolic parsing/evaluation of equations 21/22

46 Yes, the final slide! What is done basic FE element engine approximations up to P2 on simplexes (possibly with bubble) Q1 tensor-product approximation on rectangles handling of fields and variables boundary conditions, DOF handling FE assembling equations, terms, regions materials, material caches generic solvers (Newton iteration, direct linear system solution) What is not done general FE engine, with symbolic evaluation (à la SyFi - merge it?) documentation, unit tests organization of solvers fast problem-specific solvers parallelization of both assembling and solving use PETSC? What will not be done (?) GUI real symbolic parsing/evaluation of equations 21/22

47 This is not a slide! 22/22

FEM Software Automation, with a case study on the Stokes Equations

FEM Software Automation, with a case study on the Stokes Equations FEM Automation, with a case study on the Stokes Equations FEM Andy R Terrel Advisors: L R Scott and R C Kirby Numerical from Department of Computer Science University of Chicago March 1, 2006 Masters Presentation

More information

Using EDA Databases: Milkyway & OpenAccess

Using EDA Databases: Milkyway & OpenAccess Using EDA Databases: Milkyway & OpenAccess Enabling and Using Scripting Languages with Milkyway and OpenAccess Don Amundson Khosro Khakzadi 2006 LSI Logic Corporation 1 Outline History Choice Of Scripting

More information

OpenFOAM Optimization Tools

OpenFOAM Optimization Tools OpenFOAM Optimization Tools Henrik Rusche and Aleks Jemcov h.rusche@wikki-gmbh.de and a.jemcov@wikki.co.uk Wikki, Germany and United Kingdom OpenFOAM Optimization Tools p. 1 Agenda Objective Review optimisation

More information

TWO-DIMENSIONAL FINITE ELEMENT ANALYSIS OF FORCED CONVECTION FLOW AND HEAT TRANSFER IN A LAMINAR CHANNEL FLOW

TWO-DIMENSIONAL FINITE ELEMENT ANALYSIS OF FORCED CONVECTION FLOW AND HEAT TRANSFER IN A LAMINAR CHANNEL FLOW TWO-DIMENSIONAL FINITE ELEMENT ANALYSIS OF FORCED CONVECTION FLOW AND HEAT TRANSFER IN A LAMINAR CHANNEL FLOW Rajesh Khatri 1, 1 M.Tech Scholar, Department of Mechanical Engineering, S.A.T.I., vidisha

More information

Introduction to COMSOL. The Navier-Stokes Equations

Introduction to COMSOL. The Navier-Stokes Equations Flow Between Parallel Plates Modified from the COMSOL ChE Library module rev 10/13/08 Modified by Robert P. Hesketh, Chemical Engineering, Rowan University Fall 2008 Introduction to COMSOL The following

More information

Code Generation Tools for PDEs. Matthew Knepley PETSc Developer Mathematics and Computer Science Division Argonne National Laboratory

Code Generation Tools for PDEs. Matthew Knepley PETSc Developer Mathematics and Computer Science Division Argonne National Laboratory Code Generation Tools for PDEs Matthew Knepley PETSc Developer Mathematics and Computer Science Division Argonne National Laboratory Talk Objectives Introduce Code Generation Tools - Installation - Use

More information

STCE. Outline. Introduction. Applications. Ongoing work. Summary. STCE RWTH-Aachen, Industrial Applications of discrete adjoint OpenFOAM, EuroAD 2014

STCE. Outline. Introduction. Applications. Ongoing work. Summary. STCE RWTH-Aachen, Industrial Applications of discrete adjoint OpenFOAM, EuroAD 2014 Industrial Applications of discrete adjoint OpenFOAM Arindam Sen Software and Tools for Computational Engineering Science RWTH Aachen University EuroAD 2014, Nice, 16-17. June 2014 Outline Introduction

More information

Postprocessing with Python

Postprocessing with Python Postprocessing with Python Boris Dintrans (CNRS & University of Toulouse) dintrans@ast.obs-mip.fr Collaborator: Thomas Gastine (PhD) Outline Outline Introduction - what s Python and why using it? - Installation

More information

Object-oriented scientific computing

Object-oriented scientific computing Object-oriented scientific computing Pras Pathmanathan Summer 2012 The finite element method Advantages of the FE method over the FD method Main advantages of FE over FD 1 Deal with Neumann boundary conditions

More information

1 Finite difference example: 1D implicit heat equation

1 Finite difference example: 1D implicit heat equation 1 Finite difference example: 1D implicit heat equation 1.1 Boundary conditions Neumann and Dirichlet We solve the transient heat equation ρc p t = ( k ) (1) on the domain L/2 x L/2 subject to the following

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

Python for Chemistry in 21 days

Python for Chemistry in 21 days minutes Python for Chemistry in 21 days Dr. Noel O'Boyle Dr. John Mitchell and Prof. Peter Murray-Rust UCC Talk, Sept 2005 Available at http://www-mitchell.ch.cam.ac.uk/noel/ Introduction This talk will

More information

Laminar Flow in a Baffled Stirred Mixer

Laminar Flow in a Baffled Stirred Mixer Laminar Flow in a Baffled Stirred Mixer Introduction This exercise exemplifies the use of the rotating machinery feature in the CFD Module. The Rotating Machinery interface allows you to model moving rotating

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

How High a Degree is High Enough for High Order Finite Elements?

How High a Degree is High Enough for High Order Finite Elements? This space is reserved for the Procedia header, do not use it How High a Degree is High Enough for High Order Finite Elements? William F. National Institute of Standards and Technology, Gaithersburg, Maryland,

More information

NUMERICAL ANALYSIS OF THE EFFECTS OF WIND ON BUILDING STRUCTURES

NUMERICAL ANALYSIS OF THE EFFECTS OF WIND ON BUILDING STRUCTURES Vol. XX 2012 No. 4 28 34 J. ŠIMIČEK O. HUBOVÁ NUMERICAL ANALYSIS OF THE EFFECTS OF WIND ON BUILDING STRUCTURES Jozef ŠIMIČEK email: jozef.simicek@stuba.sk Research field: Statics and Dynamics Fluids mechanics

More information

Plates and Shells: Theory and Computation - 4D9 - Dr Fehmi Cirak (fc286@) Office: Inglis building mezzanine level (INO 31)

Plates and Shells: Theory and Computation - 4D9 - Dr Fehmi Cirak (fc286@) Office: Inglis building mezzanine level (INO 31) Plates and Shells: Theory and Computation - 4D9 - Dr Fehmi Cirak (fc286@) Office: Inglis building mezzanine level (INO 31) Outline -1-! This part of the module consists of seven lectures and will focus

More information

Finite Element Method (ENGC 6321) Syllabus. Second Semester 2013-2014

Finite Element Method (ENGC 6321) Syllabus. Second Semester 2013-2014 Finite Element Method Finite Element Method (ENGC 6321) Syllabus Second Semester 2013-2014 Objectives Understand the basic theory of the FEM Know the behaviour and usage of each type of elements covered

More information

OpenFOAM Opensource and CFD

OpenFOAM Opensource and CFD OpenFOAM Opensource and CFD Andrew King Department of Mechanical Engineering Curtin University Outline What is Opensource Software OpenFOAM Overview Utilities, Libraries and Solvers Data Formats The CFD

More information

Learning Module 4 - Thermal Fluid Analysis Note: LM4 is still in progress. This version contains only 3 tutorials.

Learning Module 4 - Thermal Fluid Analysis Note: LM4 is still in progress. This version contains only 3 tutorials. Learning Module 4 - Thermal Fluid Analysis Note: LM4 is still in progress. This version contains only 3 tutorials. Attachment C1. SolidWorks-Specific FEM Tutorial 1... 2 Attachment C2. SolidWorks-Specific

More information

Mesh Moving Techniques for Fluid-Structure Interactions With Large Displacements

Mesh Moving Techniques for Fluid-Structure Interactions With Large Displacements K. Stein Department of Physics, Bethel College, St. Paul, MN 55112 T. Tezduyar Mechanical Engineering, Rice University, MS 321, Houston, TX 77005 R. Benney Natick Soldier Center, Natick, MA 01760 Mesh

More information

Abaqus/CFD Sample Problems. Abaqus 6.10

Abaqus/CFD Sample Problems. Abaqus 6.10 Abaqus/CFD Sample Problems Abaqus 6.10 Contents 1. Oscillatory Laminar Plane Poiseuille Flow 2. Flow in Shear Driven Cavities 3. Buoyancy Driven Flow in Cavities 4. Turbulent Flow in a Rectangular Channel

More information

Eu-NORSEWInD - Assessment of Viability of Open Source CFD Code for the Wind Industry

Eu-NORSEWInD - Assessment of Viability of Open Source CFD Code for the Wind Industry Downloaded from orbit.dtu.dk on: Jun 28, 2016 Eu-NORSEWInD - Assessment of Viability of Open Source CFD Code for the Wind Industry Stickland, Matt; Scanlon, Tom; Fabre, Sylvie; Ahmad, Abdul; Oldroyd, Andrew;

More information

Chapter 14. Programming and Languages. McGraw-Hill/Irwin. Copyright 2008 by The McGraw-Hill Companies, Inc. All rights reserved.

Chapter 14. Programming and Languages. McGraw-Hill/Irwin. Copyright 2008 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 14 Programming and Languages McGraw-Hill/Irwin Copyright 2008 by The McGraw-Hill Companies, Inc. All rights reserved. Competencies (Page 1 of 2) Describe the six steps of programming Discuss design

More information

McGraw-Hill The McGraw-Hill Companies, Inc., 20 1. 01 0

McGraw-Hill The McGraw-Hill Companies, Inc., 20 1. 01 0 1.1 McGraw-Hill The McGraw-Hill Companies, Inc., 2000 Objectives: To describe the evolution of programming languages from machine language to high-level languages. To understand how a program in a high-level

More information

Best practices for efficient HPC performance with large models

Best practices for efficient HPC performance with large models Best practices for efficient HPC performance with large models Dr. Hößl Bernhard, CADFEM (Austria) GmbH PRACE Autumn School 2013 - Industry Oriented HPC Simulations, September 21-27, University of Ljubljana,

More information

Modelling cellular processes with Python and Scipy

Modelling cellular processes with Python and Scipy Modelling cellular processes with Python and Scipy B.G. Olivier (bgoli@sun.ac.za), J.M. Rohwer (jr@sun.ac.za) and J.-H.S. Hofmeyr (jhsh@sun.ac.za) Dept. of Biochemistry, University of Stellenbosch, Private

More information

EXAMPLE: Water Flow in a Pipe

EXAMPLE: Water Flow in a Pipe EXAMPLE: Water Flow in a Pipe P 1 > P 2 Velocity profile is parabolic (we will learn why it is parabolic later, but since friction comes from walls the shape is intuitive) The pressure drops linearly along

More information

Introduction to the Finite Element Method

Introduction to the Finite Element Method Introduction to the Finite Element Method 09.06.2009 Outline Motivation Partial Differential Equations (PDEs) Finite Difference Method (FDM) Finite Element Method (FEM) References Motivation Figure: cross

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

Mathematical Model of Blood Flow in Carotid Bifurcation. Phd student: Eng. Emanuel Muraca. 16/10/09 Milan

Mathematical Model of Blood Flow in Carotid Bifurcation. Phd student: Eng. Emanuel Muraca. 16/10/09 Milan Presented at the COMSOL Conference 2009 Milan Mathematical Model of Blood Flow in Carotid Bifurcation Phd student: Eng. Emanuel Muraca 16/10/09 Milan 1 Research s s goal The goal of this research is to

More information

Introduction to Solid Modeling Using SolidWorks 2012 SolidWorks Simulation Tutorial Page 1

Introduction to Solid Modeling Using SolidWorks 2012 SolidWorks Simulation Tutorial Page 1 Introduction to Solid Modeling Using SolidWorks 2012 SolidWorks Simulation Tutorial Page 1 In this tutorial, we will use the SolidWorks Simulation finite element analysis (FEA) program to analyze the response

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

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

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

Chapter 13: Program Development and Programming Languages

Chapter 13: Program Development and Programming Languages Understanding Computers Today and Tomorrow 12 th Edition Chapter 13: Program Development and Programming Languages Learning Objectives Understand the differences between structured programming, object-oriented

More information

Chapter 3.2 C++, Java, and Scripting Languages. The major programming languages used in game development.

Chapter 3.2 C++, Java, and Scripting Languages. The major programming languages used in game development. Chapter 3.2 C++, Java, and Scripting Languages The major programming languages used in game development. C++ C used to be the most popular language for games Today, C++ is the language of choice for game

More information

Heat Transfer by Free Convection

Heat Transfer by Free Convection Heat Transfer by Free Convection Introduction This example describes a fluid flow problem with heat transfer in the fluid. An array of heating tubes is submerged in a vessel with fluid flow entering at

More information

COMPUTATIONAL ENGINEERING OF FINITE ELEMENT MODELLING FOR AUTOMOTIVE APPLICATION USING ABAQUS

COMPUTATIONAL ENGINEERING OF FINITE ELEMENT MODELLING FOR AUTOMOTIVE APPLICATION USING ABAQUS International Journal of Advanced Research in Engineering and Technology (IJARET) Volume 7, Issue 2, March-April 2016, pp. 30 52, Article ID: IJARET_07_02_004 Available online at http://www.iaeme.com/ijaret/issues.asp?jtype=ijaret&vtype=7&itype=2

More information

Programming in Python. Basic information. Teaching. Administration Organisation Contents of the Course. Jarkko Toivonen. Overview of Python

Programming in Python. Basic information. Teaching. Administration Organisation Contents of the Course. Jarkko Toivonen. Overview of Python Programming in Python Jarkko Toivonen Department of Computer Science University of Helsinki September 18, 2009 Administration Organisation Contents of the Course Overview of Python Jarkko Toivonen (CS

More information

HPC Deployment of OpenFOAM in an Industrial Setting

HPC Deployment of OpenFOAM in an Industrial Setting HPC Deployment of OpenFOAM in an Industrial Setting Hrvoje Jasak h.jasak@wikki.co.uk Wikki Ltd, United Kingdom PRACE Seminar: Industrial Usage of HPC Stockholm, Sweden, 28-29 March 2011 HPC Deployment

More information

Dynamic Process Modeling. Process Dynamics and Control

Dynamic Process Modeling. Process Dynamics and Control Dynamic Process Modeling Process Dynamics and Control 1 Description of process dynamics Classes of models What do we need for control? Modeling for control Mechanical Systems Modeling Electrical circuits

More information

Steady Flow: Laminar and Turbulent in an S-Bend

Steady Flow: Laminar and Turbulent in an S-Bend STAR-CCM+ User Guide 6663 Steady Flow: Laminar and Turbulent in an S-Bend This tutorial demonstrates the flow of an incompressible gas through an s-bend of constant diameter (2 cm), for both laminar and

More information

Why (and Why Not) to Use Fortran

Why (and Why Not) to Use Fortran Why (and Why Not) to Use Fortran p. 1/?? Why (and Why Not) to Use Fortran Instead of C++, Matlab, Python etc. Nick Maclaren University of Cambridge Computing Service nmm1@cam.ac.uk, 01223 334761 June 2012

More information

Introduction to ANSYS

Introduction to ANSYS Lecture 3 Introduction to ANSYS Meshing 14. 5 Release Introduction to ANSYS Meshing 2012 ANSYS, Inc. March 27, 2014 1 Release 14.5 Introduction to ANSYS Meshing What you will learn from this presentation

More information

Boundary Conditions in lattice Boltzmann method

Boundary Conditions in lattice Boltzmann method Boundar Conditions in lattice Boltzmann method Goncalo Silva Department of Mechanical Engineering Instituto Superior Técnico (IST) Lisbon, Portugal Outline Introduction 1 Introduction Boundar Value Problems

More information

Computational fluid dynamics (CFD) 9 th SIMLAB Course

Computational fluid dynamics (CFD) 9 th SIMLAB Course Computational fluid dnamics (CFD) 9 th SIMLAB Course Janos Benk October 3-9, Janos Benk: Computational fluid dnamics (CFD) www5.in.tum.de/wiki/inde.php/lab_course_computational_fluid_dnamics_-_summer_

More information

Introduction to Python

Introduction to Python Introduction to Python Girls Programming Network School of Information Technologies University of Sydney Mini-Lecture 1 Python Install Running Summary 2 Outline 1 What is Python? 2 Installing Python 3

More information

Scientific Programming in Python

Scientific Programming in Python UCSD March 9, 2009 What is Python? Python in a very high level (scripting) language which has gained widespread popularity in recent years. It is: What is Python? Python in a very high level (scripting)

More information

Scientic Computing 2013 Computer Classes: Worksheet 11: 1D FEM and boundary conditions

Scientic Computing 2013 Computer Classes: Worksheet 11: 1D FEM and boundary conditions Scientic Computing 213 Computer Classes: Worksheet 11: 1D FEM and boundary conditions Oleg Batrashev November 14, 213 This material partially reiterates the material given on the lecture (see the slides)

More information

Giorgio Bornia. Research statement. Primary interests

Giorgio Bornia. Research statement. Primary interests Giorgio Bornia Research statement 2500 Broadway and Boston 79409-1042 Lubbock, TX +1 806 834 8754 +1 806 742 1112 giorgio.bornia@ttu.edu http://www.math.ttu.edu/~gbornia Primary interests My main research

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

Finite Element Formulation for Plates - Handout 3 -

Finite Element Formulation for Plates - Handout 3 - Finite Element Formulation for Plates - Handout 3 - Dr Fehmi Cirak (fc286@) Completed Version Definitions A plate is a three dimensional solid body with one of the plate dimensions much smaller than the

More information

Sound propagation in a lined duct with flow

Sound propagation in a lined duct with flow Sound propagation in a lined duct with flow Martien Oppeneer supervisors: Sjoerd Rienstra and Bob Mattheij CASA day Eindhoven, April 7, 2010 1 / 47 Outline 1 Introduction & Background 2 Modeling the problem

More information

Back to Elements - Tetrahedra vs. Hexahedra

Back to Elements - Tetrahedra vs. Hexahedra Back to Elements - Tetrahedra vs. Hexahedra Erke Wang, Thomas Nelson, Rainer Rauch CAD-FEM GmbH, Munich, Germany Abstract This paper presents some analytical results and some test results for different

More information

Experiences of numerical simulations on a PC cluster Antti Vanne December 11, 2002

Experiences of numerical simulations on a PC cluster Antti Vanne December 11, 2002 xperiences of numerical simulations on a P cluster xperiences of numerical simulations on a P cluster ecember xperiences of numerical simulations on a P cluster Introduction eowulf concept Using commodity

More information

Your FEMLAB Trial: An Introduction to FEMLAB s Multiphysics Modeling Capabilities

Your FEMLAB Trial: An Introduction to FEMLAB s Multiphysics Modeling Capabilities Your FEMLAB Trial: An Introduction to FEMLAB s Multiphysics Modeling Capabilities 1 Preface. This manual gives you an introduction to modeling in FEMLAB by taking you through the basic steps of the modeling

More information

Design and Optimization of OpenFOAM-based CFD Applications for Hybrid and Heterogeneous HPC Platforms

Design and Optimization of OpenFOAM-based CFD Applications for Hybrid and Heterogeneous HPC Platforms Design and Optimization of OpenFOAM-based CFD Applications for Hybrid and Heterogeneous HPC Platforms Amani AlOnazi, David E. Keyes, Alexey Lastovetsky, Vladimir Rychkov Extreme Computing Research Center,

More information

Vista: A Multi-field Object Oriented CFD-package

Vista: A Multi-field Object Oriented CFD-package Vista: A Multi-field Object Oriented CFD-package T. Kvamsdal 1, R. Holdahl 1 and P. Böhm 2 1 SINTEF ICT, Applied Mathematics, Norway 2 inutech GmbH, Germany Outline inutech & SINTEF VISTA a CFD Solver

More information

THE ROAD TO CODE. ANDROID DEVELOPMENT IMMERSIVE May 31. WEB DEVELOPMENT IMMERSIVE May 31 GENERAL ASSEMBLY

THE ROAD TO CODE. ANDROID DEVELOPMENT IMMERSIVE May 31. WEB DEVELOPMENT IMMERSIVE May 31 GENERAL ASSEMBLY THE ROAD TO CODE WEB DEVELOPMENT IMMERSIVE May 31 ANDROID DEVELOPMENT IMMERSIVE May 31 GENERAL ASSEMBLY GENERAL ASSEMBLY @GA_CHICAGO WWW.FACEBOOK.COM/GENERALASSEMBLYCHI @GA_CHICAGO GENERAL ASSEMBLY GENERAL

More information

GAMBIT Demo Tutorial

GAMBIT Demo Tutorial GAMBIT Demo Tutorial Wake of a Cylinder. 1.1 Problem Description The problem to be considered is schematically in fig. 1. We consider flow across a cylinder and look at the wake behind the cylinder. Air

More information

Feature Commercial codes In-house codes

Feature Commercial codes In-house codes A simple finite element solver for thermo-mechanical problems Keywords: Scilab, Open source software, thermo-elasticity Introduction In this paper we would like to show how it is possible to develop a

More information

Model of a flow in intersecting microchannels. Denis Semyonov

Model of a flow in intersecting microchannels. Denis Semyonov Model of a flow in intersecting microchannels Denis Semyonov LUT 2012 Content Objectives Motivation Model implementation Simulation Results Conclusion Objectives A flow and a reaction model is required

More information

CE 504 Computational Hydrology Computational Environments and Tools Fritz R. Fiedler

CE 504 Computational Hydrology Computational Environments and Tools Fritz R. Fiedler CE 504 Computational Hydrology Computational Environments and Tools Fritz R. Fiedler 1) Operating systems a) Windows b) Unix and Linux c) Macintosh 2) Data manipulation tools a) Text Editors b) Spreadsheets

More information

Differential Relations for Fluid Flow. Acceleration field of a fluid. The differential equation of mass conservation

Differential Relations for Fluid Flow. Acceleration field of a fluid. The differential equation of mass conservation Differential Relations for Fluid Flow In this approach, we apply our four basic conservation laws to an infinitesimally small control volume. The differential approach provides point by point details of

More information

FINITE ELEMENT : MATRIX FORMULATION. Georges Cailletaud Ecole des Mines de Paris, Centre des Matériaux UMR CNRS 7633

FINITE ELEMENT : MATRIX FORMULATION. Georges Cailletaud Ecole des Mines de Paris, Centre des Matériaux UMR CNRS 7633 FINITE ELEMENT : MATRIX FORMULATION Georges Cailletaud Ecole des Mines de Paris, Centre des Matériaux UMR CNRS 76 FINITE ELEMENT : MATRIX FORMULATION Discrete vs continuous Element type Polynomial approximation

More information

An Object-Oriented class design for the Generalized Finite Element Method programming

An Object-Oriented class design for the Generalized Finite Element Method programming 10(2013) 1267 1291 An Object-Oriented class design for the Generalized Finite Element Method programming Abstract The Generalized Finite Element Method (GFEM) is a numerical method based on the Finite

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

CAD-BASED DESIGN PROCESS FOR FATIGUE ANALYSIS, RELIABILITY- ANALYSIS, AND DESIGN OPTIMIZATION

CAD-BASED DESIGN PROCESS FOR FATIGUE ANALYSIS, RELIABILITY- ANALYSIS, AND DESIGN OPTIMIZATION CAD-BASED DESIGN PROCESS FOR FATIGUE ANALYSIS, RELIABILITY- ANALYSIS, AND DESIGN OPTIMIZATION K.K. Choi, V. Ogarevic, J. Tang, and Y.H. Park Center for Computer-Aided Design College of Engineering The

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

How do Users and Processes interact with the Operating System? Services for Processes. OS Structure with Services. Services for the OS Itself

How do Users and Processes interact with the Operating System? Services for Processes. OS Structure with Services. Services for the OS Itself How do Users and Processes interact with the Operating System? Users interact indirectly through a collection of system programs that make up the operating system interface. The interface could be: A GUI,

More information

THE CFD SIMULATION OF THE FLOW AROUND THE AIRCRAFT USING OPENFOAM AND ANSA

THE CFD SIMULATION OF THE FLOW AROUND THE AIRCRAFT USING OPENFOAM AND ANSA THE CFD SIMULATION OF THE FLOW AROUND THE AIRCRAFT USING OPENFOAM AND ANSA Adam Kosík Evektor s.r.o., Czech Republic KEYWORDS CFD simulation, mesh generation, OpenFOAM, ANSA ABSTRACT In this paper we describe

More information

Fast Multipole Method for particle interactions: an open source parallel library component

Fast Multipole Method for particle interactions: an open source parallel library component Fast Multipole Method for particle interactions: an open source parallel library component F. A. Cruz 1,M.G.Knepley 2,andL.A.Barba 1 1 Department of Mathematics, University of Bristol, University Walk,

More information

Spark: Cluster Computing with Working Sets

Spark: Cluster Computing with Working Sets Spark: Cluster Computing with Working Sets Outline Why? Mesos Resilient Distributed Dataset Spark & Scala Examples Uses Why? MapReduce deficiencies: Standard Dataflows are Acyclic Prevents Iterative Jobs

More information

CastNet: Modelling platform for open source solver technology

CastNet: Modelling platform for open source solver technology CastNet: Modelling platform for open source solver technology. DHCAE Tools GmbH Address: Friedrich-Ebert-Str. 368, 47800 Krefeld, Germany / Company site: Alte Rather Str. 207 / 47802 Krefeld Phone +49

More information

Prediction of airfoil performance at high Reynolds numbers

Prediction of airfoil performance at high Reynolds numbers Downloaded from orbit.dtu.dk on: Jul 01, 2016 Prediction of airfoil performance at high Reynolds numbers. Sørensen, Niels N.; Zahle, Frederik; Michelsen, Jess Publication date: 2014 Document Version Publisher's

More information

On One Approach to Scientific CAD/CAE Software Developing Process

On One Approach to Scientific CAD/CAE Software Developing Process ISSN (Online): 1694-0784 ISSN (Print): 1694-0814 9 On One Approach to Scientific CAD/CAE Software Developing Process George Sergia 1, Alexander Demurov 2, George Petrosyan 3, Roman Jobava 4 1 Exact and

More information

version 3.0 tutorial - Turbulent mixing in a T-junction with CFDSTUDY in SALOME contact: saturne-support@edf.fr

version 3.0 tutorial - Turbulent mixing in a T-junction with CFDSTUDY in SALOME contact: saturne-support@edf.fr EDF R&D Fluid Dynamics, Power Generation and Environment Department Single Phase Thermal-Hydraulics Group 6, quai Watier F-78401 Chatou Cedex Tel: 33 1 30 87 75 40 Fax: 33 1 30 87 79 16 MAY 2013 documentation

More information

MEng, BSc Applied Computer Science

MEng, BSc Applied Computer Science School of Computing FACULTY OF ENGINEERING MEng, BSc Applied Computer Science Year 1 COMP1212 Computer Processor Effective programming depends on understanding not only how to give a machine instructions

More information

Welcome to Introduction to Computers and Programming Course using Python

Welcome to Introduction to Computers and Programming Course using Python Welcome to Introduction to Computers and Programming Course using Python V22.0002, Section 3, Spring 2010 Course Introduction Professor: Sana Odeh odeh@courant.nyu.edu Office hours: Mondays 2:00 pm - 4

More information

Introduction to MATLAB Gergely Somlay Application Engineer gergely.somlay@gamax.hu

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

More information

Mathematical Libraries on JUQUEEN. JSC Training Course

Mathematical Libraries on JUQUEEN. JSC Training Course Mitglied der Helmholtz-Gemeinschaft Mathematical Libraries on JUQUEEN JSC Training Course May 10, 2012 Outline General Informations Sequential Libraries, planned Parallel Libraries and Application Systems:

More information

Lecture 6 - Boundary Conditions. Applied Computational Fluid Dynamics

Lecture 6 - Boundary Conditions. Applied Computational Fluid Dynamics Lecture 6 - Boundary Conditions Applied Computational Fluid Dynamics Instructor: André Bakker http://www.bakker.org André Bakker (2002-2006) Fluent Inc. (2002) 1 Outline Overview. Inlet and outlet boundaries.

More information

CSCI 3136 Principles of Programming Languages

CSCI 3136 Principles of Programming Languages CSCI 3136 Principles of Programming Languages Faculty of Computer Science Dalhousie University Winter 2013 CSCI 3136 Principles of Programming Languages Faculty of Computer Science Dalhousie University

More information

Software Testing in Science

Software Testing in Science Software Testing in Science Dr. Axel Kohlmeyer Senior Scientific Computing Expert Information and Telecommunication Section The Abdus Salam International Centre for Theoretical Physics http://sites.google.com/site/akohlmey/

More information

Co-simulation of Microwave Networks. Sanghoon Shin, Ph.D. RS Microwave

Co-simulation of Microwave Networks. Sanghoon Shin, Ph.D. RS Microwave Co-simulation of Microwave Networks Sanghoon Shin, Ph.D. RS Microwave Outline Brief review of EM solvers 2D and 3D EM simulators Technical Tips for EM solvers Co-simulated Examples of RF filters and Diplexer

More information

Applications of the Discrete Adjoint Method in Computational Fluid Dynamics

Applications of the Discrete Adjoint Method in Computational Fluid Dynamics Applications of the Discrete Adjoint Method in Computational Fluid Dynamics by René Schneider Submitted in accordance with the requirements for the degree of Doctor of Philosophy. The University of Leeds

More information

A CODE VERIFICATION EXERCISE FOR THE UNSTRUCTURED FINITE-VOLUME CFD SOLVER ISIS-CFD

A CODE VERIFICATION EXERCISE FOR THE UNSTRUCTURED FINITE-VOLUME CFD SOLVER ISIS-CFD European Conference on Computational Fluid Dynamics ECCOMAS CFD 2006 P. Wesseling, E. Oñate and J. Périaux (Eds) c TU Delft, The Netherlands, 2006 A CODE VERIFICATION EXERCISE FOR THE UNSTRUCTURED FINITE-VOLUME

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

Chapter 8: Flow in Pipes

Chapter 8: Flow in Pipes Objectives 1. Have a deeper understanding of laminar and turbulent flow in pipes and the analysis of fully developed flow 2. Calculate the major and minor losses associated with pipe flow in piping networks

More information

MPI and Hybrid Programming Models. William Gropp www.cs.illinois.edu/~wgropp

MPI and Hybrid Programming Models. William Gropp www.cs.illinois.edu/~wgropp MPI and Hybrid Programming Models William Gropp www.cs.illinois.edu/~wgropp 2 What is a Hybrid Model? Combination of several parallel programming models in the same program May be mixed in the same source

More information

CFD modelling of floating body response to regular waves

CFD modelling of floating body response to regular waves CFD modelling of floating body response to regular waves Dr Yann Delauré School of Mechanical and Manufacturing Engineering Dublin City University Ocean Energy Workshop NUI Maynooth, October 21, 2010 Table

More information

Numerical methods for American options

Numerical methods for American options Lecture 9 Numerical methods for American options Lecture Notes by Andrzej Palczewski Computational Finance p. 1 American options The holder of an American option has the right to exercise it at any moment

More information

OpenFOAM: Open source CFD in research and industry

OpenFOAM: Open source CFD in research and industry Inter J Nav Archit Oc Engng 29) 1:89~94 DOI 1.3744/JNAOE.29.1.2.89 OpenFOAM: Open source CFD in research and industry Hrvoje Jasak 1,2 1 Wikki Ltd. London, United Kingdom, 2 FSB, University of Zagreb,

More information

HIGH PERFORMANCE BIG DATA ANALYTICS

HIGH PERFORMANCE BIG DATA ANALYTICS HIGH PERFORMANCE BIG DATA ANALYTICS Kunle Olukotun Electrical Engineering and Computer Science Stanford University June 2, 2014 Explosion of Data Sources Sensors DoD is swimming in sensors and drowning

More information

Open Source CFD Solver - OpenFOAM

Open Source CFD Solver - OpenFOAM Open Source CFD Solver - OpenFOAM Wang Junhong (HPC, Computer Centre) 1. INTRODUCTION The OpenFOAM (Open Field Operation and Manipulation) Computational Fluid Dynamics (CFD) Toolbox is a free, open source

More information

A. Hyll and V. Horák * Department of Mechanical Engineering, Faculty of Military Technology, University of Defence, Brno, Czech Republic

A. Hyll and V. Horák * Department of Mechanical Engineering, Faculty of Military Technology, University of Defence, Brno, Czech Republic AiMT Advances in Military Technology Vol. 8, No. 1, June 2013 Aerodynamic Characteristics of Multi-Element Iced Airfoil CFD Simulation A. Hyll and V. Horák * Department of Mechanical Engineering, Faculty

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: prabhu@aero.iitm.ernet.in Keywords: Visualization, CFD data,

More information