===== Adjunct Rotation ===== Adjunct rotation is accumulated (integrated) infinitesimal rotation along the real path of the movement. The expression child element defines the start values. It must be of type Tuple3d. This can be reached by using the function "vec(a,b,c)". If phase definitions are used to with start values and if two phases are continous a NaN value is inserted for the end position index of the first phase. This leads to non continouus values needed in the plot UI component. ==== Configuration ==== ^ Attribute ^ Description ^ Default ^ Required ^ ^ basisCoordinateSystem | | | Yes | ^ movingCoordinateSystem | | | Yes | ^ rotationSign | Infinitesimal angles are added if set to "+" else "-" subtracted.| + | No | ^ avoidZeroCrossing | If this flag is set to "true" in a postprocessing phase the minimum of the phases is determined and subtracted from each value of a phase. This avoid zero crossing. It works only, if the rotationSign is choosen in an appropriate manner. If an offset value is set via elements expression, avoid zero crossing is applied after accounting for that offset. That´s why the offset value plays no rule any more if the attribute avoidZeroCrossing is used. | false | No | ^ threshold | Values smaller than the threshold are set to NaN. This is useful, if a ratio from adjunct rotation angles is calculated, e.g. the adjunct SHR ratio. | 2.2204E-16 | No | ^ diffMethod or the deprecated name method | The determination of the needed derivatives can be made based on different equations: based on "cardanangles", "poissonquaternion" or "poissionmatrix". The first two methods are experimental and have issues. The last is based on [~omega] = [~M.(t)]*transpose([M(t)]) and works fine. | poissonmatrix | No | ^ eventType | If no phase defined and found and also no event found, the integration starts with the first found frame. | GG | No | ^ phaseType | If this attribute is set to the phase type name, the integration starts with beginning of each phase and ends with the end of each phase. | | No | ^ rotationOrder | xyz or xyx ... used for method==cardan, | xyz | No | ^ unit | "deg" or "rad" | deg | No | ==== Created trajectories and parameters ==== ^ Name ^ Type ^ Description ^ Timeserie ^ | | Matrix3d | Rotation matrix | Yes | | Angles | Vector3d | Adjunct rotation angles, rotations around all three axes (integrated) in the moving system | Yes | | RotMatrix | Vector3d | Trajektory with angluar velocities in the moving system, e.g. "dRShoulderAdjunctRotationRotMatrix" | Yes | | Q | Quarternion3D | Created only, if method="poissonquaternion". | Yes | | StartValue | Vector3d | Start values | No | ==== Example ==== vec(0,RShoulderIroAroHDCalAngle,0) ==== Note ==== If the default method, based on the poisson equation is used, the adjunct rotation angles are available after postprocessing only. That´s why the values are not available in the step by step processing!