constveljac

Jacobian for constant-velocity motion

Description

example

jacobian = constveljac(state) returns the updated Jacobian , jacobian, for a constant-velocity Kalman filter motion model for a step time of one second. The state argument specifies the current state of the filter.

example

jacobian = constveljac(state,dt) specifies the time step, dt.

Examples

collapse all

Compute the state Jacobian for a two-dimensional constant-velocity motion model for a one second update time.

state = [1,1,2,1].';
jacobian = constveljac(state)
jacobian = 4×4

     1     1     0     0
     0     1     0     0
     0     0     1     1
     0     0     0     1

Compute the state Jacobian for a two-dimensional constant-velocity motion model for a half-second update time.

state = [1;1;2;1];

Compute the state update Jacobian for 0.5 second.

jacobian = constveljac(state,0.5)
jacobian = 4×4

    1.0000    0.5000         0         0
         0    1.0000         0         0
         0         0    1.0000    0.5000
         0         0         0    1.0000

Input Arguments

collapse all

Kalman filter state vector for constant-velocity motion, specified as a real-valued 2N-element column vector where N is the number of spatial degrees of freedom of motion. For each spatial degree of motion, the state vector takes the form shown in this table.

Spatial DimensionsState Vector Structure
1-D[x;vx]
2-D[x;vx;y;vy]
3-D[x;vx;y;vy;z;vz]

For example, x represents the x-coordinate and vx represents the velocity in the x-direction. If the motion model is 1-D, values along the y and z axes are assumed to be zero. If the motion model is 2-D, values along the z axis are assumed to be zero. Position coordinates are in meters and velocity coordinates are in meters/sec.

Example: [5;.1;0;-.2;-3;.05]

Data Types: single | double

Time step interval of filter, specified as a positive scalar. Time units are in seconds.

Example: 0.5

Data Types: single | double

Output Arguments

collapse all

Constant-velocity motion Jacobian, returned as a real-valued 2N-by-2N matrix. N is the number of spatial degrees of motion.

Algorithms

For a two-dimensional constant-velocity motion, the Jacobian matrix for a time step, T, is block diagonal:

[1T000100001T0001]

The block for each spatial dimension has this form:

[1T01]

For each additional spatial dimension, add an identical block.

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.

Introduced in R2018b