mdolab / OpenAeroStruct

OpenAeroStruct is a lightweight tool that performs aerostructural optimization using OpenMDAO.
Apache License 2.0
173 stars 112 forks source link

Orthotropic material #420

Open benoitpaillard opened 4 months ago

benoitpaillard commented 4 months ago

Description of feature

I'm wondering if composites laminates would be straightforward to implement in OpenAeroStruct ? Would be neat for aeroelastic tailoring

Potential solution

Using a non-diagonal stiffness matrix would be relatively easy I reckon.

gawng commented 3 months ago

Yes, if you want to add it into OAS and make a PR, it's page 16 from this thesis.

https://www.diva-portal.org/smash/get/diva2:609349/fulltext01.pdf

benoitpaillard commented 3 months ago

I'm down ! Can you give me pointers about where that matrix is defined ? I have a couple of test cases at hand to verify the outputs.

Cheers !

gawng commented 3 months ago

@benoitpaillard I recommend using GitHub dev and doing a global search for the stiffness matrix definition in the source code. I don't know the code base well enough to point out the exact file.

benoitpaillard commented 2 weeks ago

Hi all, I've tracked down the stiffness matrix definition to these lines

Can anyone confirm that appending this would be enough for the definition of an orthotropic material ?

gawng commented 2 weeks ago

Hi @benoitpaillard that looks right. However, if you also want derivatives working for the orthotopic material so you can do optimization, you must also modify the compute_partials() routine just below it.

How do you think you will add the orthotopic stiffness matrix? As an if-check or something else?

benoitpaillard commented 2 weeks ago

At first I would like to try and implement something quick and dirty, most likely hard coded, and check the results against our results from paper

I noticed you also work on hydrofoils, are you interested in doing some testing as well? Do you have any good reference case in mind?

gawng commented 2 weeks ago

The experimental and computational results you linked would be a great test case. I would suggest starting with a simpler case though since a NACA hydrofoil is not exactly a beam given the cross-section. We'd also want to rule out that the flow forces are not the cause of any discrepancy so a simpler external load would be better than going straight for a VLM + composite beam test case. It seems like you added viscous corrections to your AVL model that would potentially disagree with the OAS VLM.

Since the FEM is a beam model, perhaps some of the composite beam validations from the VABS paper with a simple tip load would be good. Then, there is this distributed pressure load case from Fig 4. from Liao et al 2019

If any other test cases come to mind, I'll let you know, but this is probably a decent start. I don't really have the bandwidth to support any testing with OAS myself, but happy to provide general pointers on implementing this.