status of nonlinear model reduction framework in py a. da ronch university of l iverpool , uk

28

Upload: mervyn

Post on 23-Feb-2016

37 views

Category:

Documents


0 download

DESCRIPTION

Status of Nonlinear Model Reduction Framework in Py A. Da Ronch University of L iverpool , UK Liverpool, 16 March 2012. Target Nonlinear models for flexible aircraft (hierarchy) Nonlinear model reduction for control implementation Develop nonlinear control strategies - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Status of Nonlinear Model Reduction  Framework in  Py A.  Da Ronch University of  L iverpool ,  UK
Page 2: Status of Nonlinear Model Reduction  Framework in  Py A.  Da Ronch University of  L iverpool ,  UK

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  L iverpool ,  UK

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  L iverpool ,  UK

Where do we stand?

• Model caseo Nonlinear p/p aerofoilo ROM/NROM generationo 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  L iverpool ,  UK

Model reduction

n

Trfs

w

wwww

UwRdtdw

R

,,

, *

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

• z is complex-valued

nmCz

zfuBuBAzdtdz

m

nlinddcc

FOM

ROM/NROM

Page 6: Status of Nonlinear Model Reduction  Framework in  Py A.  Da Ronch University of  L iverpool ,  UK

Where do we stand?

• Model caseo Nonlinear p/p aerofoilo ROM/NROM generationo 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  L iverpool ,  UK

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  L iverpool ,  UK

FOM/ROM gust response – linear structural model

Page 9: Status of Nonlinear Model Reduction  Framework in  Py A.  Da Ronch University of  L iverpool ,  UK

FOM gust response – linear/nonlinear structural model

Page 10: Status of Nonlinear Model Reduction  Framework in  Py A.  Da Ronch University of  L iverpool ,  UK

NFOM/NROM gust response – nonlinear structural model

Page 11: Status of Nonlinear Model Reduction  Framework in  Py A.  Da Ronch University of  L iverpool ,  UK

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  L iverpool ,  UK

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  L iverpool ,  UK

Exporting NROM data for control

mm

m

CA

Cz

Azz

ia

iqpz

jk

jjj

)Im()Re(

zz

x

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  L iverpool ,  UK

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  L iverpool ,  UK

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  L iverpool ,  UK

Where do we stand?

• Model caseo Nonlinear p/p aerofoilo ROM/NROM generationo 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  L iverpool ,  UK

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  L iverpool ,  UK

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  L iverpool ,  UK

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  L iverpool ,  UK

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  L iverpool ,  UK

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  L iverpool ,  UK

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  L iverpool ,  UK

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  L iverpool ,  UK

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  L iverpool ,  UK

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  L iverpool ,  UK

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  L iverpool ,  UK

Project webpage

• cfd4aircraft new layout, dedicated sections to research

themes

• Flexflight page could haveo section for open-access documentso 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  L iverpool ,  UK

Conclusionsp/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/...)