RcdMathLib_doc
Open Source Library for Linear and Non-linear Algebra
magnetic_based_jacobian.c File Reference

Jacobian function of DC-pulsed, magnetic localization system. More...

#include <math.h>
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include "magnetic_based_fi.h"
#include "magnetic_based_position.h"
#include "matrix.h"

Go to the source code of this file.

Functions

void magnetic_based_jacobian_get_J (uint8_t ref_point_num, matrix_t ref_point_matrix[ref_point_num][3], matrix_t point[], matrix_t J[ref_point_num][3])
 Computes the Jacobian matrix of magnetic-based localization system. More...
 
void magnetic_based_jacobian_get_JTJ (uint8_t ref_points_num, matrix_t ref_point_matrix[ref_points_num][3], matrix_t point[3], matrix_t *unused, matrix_t JTJ[3][3])
 Defines $ J_f^{T} J_{f} $ of magnetic-based localization system. More...
 
void magnetic_based_jacobian_get_JTf (uint8_t ref_points_num, matrix_t ref_points_matrix[ref_points_num][3], matrix_t point[3], matrix_t Bi_vec[ref_points_num], matrix_t JTf[3])
 Defines $ J_f^{T} \vec{f} $ of magnetic-based localization system. More...
 
void magnetic_based_jacobian_get_J_mul_s (uint8_t ref_points_num, matrix_t ref_point_matrix[ref_points_num][3], matrix_t point[3], matrix_t s[3], matrix_t J_s[ref_points_num])
 Computes $ J_f^{T} \vec{s} $ of magnetic-based localization system. More...
 

Detailed Description

Jacobian function of DC-pulsed, magnetic localization system.

Author
Zakaria Kasmi zkasm.nosp@m.i@in.nosp@m.f.fu-.nosp@m.berl.nosp@m.in.de
Naouar Guerchali

Definition in file magnetic_based_jacobian.c.

Function Documentation

◆ magnetic_based_jacobian_get_J()

void magnetic_based_jacobian_get_J ( uint8_t  ref_point_num,
matrix_t  ref_point_matrix[ref_point_num][3],
matrix_t  point[],
matrix_t  J[ref_point_num][3] 
)

Computes the Jacobian matrix of magnetic-based localization system.

Parameters
[in]ref_point_numnumber of the reference stations.
[in]ref_point_matrix[][]three-dimensional coordinates of the reference stations.
[in]point[]three-dimensional coordinates of the mobile device.
[in,out]J[][]includes the Jacobian Matrix.

Definition at line 32 of file magnetic_based_jacobian.c.

References K_T, and matrix_t.

Referenced by magnetic_based_jacobian_get_JTf(), and magnetic_based_jacobian_get_JTJ().

◆ magnetic_based_jacobian_get_J_mul_s()

void magnetic_based_jacobian_get_J_mul_s ( uint8_t  ref_points_num,
matrix_t  ref_point_matrix[ref_points_num][3],
matrix_t  point[3],
matrix_t  s[3],
matrix_t  J_s[ref_points_num] 
)

Computes $ J_f^{T} \vec{s} $ of magnetic-based localization system.

Where $ J_f $ is the Jacobian matrix. This function is a part of derivatives to minimize the sum of square errors.

Parameters
[in]ref_points_numnumber of the reference stations.
[in]ref_point_matrix[][]three-dimensional coordinates of the reference stations.
[in]point[]three-dimensional coordinates of the mobile device.
[in]s[]correction vector.
[in,out]J_s[]includes the $ J_f^{T} \vec{s} $ vector.

Definition at line 130 of file magnetic_based_jacobian.c.

References K_T, and matrix_t.

◆ magnetic_based_jacobian_get_JTf()

void magnetic_based_jacobian_get_JTf ( uint8_t  ref_points_num,
matrix_t  ref_points_matrix[ref_points_num][3],
matrix_t  point[3],
matrix_t  Bi_vec[ref_points_num],
matrix_t  JTf[3] 
)

Defines $ J_f^{T} \vec{f} $ of magnetic-based localization system.

Where $ J_f $ is the Jacobian matrix. This function is a part of derivatives to minimize the sum of square errors.

Parameters
[in]ref_points_numnumber of the reference stations.
[in]ref_points_matrix[][]three-dimensional coordinates of the reference stations.
[in]point[]three-dimensional coordinates of the mobile device.
[in]Bi_vec[]magnetic field strengths of the coils (reference stations).
[in,out]JTf[]includes the $ J_f^{T} \vec{f} $ vector.

Definition at line 112 of file magnetic_based_jacobian.c.

References magnetic_based_f_i(), magnetic_based_jacobian_get_J(), matrix_t, and matrix_trans_mul_vec().

◆ magnetic_based_jacobian_get_JTJ()

void magnetic_based_jacobian_get_JTJ ( uint8_t  ref_points_num,
matrix_t  ref_point_matrix[ref_points_num][3],
matrix_t  point[3],
matrix_t unused,
matrix_t  JTJ[3][3] 
)

Defines $ J_f^{T} J_{f} $ of magnetic-based localization system.

Where $ J_f $ is the Jacobian matrix. This function is a part of derivatives to minimize the sum of square errors.

Parameters
[in]ref_points_numnumber of the reference stations.
[in]ref_point_matrix[][]three-dimensional coordinates of the reference stations.
[in]point[]three-dimensional coordinates of the mobile device.
[in]unusedthis variable can be set to NULL. It is introduced to guarantee the compatibility with the dist_based_jacobian_get_JTJ, modified_gauss_newton, and the opt_levenberg_marquardt functions.
[in,out]JTJ[][]includes the $ J_f^{T} J_{f} $ matrix.

Definition at line 99 of file magnetic_based_jacobian.c.

References magnetic_based_jacobian_get_J(), matrix_t, and matrix_trans_mul_itself().