symplegma , a jvm implementation for numerical methods in...

97
The Symplegma project Symplegma SDE Climax jfem jbem gendomain strdyn More FuturEye PDE SymJava Coupling Conclusions Symplegma, a JVM implementation for numerical methods in computational mechanics. Christos G. Panagiotopoulos Institute of Applied & Computational Mathematics Foundation of Research and Technology–Hellas FOSSCOMM 2018, 13-14 October Free and Open Source Software Communities Meeting Computer Science Department University of Crete The Symplegma project

Upload: others

Post on 16-Oct-2020

10 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Symplegma, a JVM implementation for

numerical methods in computational mechanics.

Christos G. Panagiotopoulos

Institute of Applied & Computational MathematicsFoundation of Research and Technology–Hellas

FOSSCOMM 2018, 13-14 OctoberFree and Open Source Software Communities Meeting

Computer Science DepartmentUniversity of Crete

The Symplegma project

Page 2: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

What is Symplegma?

The Symplegma project

Page 3: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Symplegma: a computational mechanics framework

and beyond

• Java code developed for personal research activity.

• Main orientation, education and research.

The spatiotemporal path of the project:

• 2008-2010, Aristotle University of Thessaloniki,Thessaloniki, Greece

• 2010-present, University of Seville, Seville, Spain

• 2010-2011, Charles University of Prague, Prague, Czechia

• 2013, GEOMEC Engineering, Stavanger, Norway

• 2014-present, Foundation of Research and Technology,Heraklion, Crete

• 2017-2018, Technical University of Crete, Chania, Crete

• 2017-present, Technological Educational Institute ofCrete, Rethymno, Crete

The Symplegma project

Page 4: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Symplegma: a computational mechanics framework

and beyond

The Symplegma project

Page 5: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Symplegma on the net

The Symplegma project

Page 6: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Computational mechanics and numerical computing

From International Association for Computational Mechanics website

Computational Mechanics (CM) is the development and applicationof numerical methods and digital computers to the solution ofproblems posed by Engineering and Applied Science with theobjectives of understanding and harnessing the resources of nature.

Interdisciplinary

CM involves different fields of expertise. Its three pillars aremathematics, computer science, and mechanics. Computational fluiddynamics, computational thermodynamics, computationalelectromagnetics, computational solid mechanics are some of themany specializations within CM.

The Symplegma project

Page 7: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Numerical methods

Mathematics

Ordinary and Partial differential equations, linear algebra andnumerical analysis.

Methods

FEM, FDM, and BEM are the most popular numerical methodsused in order of dominance. In solid mechanics FEM are farmore prevalent, whereas in fluid mechanics, thermodynamics,and electromagnetism, FDM are almost equally applicable. TheBEM is in general less popular, but has a niche in certain areas(e.g., acoustics, fracture).

The Symplegma project

Page 8: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Java?

General

Java is a general purpose, computer programming language, gained

widespread popularity. Appealing features of Java include: clean and

simple syntax, high level of maintainability of Java code, portability,

automatic memory management, multithreading and networking

capabilities, wealth of libraries and tools.

Science

Early interest in Java from the scientific communities to determine the

level of performance offered by Java, and its suitability for developing

scientific software. The Java Grande Forum (JGF) was an initiative to

encourage interest in Java amongst the scientific and HPC communities.

The Symplegma project

Page 9: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Why and for what reason?

Java

Java is considered as an alternative, and not subsitute, language fornumerical, scientific and engineering computations. FORTRAN,C/C++ are the dominants with Python and Julia being suppementary.Java should be considered both for the language and the Java VirtualMachine, while lot of significant languages running on the JVM havebeen arised (e.g. Groovy, Scala, Clojure, Jython, JRuby, etc.).

Symplegma & SDE

Symplegma and the respective platform SDE are considered tobecome an integrated computational mechanics platform with mainorientation research and education. Substitution of commercial oropen source code capable to handle huge problems of industry is notconsidered.

The Symplegma project

Page 10: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

The Symplegma components

Components used:

• Java, Groovy

• Climax, SDE

• Apache Commons Math, JAMA, JBLAS

• JLaTeXMath

• Futureye, SymJava

• . . . among other . . .

The Symplegma project

