Optimization of an Industrial Code (COROS) With Python ... · Title: Optimization of an Industrial...

1
Optimization of an Industrial Code (COROS) With Python Linear Algebra Routines Andrew MacLean, Supervised by Prof. Christophe Pierre, Dr. Alain Batailly and Dr. Simon Jones Department of Mechanical Engineering, McGill University, Montreal, Canada (u f q) T φ φ o o Ax = b o o o φ D. 0 10 20 30 40 50 60 70 80 90 100 calling Python lobpcg (preconditioned) lobpcg (preconditioned) eigs Computation Time (minutes) Memory Consumption (10 x MB) 1.00E-10 1.00E-08 1.00E-06 1.00E-04 1.00E-02 1.00E+00 1.00E+02 1.00E+04 0 5 10 15 20 Percent Error (log scale) Eigenfrequency lobpcg lobpcg with preconditioner 181.975 10 100 1000 10000 100000 1000000 0 50 100 150 200 250 1 st Eigenfrequency (log scale) Iterations for lobpcg lobpcg lobcg with preconditioner reference (Matlab's eigs)

Transcript of Optimization of an Industrial Code (COROS) With Python ... · Title: Optimization of an Industrial...

Page 1: Optimization of an Industrial Code (COROS) With Python ... · Title: Optimization of an Industrial Code (COROS) With Python – Linear Algebra Routines Andrew MacLean, Supervised

Optimization of an Industrial Code (COROS) With Python – Linear Algebra RoutinesAndrew MacLean, Supervised by Prof. Christophe Pierre, Dr. Alain Batailly and Dr. Simon Jones

Department of Mechanical Engineering, McGill University, Montreal, Canada

(uf q)T

φ

φ

o

o Ax = bo

o

o

φD.

0

10

20

30

40

50

60

70

80

90

100

calling Python lobpcg (preconditioned)

lobpcg(preconditioned)

eigs

Computation Time (minutes)

Memory Consumption (10 x MB)

1.00E-10

1.00E-08

1.00E-06

1.00E-04

1.00E-02

1.00E+00

1.00E+02

1.00E+04

0 5 10 15 20P

erce

nt

Err

or

(lo

g s

cale

)

Eigenfrequency

lobpcg

lobpcg with preconditioner

181.975

10

100

1000

10000

100000

1000000

0 50 100 150 200 2501st E

igen

freq

uen

cy (

log

sca

le)

Iterations for lobpcg

lobpcg

lobcg with preconditionerreference (Matlab's eigs)