Data Structures | Macros | Typedefs | Functions
math.h File Reference
#include <math.h>
#include "libraries/utilities/types/include/types.h"

Go to the source code of this file.

Data Structures

struct  _MATH_Vec2_
 Defines a two element vector. More...
 
struct  _MATH_Vec3_
 Defines a three element vector. More...
 
struct  _MATH_cplx_vec2_
 Defines a two element vector. More...
 
struct  _MATH_cplx_vec3_
 Defines a three element vector. More...
 

Macros

#define MATH_Nm_TO_lbin_SF   ((float32_t)(8.8507457913f))
 Defines conversion scale factor from N*m to lb*in. More...
 
#define MATH_TWO_OVER_THREE   ((float32_t)(0.6666666666666666666666666667f))
 Defines 2/3. More...
 
#define MATH_ONE_OVER_THREE   ((float32_t)(0.3333333333333333333333333333f))
 Defines 1/3. More...
 
#define MATH_ONE_OVER_PI   ((float32_t)(0.318309886183791f))
 Defines 1/(pi) More...
 
#define MATH_SQRT_TWO   ((float32_t)(1.414213562373095f))
 Defines sqrt(2) More...
 
#define MATH_SQRT_THREE   ((float32_t)(1.73205080756887f))
 Defines sqrt(3) More...
 
#define MATH_ONE_OVER_SQRT_THREE   ((float32_t)(0.5773502691896257645091487805f))
 Defines 1/sqrt(3) More...
 
#define MATH_ONE_OVER_FOUR_PI   ((float32_t)(0.07957747154594767f))
 Defines 1/(4*pi) More...
 
#define MATH_ONE_OVER_TWO_PI   ((float32_t) (0.1591549430918954f))
 Defines 1/(2*pi) More...
 
#define MATH_PI   ((float32_t)(3.1415926535897932384626433832f))
 Defines pi. More...
 
#define MATH_PI_PU   ((float32_t)(0.5f))
 Defines pi per unit. More...
 
#define MATH_TWO_PI   ((float32_t)(6.283185307179586f))
 Defines 2*pi. More...
 
#define MATH_TWO_PI_PU   ((float32_t)(1.0f))
 Defines 2*pi per unit. More...
 
#define MATH_FOUR_PI   ((float32_t)(12.56637061435917f))
 Defines 4*pi. More...
 
#define MATH_FOUR_PI_PU   ((float32_t)(2.0f))
 Defines 4*pi per unit. More...
 
#define MATH_PI_OVER_TWO   ((float32_t)(1.570796326794897f))
 Defines pi/2. More...
 
#define MATH_PI_OVER_TWO_PU   ((float32_t)(0.25f))
 Defines pi/2 per unit. More...
 
#define MATH_PI_OVER_THREE   ((float32_t)(1.047197551196598f))
 Defines pi/3. More...
 
#define MATH_PI_OVER_FOUR   ((float32_t)(0.785398163397448f))
 Defines pi/4. More...
 
#define MATH_PI_OVER_FOUR_PU   ((float32_t)(0.125f))
 Defines pi/4 per unit. More...
 
#define MATH_SIX_PI   ((float32_t)(18.8495559215f))
 Defines 6*pi. More...
 
#define MATH_SQRTTHREE_OVER_TWO   ((float32_t)(0.8660254038f))
 Defines sqrt(3)/2. More...
 

Typedefs

typedef struct _MATH_Vec2_ MATH_Vec2
 Defines a two element vector. More...
 
typedef MATH_Vec2 MATH_vec2
 
typedef struct _MATH_Vec3_ MATH_Vec3
 Defines a three element vector. More...
 
typedef MATH_Vec3 MATH_vec3
 
typedef struct _MATH_cplx_vec2_ MATH_cplx_vec2
 Defines a two element vector. More...
 
typedef struct _MATH_cplx_vec3_ MATH_cplx_vec3
 Defines a three element vector. More...
 

Functions

static float32_t MATH_abs (const float32_t in)
 Finds the absolute value. More...
 
static float32_t MATH_max (const float32_t in1, const float32_t in2)
 Finds the maximum value between the twp input values. More...
 
static float32_t MATH_min (const float32_t in1, const float32_t in2)
 Finds the minimum value between the twp input values. More...
 
static float32_t MATH_incrAngle (const float32_t angle_rad, const float32_t angleDelta_rad)
 Increments an angle value and handles wrap-around. More...
 
static float32_t MATH_sat (const float32_t in, const float32_t max, const float32_t min)
 Saturates the input value between the minimum and maximum values. More...
 
static float32_t cAbsSq (const cplx_float_t *x1)
 Finds the absolute value. More...
 
static float32_t MATH_sign (const float32_t in)
 
static void MATH_mult_cc (cplx_float_t *x1, cplx_float_t *x2, cplx_float_t *y)
 
static void MATH_add_cc (cplx_float_t *x1, cplx_float_t *x2, cplx_float_t *y)
 
static void MATH_sub_cc (cplx_float_t *x1, cplx_float_t *x2, cplx_float_t *y)
 
static void MATH_mult_rc (float32_t x1, cplx_float_t *x2, cplx_float_t *y)
 
static void MATH_add_rc (float32_t x1, cplx_float_t *x2, cplx_float_t *y)
 
static void MATH_sub_rc (float32_t x1, cplx_float_t *x2, cplx_float_t *y)
 
static void MATH_sub_cr (cplx_float_t *x1, float32_t x2, cplx_float_t *y)
 

Copyright 2023, Texas Instruments Incorporated