Skip to content

Releases: ImperialCollegeLondon/sharpy

SHARPy Version 2.3

10 May 13:56
e089c4f
Compare
Choose a tag to compare

We are pleased to announce the release of SHARPy version 2.3!

  • Included pip install functionality, no longer requiring a conda environment. See here for updated installation instructions.
  • Improvements to the newark_ss function, credit to @bbahiam.

As ever, plenty of bug fixes are included. Please use the discussion board if you have any issues/questions using SHARPy.

What's Changed

2.3 (2024-05-10)

Full Changelog

Implemented enhancements:

Fixed bugs:

Closed issues:

  • Scipy 1.12.0 Incompatible #276
  • BeamLoader postprocessor squishing answers #270
  • Solving Environment gets killed. #268
  • Error when running sharpy unittest: module scipy.sparse._sputils not found #227
  • Potential bug in /sharpy/structure/utils/modalutils.py #208

Merged pull requests:

SHARPy version 2.2

18 Oct 15:52
39c4a57
Compare
Choose a tag to compare

We are pleased to announce the release of SHARPy version 2.2!

✈️ Fuselage Model with source panel method, documentation in the UVLM, as well as a new tutorial for external controller with SHARPy as a hardware-in-the-loop system via UDP, with details below...

In SHARPy 2.2 we have unified the conda environment used - it's been tested across Windows, Linux and MacOS (including Apple Silicon), and also within the Docker distribution.

❓As always, please use the discussion board if you have any issues/questions using SHARPy.

What's Changed

2.2 (2023-10-18)

Full Changelog

Implemented enhancements:

  • Added environment for Apple Silicon (ARM64) #254 (ben-l-p)
  • New Fuselage Model plus Minor Improvements #249 (sduess)

Fixed bugs:

  • fix polars concatenation in assembly of aeroinformation - develop #253 (kccwing)
  • fix polars concatenation in assembly of aeroinformation - main #252 (kccwing)
  • Minor bug fixes in aero util functions and save data postprocessor #247 (sduess)

Closed issues:

  • Automated tests failed : UnicodeEncodeError: 'ascii' codec can't encode character '\xe9' in position 47: ordinal not in range(128) #245
  • Wrong key in settings for /cases/templates/flying_wings.py #205

Merged pull requests:

New Contributors

SHARPy version 2.1

31 May 05:13
Compare
Choose a tag to compare

We are pleased to announce the release of SHARPy version 2.1!

✈️ Exciting new features across the aerodynamic and structural solvers, Python 3.10, Docker versions, and various fixes, with details below...

In SHARPy 2.1 we have upgraded Python version to 3.10 - with that comes a new simplified set of required packages in environment_new.yml which will be the recommended environment file from now on.

❓As always, please use the discussion board if you have any issues/questions using SHARPy.

What's Changed

2.1 (2023-05-31)

Full Changelog

Implemented enhancements:

  • SHARPy Docker now releases to GitHub Packages #218 (ngoiz)
  • Some Enhancements and Fixes for the Polar Correction, Wake Discretisation, and Gust Velocity Field Generator #217 (sduess)
  • Collective blade pitch PID control of wind turbines #176 (ArturoMS13)

Fixed bugs:

  • Handle absolute tolerance for structural convergence tests as input settings and increase default value #221 (sduess)
  • Fix horseshoe wake handling in UVLM #204 (sduess)

Closed issues:

  • No such file or directory during: source bin/sharpy_vars.sh #233
  • Twist direction inconsistent #212

Merged pull requests:

SHARPy version 2.0

04 Jul 11:16
Compare
Choose a tag to compare

We are pleased to announce the release of SHARPy version 2.0!

✈️ This is a major release with a varied array of new features!