Page 11: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

The Climax packages

Some packages developed as part of Climax :

• jbem: Boundary element method components

• jfem: Finite element method components

• gendomain: A general purposes domain

• geom: Utilities for geometric entities

• sympmesher: A simple mesher

• jdem (draft): Discrete element method

• structuraldynamics: Structural dynamics and vibrations

Symplegma may turn out to be a pocketknife-like tool. . .

The Symplegma project

Page 12: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

SDE: An integrateddevelopment environment forSymplegma components

The Symplegma project

Page 13: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Description of SDE environment

The SDE environment consists of three segments

(a) the text area (input)

(b) the communication area (output)

(c) the area of graphical visualization (output)

key: simplicity

The Symplegma project

Page 14: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Plots - PlotFrame

The Symplegma project

Page 15: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Plots - PlotFrame

The Symplegma project

Page 16: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Plots - PlotFrame - jlatexmath

The Symplegma project

Page 17: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

The java source code, classesand libraries

The Symplegma project

Page 18: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

The code skeleton

Pre-processing

• Declare variables

• Define domains

• Define nodes

• Define element

• Define other necessaryentities

Processing

• Declare algorithms

• Set analysis’ parameters

• Do the analysis

Post-processing

• Manipulating results

• Visualize

• Plotting

The Symplegma project

Page 19: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

jfem: The finite elementmethod implementation

The Symplegma project

Page 20: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Beam elastodynamics

Euler-Bernoulli

EI∂4v

∂x4+ A

∂2v

∂t2= q(x, t)

Timoshenko

κGA

(

∂ψ

∂x−∂2v

∂x2

)

+ ρA∂2v

∂t2= q(x, t)

κGA

(

∂v

∂x− ψ

)

+ EI∂2ψ

∂x2− I

∂2ψ

∂t2= 0.

The Symplegma project

Page 21: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Climax (Groovy) Code

1 import j f em .∗ ;23 // d e f i n e a fem domain4 dom=theUn i v e r s e . FEMDomain( ) ;56 L=0.1; NNodes=200;78 // d e f i n e ma t e r i a l9 mat= new E l a s t i cM a t e r i a l ( 1 , 193000000000 , 0 . 25 , 7850 . 0)

1011 // d e f i n e c ros s−s e c t i o n s12 s e c t= new C r o s s S e c t i o n ( 1 , 0 . 0046 , 0 . 00096)1314 // d e f i n e nodes15 ( 1 . . NNodes ) . eachdom . putNode (new Node ( i t , i t ∗L/NNodes ) )1617 // d e f i n e e l ement s18 (1. .<NNodes ) . eachdom . putE lement (new EBeam2d ( i t , dom . getNode ( i t ) ,dom . getNode

( i t +1) ,mat , s e c t ) )1920 // d e f i n e a n a l y s i s21 t h eA n a l y s i s = new E i g e nAna l y s i s (dom , 3 )22 t h eA n a l y s i s . a n a l y s e ( )2324 // p l o t e igen−modes25 theGP . p lotDe form (−4 ,1.0)

The Symplegma project

Page 22: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Beam elastodynamics, first bending eigenmode

The Symplegma project

Page 23: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Beam elastodynamics, second bending eigenmode

The Symplegma project

Page 24: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Beam elastodynamics, third bending eigenmode

The Symplegma project

Page 25: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Plane stress elasticity: plate with hole

• Modulus of elasticityE=200GPa

• Poisson ratio ν=0.25

• Lx=Ly=10.0cm

• Radius r=0.5m

• Dirichlet boundaryd = 0.1cm

• Navier-Lame equations ofequilibrium

The Symplegma project

Page 26: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Plate with hole: mesh

The Symplegma project

Page 27: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Plate with hole: deformed

The Symplegma project

Page 28: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Plate with hole: σxx stress

The Symplegma project

Page 29: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Plate with hole: σyy stress

The Symplegma project

Page 30: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Plate with hole: τxy stress

The Symplegma project

Page 31: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Plate with hole: Von Misses stress

The Symplegma project

Page 32: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

FEM implementation features (non exhaustive list)

Element

• Single dof

• Truss

• Beam

• Plane stress/strain

• Constraint elementMaterial

• Elastic

