-
Notifications
You must be signed in to change notification settings - Fork 56
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
Enhanced linear solver #196
Merged
Merged
Changes from all commits
Commits
Show all changes
170 commits
Select commit
Hold shift + click to select a range
3d06153
Update plotting of aeroelastic eigenvectors
ngoiz 2be7019
Select individual target systems + save in h5 format
ngoiz 142b54c
Plot real part
ngoiz fe57631
Improve reduced frequency scaling factors
ngoiz 229d803
Basic structural vector to time step object
ngoiz d43bba3
Initial test file
ngoiz 032daaa
Future feature idea commented in
ngoiz 39f44aa
Initial improvement to linear gust generators
ngoiz db7e5fd
Major overhaul to linear variables tracking (UVLM side)
ngoiz b1b9f99
Implement updated variable tracker on the linearised beam
ngoiz 4249895
Include __repr__ method detailing SS + update series coupling
ngoiz 473c5c9
Implement variable tracking on leading edge gust
ngoiz c657272
Small test for gust assembly
ngoiz 4a198a1
Add append method to variable tracker
ngoiz 60b907d
Add apply() method to control surface generator
ngoiz b4988d8
Make variable tracker an attribute of the state-space object
ngoiz 00268ef
Change variable name + fix remove_input() method
ngoiz 229ed09
Create separate Input, Output and State variables
ngoiz e6dd883
Add variable tracker to Gain() objects
ngoiz 2fc0841
Variable tracker added to LinearBeam.ss
ngoiz 0684045
Fix input arguments for Gain()
ngoiz 1b33601
Apply Gain() up to ROM in LinearAeroelastic
ngoiz 53dc7d3
Add variable trackers to ROMs
ngoiz e0b0e54
Move statespace and variables tests to dedicated file
ngoiz d148971
Change cout for Exception
ngoiz 018166c
Add variable tracker to couple method
ngoiz 0ca89f1
Reformat libss
ngoiz 03f948f
Very simple test to check linearisation of full aircraft
ngoiz bc32c8a
Fixes variable merge issue
ngoiz 0198daf
Force vs angle stability derivatives implemented
ngoiz 2630488
Update test with nonlinear data
ngoiz faf4419
Add body derivatives and option to do flex and rigid
ngoiz a4be059
Merge remote-tracking branch 'origin/develop' into dev_lin_gust
ngoiz 3ecc08b
Body axes forces from angles
ngoiz 80acab8
Improve test data handling
ngoiz f988a05
Implement subtests and clean up postproc
ngoiz 1df3c85
New data management for stability derivatives and mod to print utils
ngoiz 4a3b688
Update docs
ngoiz 29d397a
Improve test case for aerodynamic and aeroelastic cases
ngoiz ec09ad5
Merge remote-tracking branch 'origin/dev_lin_gust' into dev_lin_gust
ngoiz cdcc5ef
Rename modal setting for ppal axes and reformat modal utils
ngoiz 8eae277
Support for systems with modes defined about ppal axes
ngoiz 40fc2fd
Remove forgotten pdb
ngoiz 35b63a7
Add control surface derivatives (body axes)
ngoiz 410c2a0
Remove try except
ngoiz 4f1abe0
Move Derivatives to own class
ngoiz 31d7aed
Fix bug: modal system flag was not changing
ngoiz dd5533a
Support nodal systems
ngoiz cb122b9
Fix save methods and test
ngoiz 9c71db2
Fix incorrect test directory
ngoiz 05b7e46
Fix bug assembling state variables
ngoiz 5f7d8c7
Update stability derivatives output
ngoiz 19b4b80
Temporary New setting to remove rigid states
ngoiz 4b9e418
Move methods from DerivativeSet to Derivatives
ngoiz 2452778
Angle derivatives via track body
ngoiz ab183d8
Compute derivatives via track body
ngoiz 1a0fac7
Option to assemble aeroelastic system in continuous time
ngoiz 72785d1
Convert system to CT with enhanced SS variables
ngoiz 1b25a73
Compute the total aerodynamic moments at the A frame of reference
ngoiz 9fd1dd8
Support update of continuous time scaled aeroelastic systems
ngoiz 7884b4f
Minor spelling and format changes
ngoiz 9e892f3
Enhanced LinDynamicSim solver and supporting functions
ngoiz c8256e7
LinearGust assembler with convection for arbitrary geometries
ngoiz ccd0e26
Improve linear aerodynamic vector unpacking
ngoiz dd1f009
Fix simulation time steps
ngoiz b01f78d
Create Gust classes and Gust settings through LinearUvlm
ngoiz 59c13e6
Major refactor: rename libss.ss to libss.StateSpace
ngoiz 4e160f1
Remove commented code and add interpolation documentation
ngoiz 64de922
Change ss to StateSpace
ngoiz b7b85f5
Merge branch 'rfc_ss' into dev_remove_istates
ngoiz a6aa236
Move Campbell test to tests directory
ngoiz d6280fb
Move tests to new directory
ngoiz 35620be
Add variables to random state space generation
ngoiz e30362d
Remove debug output
ngoiz edb06a6
Fix output channel removal
ngoiz 15a3805
Introduce test for all moving control surfaces (linear)
ngoiz 754d507
fix trailing delimiter writevariablestime
ArturoMS13 494f4a6
Remove predictor term of linear gust systems + relevant test
ngoiz 8c0eae9
Test Aeroelastic stability derivatives
ngoiz eb3b291
Fix bug when saving continuous time statespace
ngoiz ef45c9c
Linear post-processing fixes for systems with predictor term removed
ngoiz 07aff63
Test step gust response linear vs nonlinear and postprocesses
ngoiz 79185af
Save settings dictionary to config file
ngoiz 82c657d
Fix dimension mismatch in post-processing
ngoiz 74556d6
Fix (again) dimension mismatch
ngoiz 9a4828d
dot() method for two Gains added
ngoiz 7e9eff2
Use libsp for multiplication of sparse matrices
ngoiz 7822a2c
Minor update to postproc and use xbeamlib method on individual time step
ngoiz c5bab6f
fix: Issue with variables not being copied but referenced when merging
ngoiz 54f907c
Recover structural accelerations and improved unpacking vector
ngoiz a2e5da4
Improved transformation to nodal space when accelerations present as out
ngoiz c57e9de
Fix unpacking order
ngoiz 3e8fd69
Merge branch 'dev_cfl_linearuvlm' into mrg_cfl1_lin
ngoiz f8000da
Remove .value (no_ctype is now True by default)
ngoiz 37156a6
Update libss.ss to libss.StateSpace
ngoiz b60c577
Add an execution test for the linear state space
ngoiz c83c641
Merge branch 'mrg_cfl1_lin' into dev_remove_istates
ngoiz aa5a962
Unify SHARPy output folder initial work
ngoiz 32672b5
Get output folder from data object
ngoiz e464696
Fix statespace series connection test
ngoiz 3bd9545
Merge branch 'develop' into dev_folder
ngoiz b33c4f6
Merge branch 'dev_folder' into dev_remove_istates
ngoiz dedab60
Update output folder location
ngoiz 3a53daf
Util to find aero solver and velocity generator settings
ngoiz 1010003
Move aero solver finder to separate util
ngoiz 0dc4d4e
Merge branch 'dev_minor' into dev_remove_istates
ngoiz 17bf278
Fix aero_utils import call
ngoiz 06d1339
Initial work on rotated free stream velocity vector
ngoiz a5180e9
Linear UVLM connect in/outs for later recovery
ngoiz 86c34e0
Fix error and add little comment
ngoiz 66dd383
Support enhanced StateSpace in retain_inout_channels() and project()
ngoiz 28183fb
Merge branch 'develop' into dev_remove_istates
ngoiz 2215c52
Update output folder
ngoiz 8f17961
Minor setting description change
ngoiz b65932a
Merge airfoil polars
ngoiz 6db9999
Correct UVLM version
ngoiz 6fedfb8
Fix output location
ngoiz 1ac1780
Print CG and ppal axes with stability derivatives
ngoiz a520d12
Merge remote-tracking branch 'origin/develop' into dev_remove_istates
ArturoMS13 384245a
remove keep_linear_matrices
ArturoMS13 b3d184a
rigid_modes_cg
ArturoMS13 1584727
fix folder input
ArturoMS13 0be7dea
fix save_data modal setting
ArturoMS13 3811e42
fix folder and generator settings
ArturoMS13 45a5053
fix keep_linear_matrices
ArturoMS13 5718fc0
remove deprecated stepuvlm settings
ArturoMS13 a53fe2d
Update settings in tests
ngoiz 78eb5f8
Merge remote-tracking branch 'origin/rc-1.3' into dev_linear_loads
ngoiz 7c5df44
Update tests
ngoiz 5f7457e
fix [savedata]: correct name of ss_block class from libss
sduess ed57a5a
Fix test case
ngoiz 999d5b7
Support load/save statespace and gains to h5 file
ngoiz c96ad78
Add method to copy Gain()
ngoiz a1625af
Fix bug when saving projectors and W was None
ngoiz 39a5f69
Fix Gain savings in Krylov
ngoiz a737196
Fix loading default for a list(complex) setting type
ngoiz 138f37a
Add doc to SaveParametricCase and use new features in test
ngoiz 406fc19
Support loading/saving state-spaces and gains to h5 files
ngoiz 4c75a34
Merge remote-tracking branch 'origin/develop' into dev_linear
ngoiz 8fdbbf7
Support projection onto free-stream and doc updates
ngoiz a0b087e
Fixes #192 - control surface deflection in linear model
ngoiz 6e0d43f
Fix DeprecationWarning message
ngoiz 5b7d18c
Minor doc changes
ngoiz 1ef313b
Remove unused code
ngoiz 18e45d9
Merge remote-tracking branch 'origin/develop' into dev_linear
ngoiz 058b6f0
Fix path to cases
ngoiz 99ed3e9
Fix tests directories
ngoiz 6c5f2d6
Add verbose for gust test
ngoiz f652692
Remove unused code and add documentation
ngoiz 8d17103
Remove commented code
ngoiz 45c2a68
Fix broken paths
ngoiz c8315ce
Update doc generation
ngoiz df29e8c
Fix missing u_infty causing errors in gust convection
ngoiz 45366a9
Merge branch 'dev_linear' into dev_asym_stab
ngoiz 43309fd
Fix return value and add further checks to test
ngoiz 6414831
Trigger test on change of submodules
ngoiz e3e7ef0
Trigger tests on change to tests
ngoiz 56f4310
Update submodules to correct version
ngoiz cee8673
Dummy test to avoid path filtering issues in PRs
ngoiz 861c493
Fix tests path
ngoiz 0b822c3
Merge pull request #103 from ImperialCollegeLondon/dev_asym_stab
ngoiz 7f557d4
Fix EOF error
ngoiz 1b16eeb
Merge remote-tracking branch 'origin/develop' into dev_linear
ngoiz 488a9d6
Describe variables in the beam state space
ngoiz 675400b
Get free-stream velocity from solver info
ngoiz 6b282b7
Fix the ways properties are handles (removes setters)
ngoiz fd4f44d
Fix docstring with new directory
ngoiz 614f153
Remove left-behind use of setters
ngoiz 6d0f6d3
Minor formatting change
ngoiz 16cd95b
Fix missing .aero
ngoiz File filter
Filter by extension
Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
name: Python package | ||
|
||
on: | ||
pull_request: | ||
branches: | ||
- master | ||
- develop | ||
- 'rc*' | ||
paths-ignore: | ||
- '*.py' | ||
- 'lib/**' | ||
- '.github/workflows/**' | ||
|
||
jobs: | ||
build: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- run: 'echo "No changes to python files, submodules or workflows, no run required" ' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -4,6 +4,8 @@ on: | |
push: | ||
paths: | ||
- '*.py' | ||
- 'lib/*' | ||
- '.github/workflows/*' | ||
pull_request: | ||
branches: | ||
- master | ||
|
5 changes: 5 additions & 0 deletions
5
docs/source/includes/linear/assembler/lineargustassembler/LeadingEdge.rst
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
LeadingEdge | ||
----------- | ||
|
||
.. autoclass:: sharpy.linear.assembler.lineargustassembler.LeadingEdge | ||
:members: |
5 changes: 0 additions & 5 deletions
5
docs/source/includes/linear/assembler/lineargustassembler/LinearGustGenerator.rst
This file was deleted.
Oops, something went wrong.
5 changes: 5 additions & 0 deletions
5
docs/source/includes/linear/assembler/lineargustassembler/MultiLeadingEdge.rst
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
MultiLeadingEdge | ||
---------------- | ||
|
||
.. autoclass:: sharpy.linear.assembler.lineargustassembler.MultiLeadingEdge | ||
:members: |
4 changes: 4 additions & 0 deletions
4
docs/source/includes/linear/assembler/lineargustassembler/campbell.rst
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
campbell | ||
-------- | ||
|
||
.. automodule:: sharpy.linear.assembler.lineargustassembler.campbell |
4 changes: 4 additions & 0 deletions
4
docs/source/includes/linear/assembler/lineargustassembler/gust_from_string.rst
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
gust_from_string | ||
---------------- | ||
|
||
.. automodule:: sharpy.linear.assembler.lineargustassembler.gust_from_string |
6 changes: 5 additions & 1 deletion
6
docs/source/includes/linear/assembler/lineargustassembler/index.rst
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,8 @@ | ||
.. toctree:: | ||
:glob: | ||
|
||
./LinearGustGenerator | ||
./LeadingEdge | ||
./MultiLeadingEdge | ||
./campbell | ||
./gust_from_string | ||
./spanwise_interpolation |
4 changes: 4 additions & 0 deletions
4
...source/includes/linear/assembler/lineargustassembler/spanwise_interpolation.rst
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
spanwise_interpolation | ||
---------------------- | ||
|
||
.. automodule:: sharpy.linear.assembler.lineargustassembler.spanwise_interpolation |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
StateSpace | ||
---------- | ||
|
||
.. autoclass:: sharpy.linear.src.libss.StateSpace | ||
:members: |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
4 changes: 4 additions & 0 deletions
4
docs/source/includes/linear/src/libss/retain_inout_channels.rst
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
retain_inout_channels | ||
--------------------- | ||
|
||
.. automodule:: sharpy.linear.src.libss.retain_inout_channels |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
StabilityDerivatives | ||
-------------------- | ||
|
||
|
||
|
||
.. autoclass:: sharpy.postproc.stabilityderivatives.StabilityDerivatives | ||
:members: |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
4 changes: 4 additions & 0 deletions
4
docs/source/includes/structure/utils/modalutils/modes_to_cg_ref.rst
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
modes_to_cg_ref | ||
--------------- | ||
|
||
.. automodule:: sharpy.structure.utils.modalutils.modes_to_cg_ref |
4 changes: 4 additions & 0 deletions
4
docs/source/includes/structure/utils/modalutils/principal_axes_inertia.rst
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
principal_axes_inertia | ||
---------------------- | ||
|
||
.. automodule:: sharpy.structure.utils.modalutils.principal_axes_inertia |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is amendable for a general solution:
solver_interface.dictionary_of_solvers -> to give you the solvers or even solver_interface.solver_from_string(solver) such that looping over the solvers in flow you can directly get the classification:
if solver_i.solver_classification == 'Aero':
... (same structure as in the code)
elif solver_i.solver_classification == 'Coupled:
...
Worthy? Only if more solvers are to be added in the equilibrium solution. But it shows off the nice possibilities of the solvers class!!