Skip to content

YAML parsing debug#73

Draft
kbonney wants to merge 6 commits intosandialabs:mainfrom
kbonney:yaml-read-debug
Draft

YAML parsing debug#73
kbonney wants to merge 6 commits intosandialabs:mainfrom
kbonney:yaml-read-debug

Conversation

@kbonney
Copy link
Copy Markdown
Collaborator

@kbonney kbonney commented Mar 25, 2026

Summary

The goal of this PR is to resolve bugs in the yaml_to_blade() function. Currently, there are observed differences in the total weight of blades compared to their design documents.

yaml_to_blade() changes

  • Blade length: remove np.ceil and redundant hub-radius arithmetic. Uses exact YAML span value
  • Spar cap attributes: use _lp / _hp suffixes to avoid LP overwriting HP (or vice versa)
  • Airfoil winding: replace arctan(y/x) gradient check with the shoelace signed-area formula. Avoids divide-by-zero near x = 0
  • fabricangle: replace finally: pass with except (KeyError, TypeError): cur_comp.fabricangle = 0
  • ValueErrors in _add_components: add missing raise to all four TE/LE reinforcement error sites
  • yaml.FullLoader: replace deprecated yaml.Loader
  • ispan aliasing: definition.ispan = definition.span.copy() instead of direct assignment
  • Import cleanup: remove unused from scipy.stats import mode

BOM changes

Example blade files cleanup

  • Removed duplicate files
  • Renamed files for clarity on their contents
  • Updated tests/example files with new filenames

Tests and documentation

na

Acknowledgement

By contributing to this software project, I acknowledge that I have reviewed the software quality assurance guidelines and that my contributions are submitted under the Revised BSD License.

@kbonney kbonney marked this pull request as draft March 25, 2026 17:15
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.

1 participant