Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add "Super Simple Wing" example and a few bug fixes #298

Merged
merged 50 commits into from
Mar 12, 2024
Merged

Add "Super Simple Wing" example and a few bug fixes #298

merged 50 commits into from
Mar 12, 2024

Conversation

bburke38
Copy link
Contributor

No description provided.

sean-engelstad and others added 30 commits December 5, 2023 13:44
Rename wing.udc to wingStuct.udc for clarity.
Completed structural model of SSW in ESP/CAPS.
* Update esp/caps download (#271)

* Update esp/caps download

* Update tar command in unit-test workflow

* Fix ESP124 folder name

* FUN3D clean up: fix logic in shape driver and remove build_morph method in fun3d_model (#272)

* Update funtofem_shape_driver.py

* Update fun3d_model.py

Delete redundant build_morph method and add documentation to build method.

* Print out a summary of the driver instance for inspection (#273)

* Clean up the model summary

Added methods to print out a summary of the driver set up, including details on the solvers, shape change, mesh change, transfer settings, and comm manager.

Cleaned up the model summary to print more neatly using standard spacings rather than arbitrary tabs.

Small bug fix in `funtofem_shape_driver.py` associated with trying to delete the structural model at the end of the adjoint. Originally implemented to free up memory, but the implementation was attempting to delete an attribute which leads to an Attribute Error.

* Create driver summary methods

* Move print_transfer to _funtofem_driver

Move _print_transfer method to _funtofem_driver so that all drivers can inherit the method. Also changed the generic driver summary in _funtofem_driver.

* Formatting

* Make transfer_settings an attribute of base driver

Add attribute to the base driver class for the transfer_settings, including a check for None. Remove attribution in the shape driver.

* Typo in base driver

* Formatting

* Read in inactive variables from design files (#274)

* Root proc check on _setDictOptions for AFLR AIM

* Add ability to read inactive variables from previous designs

---------

Co-authored-by: Sean Engelstad <[email protected]>
Set all twists to default to zero.
Use blend instead of rule.
bburke38 and others added 14 commits February 7, 2024 15:23
Update SSW from major work on HPC
* Fix opt manager nan exit (#284)

* fix bug in optimization manager

* Update optimization_manager.py

* Create a generalized mesh AIM. (#286)

* Generalized mesh AIM

* New notation in meshAIM

* Update egads_aim.py

* Update aflr_aim.py

* Formatting

* Update egads_aim.py

* FUNtoFEM read and write unsteady aero loads files (#289)

* working unsteady aero loads files

* black reformat

* FUN3D v14.0.2 interface stable release for thermal cases (#288)

* fun3d 14.0 fun3d interface changes

* add separate fun3d 14 and 13.0 interfaces

* Update fun3d_14_interface.py name to Fun3d14Interface

* update fun3d 14 interface unittests

* update fun3d model

* black reformat

* update fun3d 14.0 thermal changes

* update fun3d 14 interface with debug statements

* new thermal fun3d test

* add new fun3d thermal interface test

* fun3d 14 thermal interface test complete

* update the fun3d 14 thermal interface test

* update the import statements

* black reformat

* black reformat with psf/black-stable

* Apply suggestions from code review

* undo debug changes

* black reformat

* Rollback test_fun3d_tacs.py to FUN3D 13.6 test

* Update test_fun3d_tacs.py to add fun3d_project_name back in

* black reformat

---------

Co-authored-by: Brian Burke <[email protected]>

* FUN3D 14.0 Coupling Frequency for Coupled Adjoint speedup + Early Stopping Fix (#291)

* huge speedup in funtofem fully coupled adjoint solve

* turn hanim off in turbulent beta nml

* working adjoint derivatives and change adjoint_steps

* working early stopping criterion in FUN3D 14.0.2

* add error check for first aero function w early stopping

* input funtofem loose coupling frequency through the fun3d interface (no longer namelist input)

* update nml for turbulent beta

* black reformat + throw error if FUN3D 13.6 uses loose coupling frequency

* Update funtofem/interface/fun3d_interface.py

---------

Co-authored-by: Brian Burke <[email protected]>

* commit ssw 14.0 example

* egads aero mesh example

* prototype ssw finite difference test

* remove reload design file

* update cfl in namelist

* fix steps in namelist

* update panel thickness script

* add FD test for the derivatives

* fix early stopping multi analysis bug

* update ssw 14 fun3d nml

* new aero loads for ssw case

* oneway sizing opt

* updated aerodynamic function fun3d check

* black reformat

---------

Co-authored-by: Brian Burke <[email protected]>
* Fix opt manager nan exit (#284)

* fix bug in optimization manager

* Update optimization_manager.py

* Create a generalized mesh AIM. (#286)

* Generalized mesh AIM

* New notation in meshAIM

* Update egads_aim.py

* Update aflr_aim.py

* Formatting

* Update egads_aim.py

* FUNtoFEM read and write unsteady aero loads files (#289)

* working unsteady aero loads files

* black reformat

* FUN3D v14.0.2 interface stable release for thermal cases (#288)

* fun3d 14.0 fun3d interface changes

* add separate fun3d 14 and 13.0 interfaces

* Update fun3d_14_interface.py name to Fun3d14Interface

* update fun3d 14 interface unittests

* update fun3d model

* black reformat

* update fun3d 14.0 thermal changes

* update fun3d 14 interface with debug statements

* new thermal fun3d test

* add new fun3d thermal interface test

* fun3d 14 thermal interface test complete

* update the fun3d 14 thermal interface test

* update the import statements

* black reformat

* black reformat with psf/black-stable

* Apply suggestions from code review

* undo debug changes

* black reformat

* Rollback test_fun3d_tacs.py to FUN3D 13.6 test

* Update test_fun3d_tacs.py to add fun3d_project_name back in

* black reformat

---------

Co-authored-by: Brian Burke <[email protected]>

* FUN3D 14.0 Coupling Frequency for Coupled Adjoint speedup + Early Stopping Fix (#291)

* huge speedup in funtofem fully coupled adjoint solve

* turn hanim off in turbulent beta nml

* working adjoint derivatives and change adjoint_steps

* working early stopping criterion in FUN3D 14.0.2

* add error check for first aero function w early stopping

* input funtofem loose coupling frequency through the fun3d interface (no longer namelist input)

* update nml for turbulent beta

* black reformat + throw error if FUN3D 13.6 uses loose coupling frequency

* Update funtofem/interface/fun3d_interface.py

---------

Co-authored-by: Brian Burke <[email protected]>

* commit ssw 14.0 example

* egads aero mesh example

* prototype ssw finite difference test

* remove reload design file

* update cfl in namelist

* fix steps in namelist

* update panel thickness script

* add FD test for the derivatives

* fix early stopping multi analysis bug

* update ssw 14 fun3d nml

* new aero loads for ssw case

* oneway sizing opt

* updated aerodynamic function fun3d check

* black reformat

* fix any aerodynamic again

* fix any aerodynamic again

---------

Co-authored-by: Brian Burke <[email protected]>
@bburke38 bburke38 requested a review from sean-engelstad March 11, 2024 19:53
@bburke38
Copy link
Contributor Author

@sean-engelstad Can you check the merge conflicts? I think it should be using the ssw version in each case, but I would appreciate it if you could double check.

@sean-engelstad
Copy link
Contributor

I fixed the merge conflicts @bburke38

* Update ssw_meshdef to FUN3D v14

* Move ssw-14_0 to _ssw-testing

This includes some derivative testing stuff, which doesn't really need to be in the examples folder.

* Add some existing design files back to _ssw-testing

* Update 1_panel_thickness.py
@bburke38 bburke38 marked this pull request as ready for review March 12, 2024 14:14
@bburke38 bburke38 requested a review from sean-engelstad March 12, 2024 14:15
@bburke38
Copy link
Contributor Author

I updated some of the scripts in the main ssw_meshdef folder, but did not include any of the changes related to derivative testing since these are supposed to be example cases. I moved the ssw-14_0 folder to _ssw-testing to retain the testing capability for the time being.

sean-engelstad and others added 2 commits March 12, 2024 11:10
* commit ssw 14.0 example

* egads aero mesh example

* prototype ssw finite difference test

* remove reload design file

* update cfl in namelist

* fix steps in namelist

* update panel thickness script

* add FD test for the derivatives

* fix early stopping multi analysis bug

* update ssw 14 fun3d nml

* new aero loads for ssw case

* oneway sizing opt

* updated aerodynamic function fun3d check

* black reformat

* fix any aerodynamic again

* fix any aerodynamic again

* update tolerances

* merge ssw geometries

* update aero surf mesh

* update

* geomtry orig

* cruise inviscid scenario

* update inviscid mesh deform

* better grid conv settings in FUN3D

* updated grid conv tol

* adjust solver tolerances again

* update tolerances

* new function precision in pyoptsparse

* set opt tol

* update adjoint stop tol

* rename geometry in testing ssw case

* final update to _ssw_testing example

* update the ssw testing example

* cleanup ssw testing run scripts
* CFD boundaries are reordered

* Formatting

* Formatting 2

* Formatting 3

* Create _plot_sizing.py
@bburke38 bburke38 merged commit bbe4671 into master Mar 12, 2024
9 checks passed
@bburke38 bburke38 deleted the ssw branch March 12, 2024 15:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants