Added support for a bodies attribute to LagrangesMethod #11263
Merged
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.
LagrangesMethod now has a self.bodies attribute just like KanesMethod. Tests have also been added.
In a conversation with @moorepants I brought up that
LagrangesMethod
does not have information on the bodies of the system for which it finds the equations of motion. It was determined that the body information must therefore lie in theLagrangian
. Upon further research I determined this was only part true. TheLagrangian
does use the bodies information of the system but it turns out it is only a function not a class and only returns a sympy expression of the Lagrangian. This means that there is not attribute to access the bodies information inside ofLagrangesMethod
. I decided a minimally invasive solution to add bodies to the system was to make it an optional keyword argument upon initialization of theLagrangesMethod
instance. The attribute access was made to be identical to theKanesMethod
API.