In SHARPy 2.0 the installation process has been modified to use pip (#175 thanks @DavidAnderegg!) with full details on how to install the new version in the installation docs.

Aside from this major change to the installation process, enhancements to the linear solver have been introduced. Now, you'll see what each input/output/state of the linear system corresponds to and how are the channels ordered.

🐞We have squashed a few bugs, an important one relating to flap inputs and sign convention in the linear vs nonlinear implementations (see #192 and #193)

⚠️ Reminder from v1.3: Unused/deprecated settings raise an error when you run your simulation! See PR #148. This was found to be a needed feature to force users to clean up their settings, as conflicts could arise when solvers brought in new settings or dropped old ones. In addition, this means bye bye to simulations not performing as expected because of typos in the setting's name.

❓As always, please use the discussion board if you have any issues/questions using SHARPy.

What's Changed

2.0 (2022-07-04)

Full Changelog

Implemented enhancements:

Fixed bugs:

  • Flap inputs in state-space model not working in certain wing configurations #192
  • Fix mass matrix generation for lumped masses in case of several masses per node #194 (sduess)
  • Fix the sparse matrix in balancing ROM #186 (AntonioWR)

Closed issues:

  • scipy used for direct balancing method #184
  • Potential Issue in the balancing direct method #183
  • Why no pip support? #171

Merged pull requests:

  • Contain write operations within with statements #195 (ngoiz)
  • Support loading/saving state-spaces and gains to h5 files #188 (ngoiz)
  • Update installation docs #187 (nacho-carnicero)
  • Unittest for nonlinear dynamic solver #185 (sduess)
  • Change in the io-Settings to add thrust. #164 (Eriklyy)
  • UDP-Inout change for multiply cs_surface_deflections and loads/strain #162 (Eriklyy)
  • Update AsymptoticStability and FrequencyResponse post-processors #103 (ngoiz)

SHARPy v1.3

12 Nov 08:16
9e706b1
Compare
Choose a tag to compare

We are please to announce the release of SHARPy version 1.3! This version brings new features to the code that are all listed below.

✈️ Enjoy using the new functionalities!

⚠️ Word of warning! Unused/deprecated settings now raise an error when you run your simulation! See PR #148. This was found to be a needed feature to force users to clean up their settings, as conflicts could arise when solvers brought in new settings or dropped old ones. In addition, this means bye bye to simulations not performing as expected because of typos in the setting's name.

❓If you have any questions about this new release, please don't hesitate to visit the Discussion Board.

🗒️ Note: this release had been withheld since before Summer 2021 because of an issue with our previous CI test provider. Now that CI tests are working, we can release 1.3 that had been an RC for long. However, expect a new SHARPy version likely soon with many new features that have been implemented since 1.3RC was born!

⚠️ If you are updating to 1.3, you will need to update your conda environment sharpy_env

1.3 (2021-11-11)

Full Changelog

Implemented enhancements:

  • Include gravity direction as input for structural solvers #112
  • Simulation settings check - Unrecognised settings raise Error #148 (ngoiz)
  • Aerodynamic forces correction enhancements #140 (ngoiz)
  • New feature: apply external forces to the system at runtime #125 (ArturoMS13)
  • Lift distribution post-processor #121 (sduess)

Fixed bugs:

  • Fix bug in computing total moments in A frame #177 (ngoiz)

Closed issues:

  • Unrecognised model in goland test case #143

Merged pull requests:

  • Implement GitHub Actions as testing suite provider #179 (ngoiz)
  • Update submodules and conda environments #161 (sduess)
  • Support element variables in UDP output #160 (ngoiz)
  • Output directory in the location specified in settings[SHARPy][log_folder] #130 (ngoiz)
  • Update and include features in multibody #126 (ArturoMS13)
  • Update linear UVLM to account for CFL not equal to one in the wake convection #124 (ArturoMS13)
  • Minor changes #123 (ArturoMS13)

Full Changelog: v1.2.1...1.3

SHARPy v1.2.1

09 Feb 10:30
Compare
Choose a tag to compare

A minor release to consolidate v1.2. Includes a new rigid solver and some minor fixes.

As always, if you find something that does not work or have any questions, open an Issue or start a Discussion.

1.2.1 (2021-02-09)

Full Changelog

Fixed bugs:

  • Bug in beamstructure.py #117

Closed issues:

  • examples refer to non-existent solver SHWUvlm #119
  • Potential bug in xbeam and cbeam interfaces #89
  • Update packages producing deprecation warnings and tackle other warnings #80

Merged pull requests:

SHARPy Version 1.2

03 Dec 12:47
Compare
Choose a tag to compare

It has been a while! However, in this convoluted 2020 development on SHARPy hasn't ceased! This release is packed with new features and changes, in particular to how the wake is handled and assembled in the UVLM. More on that below.

We'd also like to welcome @sduess to the SHARPy development team!

These are the major enhancements to SHARPy 1.2 (check the changelog for a full list):

The major enhancement is to the UVLM thanks to @ArturoMS13's work #101. You can now use different sized panels for the wake and bound panels, which will result in much more efficient simulations (nonlinear only for the moment). This introduces a change in the settings to the AerogridLoader as now the wake is assembled within SHARPy (previously it was built in UVLM). For the current version, the new wake definition settings are optional (i.e., by default the wake will be constructed with the same panel size as the bound panels) but for future releases this will be a required setting. The settings should be fairly easy to implement as there are only two new wake generators StraightWake and HelicoidalWake; these settings are parsed into AerogridLoader.

We hope you find these new features useful for your work! If you have any questions with the new developments or find any bugs please open an issue!

SHARPy Version 1.1.1

03 Feb 15:17
Compare
Choose a tag to compare

SHARPy v1.1.1 is the latest release, consolidating v1.1 with some minor bug fixes and features.

Changelog

1.1.1 (2020-02-03)

Full Changelog

Implemented enhancements:

  • User-defined aerodynamic airfoil efficiency factor and constant force terms #59 (ngoiz)

Closed issues:

  • Broken link on SHARPy Installation Guide #67
  • Update citation instructions #62
  • Incorrect version tag displayed when running SHARPy #61
  • Clean up SHARPy linear interface with UVLM #48

Merged pull requests:

  • Documentation Improvements #66 (ngoiz)
  • Minor fixes and general code clean up of linear modules #65 (ngoiz)
  • Error log file created when program encounters exceptions #64 (ngoiz)
  • Update README.md #63 (rafapalacios)
  • Clean up linear SHARPy's interface with UVLM #60 (ngoiz)

* This Changelog was automatically generated by github_changelog_generator

SHARPy Version 1.1

12 Dec 15:52
Compare
Choose a tag to compare

SHARPy 1.1 introduces mainly changes in the software installation process and code structuring.

Most relevant changes:

  • SHARPy is now installed with CMake rather than individual compilation of libraries
  • xbeam and UVLM are now included as git-submodules, providing better tracking of the relevant versions of each library.
  • Incorporates fixes and suggestions from the JOSS review

Full Changelog for v1.1:

1.1 (2019-12-12)

Full Changelog

Implemented enhancements:

  • Improvements to Model Reduction #56 (ngoiz)
  • Submodules and cmake build tools instead of Makefiles #52 (fonsocarre)
  • New settings check against valid options #39 (ngoiz)
  • Default settings get type specified for the setting rather than their own type #34 (ngoiz)

Fixed bugs:

  • Default value not correct in documentation when it is a numpy type. #32
  • Documentation for Postprocessors being skipped by Sphinx in RTD #30

Closed issues:

  • Minor documentation issues #53
  • WindTurbine case generation script does not produce sharpy file #50
  • Considerations for building SHARPy #47
  • Installation fails on macOS with Intel compiler #46
  • run_theo_freq.py fails in Docker container #37
  • Compare to other competing software in JOSS paper #36

Merged pull requests:

  • Example wind turbine #58 (ArturoMS13)
  • Small typo in README.md and updates to it #57 (fonsocarre)
  • Restructuring of A Short Guide to SHARPy #55 (ngoiz)
  • JOSS Paper Minor typos fixed #54 (ngoiz)
  • Update .solver.txt extension to .sharpy #51 (ArturoMS13)
  • Fix typo in unittests using tearDowns instead of tearDown #49 (ngoiz)
  • Bug fixes in installation docs #45 (rafmudaf)
  • Updated installation instructions #44 (ngoiz)
  • Travis CI now uses the minimal environment, the same as the Docker build #42 (fonsocarre)
  • Remove calls to matplotlib (or wrap in try except) #41 (ngoiz)
  • Added information about competing software in JOSS paper #40 (fonsocarre)
  • Removes deprecated case files from cases folder #38 (ngoiz)
  • Change position of --name argument in docs #35 (petebachant)
  • Improvements in documentation #31 (ngoiz)

* This Changelog was automatically generated by github_changelog_generator

v1.0.1

17 Nov 17:34
6b74f17
Compare
Choose a tag to compare

A consolidated version of v1.0.0

The main change here is the ability of obtaining a Docker image with everything ready to go. Check the documentation

Make sure you update your environment! We fixed deprecation warnings from older versions, which means that depending on your environment you might have trouble!

  • New example of linearised flying wing #28 (ngoiz)
  • SHARPy can now be obtained from a Docker Hub container #27 (fonsocarre)
  • Improved modal solver #26 (fonsocarre)
  • Updated function calls for latest numpy 1.17 #25 (ngoiz)
  • Examples added to documentation #24 (fonsocarre)
  • Improved linear solver documentation and minor Krylov ROM fixes #23 (ngoiz)
  • change log generator incorporated #22 (ngoiz)