Functions  
static __INLINE void  arm_clarke_f32 (float32_t Ia, float32_t Ib, float32_t *pIalpha, float32_t *pIbeta) 
Floatingpoint Clarke transform. More...  
static __INLINE void  arm_clarke_q31 (q31_t Ia, q31_t Ib, q31_t *pIalpha, q31_t *pIbeta) 
Clarke transform for Q31 version. More...  
Forward Clarke transform converts the instantaneous stator phases into a twocoordinate time invariant vector. Generally the Clarke transform uses threephase currents Ia, Ib and Ic
to calculate currents in the twophase orthogonal stator axis Ialpha
and Ibeta
. When Ialpha
is superposed with Ia
as shown in the figure below
and Ia + Ib + Ic = 0
, in this condition Ialpha
and Ibeta
can be calculated using only Ia
and Ib
.
The function operates on a single sample of data and each call to the function returns the processed output. The library provides separate functions for Q31 and floatingpoint data types.
Ia
and Ib
are the instantaneous stator phases and pIalpha
and pIbeta
are the two coordinates of time invariant vector.

static 
Floatingpoint Clarke transform.
[in]  Ia  input threephase coordinate a 
[in]  Ib  input threephase coordinate b 
[out]  *pIalpha  points to output twophase orthogonal vector axis alpha 
[out]  *pIbeta  points to output twophase orthogonal vector axis beta 
Definition at line 5290 of file arm_math.h.
Clarke transform for Q31 version.
[in]  Ia  input threephase coordinate a 
[in]  Ib  input threephase coordinate b 
[out]  *pIalpha  points to output twophase orthogonal vector axis alpha 
[out]  *pIbeta  points to output twophase orthogonal vector axis beta 
Scaling and Overflow Behavior:
Definition at line 5320 of file arm_math.h.