-
Notifications
You must be signed in to change notification settings - Fork 72
Tanks #1058
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
Tanks #1058
Conversation
…; add configuration
…ted in the CCPACSVessel class (other cases therefore cannot occur, so code use useless).
…rmation and adopt CTiglRelativelyPositionedComponent accordingly
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.
Very nicely done! This is a great addition to TiGL. Thank you very much @MarAlder for the implementation and also @sfreund-DLR for the input on the isotensoid contours.
Thank you for all implementations and optimization of the code!! |
It has been merged into the main developement branch after the latest TiGL release. It will be part of the upcoming TiGL release. If you need this functionality earlier, you would have to build TiGL yourself. If you are using Windows, you could use one of the build artifacts from our continuous integration pipelines, e.g. https://github.com/DLR-SC/tigl/actions/runs/16159391922/artifacts/3492003743 Note that the artifacts are not retained for long, but we have nightly builds, so if the link is invalid, check for pipeline artifacts here on Github under the "Actions" tab. |
|
Description
This PR adds
fuelTanks
. These tanks consist of several vessels. Each vessel can be made up of several skin layers to represent composite materials. There is usually a vacuum between the vessels. A vessel is constructed in the same way as a fuselage - in principle like a matryoshka of fuselages.Note: It is still an open CPACS discussion how to realize varying skin thicknesses of a vessel. This would also affect the
fuselage
and will therefore be a separate issue.What is new compared to
fuselage
or similar elements withparentUID
: The tank vessels are direct child elements of thefuelTank
element, and thus not referencing to this viaparentUID
. Furthermore, they should not only follow thetranslation
of thefuelTank
element, but also thescaling
androtation
. Therefore, additional constructors are added toCTiglRelativelyPositionedComponent
, along with methods to apply scaling and rotation to the transformation matrix.The added code follows the proposed clang settings.
Fixes #969.
How Has This Been Tested?
Thorough testing has been implemented for C++ and Python code:
simpletest-fuelTanks.cpacs.xml
tiglTanks.cpp
test_fuelTanks.py
The tests cover all elements of the fuelTanks added to CPACS. Perhaps the Python tests in particular go a bit beyond what would only concern the tanks, as they also test the correct export of the generated classes. If automated Python tests for the generated classes are part of future TiGL releases, this could be removed. For now, I feel a bit more comfortable as it is not always clear to me how exactly the
configuration.i
is built.Screenshots, that help to understand the changes(if applicable):
Checklist:
EDIT: This PR is just a replicate from #1057, because our CI has problems with PRs from forked repos, see #1059. Thanks @MarAlder for all the work!