• Inelastic (plasticity,hardening)

Algorithm

• Linear

• Non linear(Newton-Raphson)

Analysis

• Quasi-static

• Transient dynamic (timedomain)

• Eigenanalysis

The Symplegma project

Page 33: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

jbem: The boundary elementmethod implementation

The Symplegma project

Page 34: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

BEM potential problem

Laplace Equation and Harmonic Functions.

x

y

ΓDΓD

∇2u(x, y) = 0 in Ω

u = f on ΓD

∂u

∂n=∂f

∂non ΓN

f = e4x2−(2y−1)2 sin (4x(2y − 1))

The Symplegma project

Page 35: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

BEM potential problem (discretization)

The Symplegma project

Page 36: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

BEM potential problem (u-distribution)

The Symplegma project

Page 37: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

BEM potential problem (u-distribution)

The Symplegma project

Page 38: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

BEM potential problem (∂u∂n-distribution)

The Symplegma project

Page 39: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

BEM potential problem (∂u∂n-distribution)

The Symplegma project

Page 40: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

BEM elasticity problem (discretization)

The Symplegma project

Page 41: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

BEM elasticity problem (deformed)

The Symplegma project

Page 42: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

BEM elasticity problem (deformed internal-1)

The Symplegma project

Page 43: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

BEM elasticity problem (deformed internal-2)

The Symplegma project

Page 44: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Contact mechanics problem with BEM

E (u) =

N∑

i=1

Ei(ui) =

N∑

i=1

Ωi

1

2C(i)ei(ui):ei(ui) dΩ.

W (t, u) =

N∑

i=1

ΓN

ui(x, t) · piN(x, t) dS

Π(t, u) =

E (u)− W (t, u) if u = uD on ΓD,

[[u]]n ≥ −gn on ΓC,

∞ elsewhere,

The Symplegma project

Page 45: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Contact problem with BEM

The Symplegma project

Page 46: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Contact problem with BEM

The Symplegma project

Page 47: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Contact problem with BEM

The Symplegma project

Page 48: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

BEM implementation features (non exhaustive list)

Geometry

• One dimensions

• Two dimensions

• Three dimensions

Element

• Point 1 node

• Line 2-3 nodes

• Quad 4-9 nodes

Material

• Elastic (iso-, orthotropic)

• Viscous

• Potential

Analysis

• Quasi-static

• Transient elastodynamics

• Viscoelastic

• Multiple domains

• Contact

The Symplegma project

Page 49: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Climax general domain andusage of SDE as a numerical

computing platform

The Symplegma project

Page 50: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

The generalized domain

• The gendomain is an entity that mainly consists of nodeswith degrees of freedom and respective values on severaltime steps.

• There is a direct connection of gendomain with thegraphics area.

• We present it here through finite differences method(FDM) examples solving the wave equation.

∂2u

∂t2= c2

∂2u

∂x2x ∈ Ω, t ∈ (0, T ]

u(x, 0) = u0(x),∂

∂tu(x, 0) = v0(x) x ∈ Ω

u(x, t) = u x ∈ ΓD, t ∈ (0, T ]

∂u(x, t)

∂x= q x ∈ ΓN, t ∈ (0, T ]

The Symplegma project

Page 51: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Time evolution of deformation (00/10)

The Symplegma project

Page 52: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Time evolution of deformation (01/10)

The Symplegma project

Page 53: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Time evolution of deformation (02/10)

The Symplegma project

Page 54: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Time evolution of deformation (03/10)

The Symplegma project

Page 55: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Time evolution of deformation (04/10)

The Symplegma project

Page 56: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Time evolution of deformation (05/10)

The Symplegma project

Page 57: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Time evolution of deformation (06/10)

The Symplegma project

Page 58: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Time evolution of deformation (07/10)

The Symplegma project

Page 59: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Time evolution of deformation (08/10)

The Symplegma project

Page 60: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Time evolution of deformation (09/10)

The Symplegma project

Page 61: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Time evolution of deformation (10/10)

The Symplegma project

Page 62: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Wave propagation in 2D acoustic medium

For the circular membrane problem the wave equation in (r, φ)polar coordinates

1

c2∂2u

∂t2=∂2u

∂r2+

1

r

∂u

∂r+

