WEIS icon indicating copy to clipboard operation
WEIS copied to clipboard

DLC Generation - Refactor and New Cases

Open dzalkind opened this issue 1 year ago • 1 comments

Purpose

Refactoring of the DLC generator to follow the case input structure commonly used in aeroelasticse. A few new cases have been added so far, but the previous functionality should be implemented already.

Starting a draft PR to evaluate what tests are failing with new method.

Items to do:

  • documentation of new configuration and setting up of new cases
  • comparison with old DLCs to verify new method

Type of change

What types of change is it? Select the appropriate type(s) that describe this PR

  • [ ] Bugfix (non-breaking change which fixes an issue)
  • [ ] New feature (non-breaking change which adds functionality)
  • [ ] Breaking change (non-backwards-compatible fix or feature)
  • [ ] Code style update (formatting, renaming)
  • [ ] Refactoring (no functional changes, no API changes)
  • [ ] Documentation update
  • [ ] Maintenance update
  • [ ] Other (please describe)

Testing

Explain the steps needed to test the new code to verify that it does indeed address the issue and produce the expected behavior.

Checklist

Put an x in the boxes that apply.

  • [ ] I have run existing tests which pass locally with my changes
  • [ ] I have added new tests or examples that prove my fix is effective or that my feature works
  • [ ] I have added necessary documentation

dzalkind avatar Aug 07 '24 19:08 dzalkind

The checks did not run successfully because of small errors in the dlc_generator.py. Fixed those in commit [339856b].(https://github.com/WISDEM/WEIS/pull/308/commits/339856b080c0d727276ad3081df1350e9079df30) Next need to add dlc 6.5 and that should fix the tests (hopefully.)

abhineet-gupta avatar Aug 08 '24 22:08 abhineet-gupta

I think this is ready to merge into develop. I'd do that after we merge develop into main so this can be exercised a bit before releasing.

I added some developer documentation to explain the new functions a bit. Please let me know if there's anything unclear.

I have a set up on kestrel with all the DLCs that we could use a test. Running all the cases fully and actually checking them is probably too heavy for CI. I did a pretty thorough verification against our original DLC generator, and the results are attached in the post for this PR. I'm happy to go through this with anyone that uses the DLC generator heavily.

dzalkind avatar Nov 21 '24 22:11 dzalkind

Following our in-person code review today, I think we are okay to merge this once tests pass.

I updated the AEP TI calculation here: https://github.com/WISDEM/WEIS/blob/eeeae1076c149aec70a8247e46a393976d88b867/weis/dlc_driver/dlc_generator.py#L410

Some future wish list items:

  • Making the seeds serial in integer order
  • Adding a PSF table
  • An example/configuration for generating the inputs without running

dzalkind avatar Dec 11 '24 21:12 dzalkind