28

Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of Liverpool, UK Liverpool, 16 March 2012

Embed Size (px)

Citation preview

Page 1: Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of Liverpool, UK Liverpool, 16 March 2012
Page 2: Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of Liverpool, UK Liverpool, 16 March 2012

Status of Nonlinear Model Reduction Framework in Py

A. Da RonchUniversity of Liverpool, UK

Liverpool, 16 March 2012

Page 3: Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of Liverpool, UK Liverpool, 16 March 2012

Target

• Nonlinear models for flexible aircraft (hierarchy)

• Nonlinear model reduction for control implementation

• Develop nonlinear control strategies

Py framework - data exchange to/from control people

Page 4: Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of Liverpool, UK Liverpool, 16 March 2012

Where do we stand?

• Model caseo Nonlinear p/p aerofoil

o ROM/NROM generation

o Control - gust alleviation

• Extend approach along 2 pathso Introduce CFD to p/p aerofoil (with Nik)

o Nonlinear beam + linear aerodynamics

• Combine models of varying fidelity

UVLM++ to be included in Py

Page 5: Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of Liverpool, UK Liverpool, 16 March 2012

Model reduction

n

Trfs

w

wwww

UwRdt

dw

R

,,

, *

• Taylor expansion of R• Project onto a small basis of aeroelastic modes

• z is complex-valued

nm

Cz

zfuBuBAzdt

dz

m

nlinddcc

FOM

ROM/NROM

Page 6: Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of Liverpool, UK Liverpool, 16 March 2012

Where do we stand?

• Model caseo Nonlinear p/p aerofoil

o ROM/NROM generation

o Control - gust alleviation

• Extend approach along 2 pathso Introduce CFD to p/p aerofoil (with Nik)

o Nonlinear beam + linear aerodynamics

• Combine models of varying fidelity

UVLM++ to be included in Py

Page 7: Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of Liverpool, UK Liverpool, 16 March 2012

Aerofoil section

12 states: p/p aerofoil + flap + gust

Nonlinear restoring forces (polynomial form)

Tfff

Ts

Tfss

www

hw

wwww

81 ,,

,

,,

Page 8: Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of Liverpool, UK Liverpool, 16 March 2012

FOM/ROM gust response – linear structural model

Page 9: Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of Liverpool, UK Liverpool, 16 March 2012

FOM gust response – linear/nonlinear structural model

Page 10: Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of Liverpool, UK Liverpool, 16 March 2012

NFOM/NROM gust response – nonlinear structural model

Page 11: Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of Liverpool, UK Liverpool, 16 March 2012

Linear control law on ROM - H∞ (with Y. Wang and A. Wynn)

CL

Page 12: Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of Liverpool, UK Liverpool, 16 March 2012

Aerofoil section

Linear control done on linear ROM

but

issues with NROM data interpretation

Alternative way suggested (and implemented) to export

NROM coefficients

afternoon session

Page 13: Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of Liverpool, UK Liverpool, 16 March 2012

Exporting NROM data for control

mm

m

CA

Cz

Azz

ia

iqpz

jk

jjj

)Im(

)Re(

z

zx

1) Complex-valued ROM system

2) Isolate real/imag parts

3) Real-valued variable

mj

xxx

xxx

kmkjm

kmkj

,,1

4) Real-valued system

Page 14: Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of Liverpool, UK Liverpool, 16 March 2012

Exporting NROM data for control

ib

zzbz

jrs

srjrsj

Quadratic term in NROM

mj

xxxxxxxxx

xxxxxxxxx

smrsrmsmrmsrjm

smrsrmsmrmsrj

,,1

Real-valued system

Page 15: Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of Liverpool, UK Liverpool, 16 March 2012

Exporting NROM data for control

Linear terms tensor of order 2Quadratic terms tensor of order 3Cubic terms tensor of order 4

in “easy to use” format for control applications - good

mmmm

mmm

mm

C

B

A

2222

222

22

ˆ

ˆ

ˆ

Page 16: Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of Liverpool, UK Liverpool, 16 March 2012

Where do we stand?

• Model caseo Nonlinear p/p aerofoil

o ROM/NROM generation

o Control - gust alleviation

• Extend approach along 2 pathso Introduce CFD to p/p aerofoil (with Nik)

o Nonlinear beam + linear aerodynamics

• Combine models of varying fidelity

UVLM++ to be included in Py

Page 17: Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of Liverpool, UK Liverpool, 16 March 2012

F90 routines

Py framework

Py script

• Beam code• Low-level programming

• Py-driven simulations• High-level programming

Page 18: Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of Liverpool, UK Liverpool, 16 March 2012

F90 routines

Py framework

Py script

• Memory storage C/Fortran like• No derived types

• LAPACK/BLAS calls removed• Derived types

Wrapper in F90

Wrapper.f90

Page 19: Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of Liverpool, UK Liverpool, 16 March 2012

F90 routines

Py framework

Py script

• Memory storage C/Fortran like• No derived types

• LAPACK/BLAS calls removed• Derived types• Dynamic library .so

Wrapper in F90

• 1d Py array to multi-dim F90 array• Assembly variables to derived types• Pass data back to Py

BeamLib.so

# Sample .py code - import shared librarylibso = cdll.LoadLibrary(“./BeamLib.so”)

Page 20: Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of Liverpool, UK Liverpool, 16 March 2012

Wrapper.f90

Py F90: reconstruct derived typesF90 Py: disassemble derived types

Page 21: Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of Liverpool, UK Liverpool, 16 March 2012

Wrapper.f90

Py F90: from 1d array to 2d/3dF90 Py: convert back to 1d array

Page 22: Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of Liverpool, UK Liverpool, 16 March 2012

Static Aeroelastic Run, HALE wing - Py is LIN/NLN struct + STRIP

Page 23: Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of Liverpool, UK Liverpool, 16 March 2012

Py framework

Static aeroelastic (linear/nonlinear trim) ok

but

work needed for dynamic aeroelastic analysis

afternoon session

Page 24: Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of Liverpool, UK Liverpool, 16 March 2012

Py framework

FOM• Newmark for 2nd order ODEs (unconditionally stable)• rewrite aerodynamics as 2nd order system• expand size of system to solve

ROM/NROM• rewrite system as 1st order ODEs• ROM generation should apply without modifications

Page 25: Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of Liverpool, UK Liverpool, 16 March 2012

lib/

src/ linux64/

fortran/

main/ install/ bin/ wrapper/

• Wrapper.f90• Makefile• BeamLib.so

Modified source code• LAPACK/BLAS removed• New routines *_clean.f90

Code integration

Page 26: Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of Liverpool, UK Liverpool, 16 March 2012

lib/

src/ linux64/

fortran/

main/ install/ bin/ wrapper/

• Add flag -DNOLAPACK to use LU factorization• Default remains LAPACK calls• One single code (UL/IC), easiness to replace/update beam code

Conditional compilation

Code integration - suggestion

! Sample .f90 code#ifdef NOLAPACK

! LU factorization#else

! default solver#endif

Page 27: Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of Liverpool, UK Liverpool, 16 March 2012

Project webpage

• cfd4aircraft new layout, dedicated sections to research

themes

• Flexflight page could have

o section for open-access documents

o pswd-protected member area (meeting archives, etc.)

see current status

Page 28: Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of Liverpool, UK Liverpool, 16 March 2012

Conclusions

p/p aerofoil

• NROM generation demonstrated

• NROM data for control design

Py framework for beam code

• dynamic solver to be completed

• model reduction for gust response

test approach to larger systems

(Suggestions for data exchange/code integration/...)