1

r2∂2u

∂φ2

under approrpiate boundary and initial conditions. Aftersubstitution of finite difference equations we may arrive at:

un+1i,j = c2∆t2

[ 1

2ri∆r(uni+1,j − uni−1,j) +

1

∆r2(uni−1,j + uni+1,j

− 2uni,j) +1

r2i∆φ2(uni,j−1 + uni,j+1 − 2uni,j)

]

− un−1i,j + 2uni,j

The Courant number in that case is C = 2c∆t∆r∆φ

stabilitycondition

C ≤ 1 → ∆t ≤∆r∆φ

2c.

The Symplegma project

Page 63: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Wave propagation on circular membrane (01/08)

The Symplegma project

Page 64: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Wave propagation on circular membrane (02/08)

The Symplegma project

Page 65: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Wave propagation on circular membrane (03/08)

The Symplegma project

Page 66: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Wave propagation on circular membrane (04/08)

The Symplegma project

Page 67: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Wave propagation on circular membrane (05/08)

The Symplegma project

Page 68: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Wave propagation on circular membrane (06/08)

The Symplegma project

Page 69: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Wave propagation on circular membrane (07/08)

The Symplegma project

Page 70: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Wave propagation on circular membrane (08/08)

The Symplegma project

Page 71: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

The structuraldynamicspackage as a toolbox foreducational purposes

The Symplegma project

Page 72: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Classes as entities of structural dynamics

Classes of some structural dynamics entities:

• sdof the single degree of freedom system

• sdofSeries a system of masses connected throughsprings in series

• shearframe a shear frame multistorey frame

• pendulum a multiple pendulum (currently up to twomasses mey be considered)

All these classes implement the interface contraption whichmainly has the function SelfPortrait and Motion both forconnection and print on the graphics area.

The Symplegma project

Page 73: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Double pendulum

Kinetic energy

T =1

2(m1 +m2)l

21θ

21 +m2l1l2θ1θ2 cos (θ1 − θ2) +

1

2m2l

22θ

22.

Potential energy,

V = −(m1 +m2)gl1 cos θ1 −m2gl2 cos θ2 + const.

Equations of motion through Lagrange’s equations:

d

dt

(

∂T

∂qi

)

−∂T

∂qi+∂V

∂qi= 0

Solving using a pendulum’s function that utilizesClassicalRungeKuttaIntegrator (Runge-Kutta) fromCommons Math of Apache.

The Symplegma project

Page 74: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Pendulum’s motion (01/09)

The Symplegma project

Page 75: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Pendulum’s motion (02/09)

The Symplegma project

Page 76: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Pendulum’s motion (03/09)

The Symplegma project

Page 77: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Pendulum’s motion (04/09)

The Symplegma project

Page 78: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Pendulum’s motion (05/09)

The Symplegma project

Page 79: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Pendulum’s motion (06/09)

The Symplegma project

Page 80: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Pendulum’s motion (07/09)

The Symplegma project

Page 81: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Pendulum’s motion (08/09)

The Symplegma project

Page 82: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Pendulum’s motion (09/09)

The Symplegma project

Page 83: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Other packages than Climax. . . and more. . .

The Symplegma project

Page 84: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

FuturEye Java PDE solverwith FEM

The Symplegma project

Page 85: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Introduction

FuturEye

FuturEyea is a Java based Finite Element Method (FEM)Toolkit, providing concise, natural and easy understandingprogramming interfaces for users who wish to develop researchand/or engineering FEM algorithms for Forward and/or InverseProblems.

ahttps://github.com/yuemingl/Futureye_JIT

Weak form abstraction

One of the most appealing features is that of the weak formclasses for approximating PDEs’ strong forms. Different weakforms may be involved in different techniques for solving thesame PDE problem with FEM.

The Symplegma project

Page 86: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Weak forms of PDEs

https://en.wikipedia.org/wiki/Weak_formulation

The Symplegma project

Page 87: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Solve Poisson’s equation

Find u ∈ H1(Ω) such that

−∆u(x, y) = f(x, y), (x, y) ∈ Ω

u(x, y) = 0, (x, y) ∈ ∂Ω

f(x, y) = −2(x2 + y2) + 36

The Symplegma project

Page 88: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

