ENH: sixDoF: add max/min angle constraints to the axis constraint
Summary
The axis
constraint imposes an orientation limitation where bodies
are restricted to rotate only around a fixed axis.
The set of commits optionally introduces the inclusion of maximum and
minimum rotation angle constraints to the axis
constraint.
Details
The following plot shows the rotation angle of the body modelled in "test-case.zip" with respect to the reference orientation. The inflow changes at t=2[s] and =4.5[s] to move the body in the opposite directions:
- Between t=0-2[s], the flow rotates the body in the clockwise direction. However, the body is limited by 0.15[rad] clockwise rotation wrt the ref orientation.
- Note that the ref orientation is at +0.25[rad] at t=0[s].
- Between t=2-4.5[s], the flow rotates the body in the counterclockwise direction. The body is limited to 0.05[rad] counterclockwise rotation wrt the ref orientation.
- Note that the body wants to rotate in the clockwise direction for sometime due to (I assume) some wake physics (or I need to reping the body to another point) between 3.5-4.5[s].
- Between t=4.5-8.5[s], the flow rotates the body in the clockwise direction, but this time, the rotation is limited to -0.1[rad] clockwise rotation.
Risks
- No change in existing input/output.
Metadata
-
linux64ClangDPInt32Opt (clang13) -
linux64GccDPInt32Opt -
linux64GccSPDPInt64Debug -
Alltest: No new error/No change in existing output -
Test case: test-case.zip