PDE potential problem in SDE

The Symplegma project

Page 89: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

PDE FuturEye implementation features (nonexhaustive list)

Function

• Constant

• Single variable

• Combination

• Composition

• Derivative

• Several variables

• Vector function

Weak form

• Laplace

• Convection-diffusion

• Navier-Stokes

• . . .

Operators

• div

• grad

• curl

The Symplegma project

Page 90: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

SymJava A Java library forfast symbolic-numeric

computation

The Symplegma project

Page 91: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Introduction

SymJava

SymJavaa is a Java library for symbolic-numeric computation.Java bytecode is generated at runtime for symbolic expressionswhich make the numerical evaluation really fast.

ahttps://github.com/yuemingl/SymJava

Utilization

While it is not included in SDE by default, its jar file might beloaded from menu bar (Load→Add jar).

The Symplegma project

Page 92: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

A differentiation example

1 // h t t p s :// g i t hub . com/ yueming l /SymJava2 import s t a t i c symjava . symbo l i c . Symbol . ∗ ;3 import symjava . bytecode . BytecodeFunc ;4 import symjava . symbo l i c . ∗ ;5

6 Expr exp r = x + y∗z ;7 p r i n t l n ( exp r ) ; //x + y∗ z8

9 Expr expr2 = exp r . subs ( x , y∗y ) ;10 p r i n t l n ( expr2 ) ; //yˆ2 + y∗ z11 p r i n t l n ( expr2 . d i f f ( y ) ) ; //2∗ y + z12

13 Func f = new Func ( ” f1 ” , ( expr2 . d i f f ( y ) ) ) ;14 p r i n t l n ( f ) ; //2∗ y + z15

16 BytecodeFunc func = f . toBytecodeFunc ( ) ;17 p r i n t l n ( func . app l y (1 ,2 ) ) ; // 4 .0

The Symplegma project

Page 93: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Coupling of differentnumerical methods and/ordifferent physics domains

The Symplegma project

Page 94: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Domain Decomposition Methods (e.g., DtN)

Initialize ubfi on interface Γbf = Γfb and iterate while p > tol:

1 Solve BEM → tbfi

2 tbfi → f

fbi

3 Solve FEM → ufbi

4 ubfi+1 = (1− θ)ubfi + θu

fbi

5 Compute some norm p of difference between ubfi+1 and ubfiwhere θ a relaxation parameter usually in [0, 1].

The Symplegma project

Page 95: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Educational activity: past

Experience gained:

• Previously developed software, dynasoft and edusoft, atAristotle University of Thessaloniki, for courses such“Strength of Materials” and “Structural Dynamics”.

• Course on “Computational Mechanics” at the Departmentof Production Engineering & Management, TechnicalUniversity of Crete.

• Course on “Computational Acoustics” at the Departmentof Music Technology and Acoustics Engineering of theTechnological Educational Institute of Crete.

• Course on “Dynamics, vibration and control of structures”at the Department of Production Engineering &Management, Technical University of Crete.

The Symplegma project

Page 96: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Educational activity: current

Experience to be gained (?):

• Reformation of the course on “Computational Acoustics”at the Department of Music Technology and AcousticsEngineering of the Technological Educational Institute ofCrete.

• Course on “Applied Mathematics” at the Department ofMusic Technology and Acoustics Engineering of theTechnological Educational Institute of Crete.

• Course on “Structural Acoustics” at the Department ofMusic Technology and Acoustics Engineering of theTechnological Educational Institute of Crete.

The Symplegma project

Page 97: Symplegma , a JVM implementation for numerical methods in …thales.iacm.forth.gr/~pchr/SymplegmaFOSSCOMM2018.pdf · 2019. 2. 7. · FEM, FDM, and BEM are the most popular numerical

The

Symplegma

project

Symplegma

SDE

Climax

jfem

jbem

gendomain

strdyn

More

FuturEye PDE

SymJava

Coupling

Conclusions

Conclusions

• Improvement and optimization of existed code

• Advanced coupling strategies between domains of differentnumerical methods (e.g., FEM-BEM) and/or physics (e.g.,Fluid-Structure)

• Advanced plotting features

• Further development of the 3D graphics area (JavaFX)

The Symplegma project