Main Content

Esta página se ha traducido mediante traducción automática. Haga clic aquí para ver la última versión en inglés.

statecovparts

Obtener y establecer parte de la matriz de covarianza de estado en insEKF

Desde R2022a

Descripción

ejemplo

covparts = statecovparts(filter,stateName) devuelve la submatriz de covarianza correspondiente al nombre de estado especificado del filtro. La submatriz devuelta es una matriz cuadrada extraída a lo largo de la diagonal principal de la matriz de covarianza de estado completo del filtro.

ejemplo

covparts = statecovparts(filter,sensor,stateName) devuelve la submatriz de covarianza correspondiente al nombre de estado especificado del sensor.

ejemplo

statecovparts(filter,stateName,value) establece la submatriz de covarianza correspondiente al nombre de estado especificado del filtro en el valor especificado.

ejemplo

statecovparts(filter,sensor,stateName,value) establece la submatriz de covarianza correspondiente al nombre de estado especificado del sensor especificado en el valor especificado.

Ejemplos

contraer todo

Cree un objeto sensor insAccelerometer .

acc = insAccelerometer;

Construya un objeto insEKF usando los dos objetos sensores.

filter = insEKF(acc);

Vea la matriz de covarianza de estado del filtro. De forma predeterminada, la matriz de covarianza de estado es una matriz de identidad de 10 por 10.

filter.StateCovariance
ans = 10×10

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

Establezca la diagonal de la submatriz de covarianza correspondiente al acelerómetro en 3, y muestre la submatriz.

statecovparts(filter,acc,"Bias",3);  
statecovparts(filter,acc,"Bias")
ans = 3×3

     3     0     0
     0     3     0
     0     0     3

Establezca la diagonal de la submatriz de covarianza correspondiente al acelerómetro en [1 2 3], y muestre la submatriz.

statecovparts(filter,acc,"Bias",[1 2 3]);  
statecovparts(filter,acc,"Bias")
ans = 3×3

     1     0     0
     0     2     0
     0     0     3

Establezca la submatriz de covarianza correspondiente al acelerómetro en magic(3) y muestre la submatriz.

statecovparts(filter,acc,"Bias",magic(3));  
statecovparts(filter,acc,"Bias")
ans = 3×3

     8     1     6
     3     5     7
     4     9     2

Muestra la submatriz de covarianza correspondiente al acelerómetro directamente a través del filtro.

statecovparts(filter,"Accelerometer_Bias")
ans = 3×3

     8     1     6
     3     5     7
     4     9     2

Vea la matriz de covarianza del estado alterado.

filter.StateCovariance
ans = 10×10

     1     0     0     0     0     0     0     0     0     0
     0     1     0     0     0     0     0     0     0     0
     0     0     1     0     0     0     0     0     0     0
     0     0     0     1     0     0     0     0     0     0
     0     0     0     0     1     0     0     0     0     0
     0     0     0     0     0     1     0     0     0     0
     0     0     0     0     0     0     1     0     0     0
     0     0     0     0     0     0     0     8     1     6
     0     0     0     0     0     0     0     3     5     7
     0     0     0     0     0     0     0     4     9     2

Argumentos de entrada

contraer todo

Filtro INS, especificado como un objeto insEKF .

Nombre de una parte del estado del filtro o sensor, especificado como una cadena escalar o vector de caracteres.

Utilice la función de objeto stateinfo para buscar los nombres de las partes de estado en el filtro.

Ejemplo: "AngularVelocity"

Ejemplo: "Bias"

Tipos de datos: char | string

Sensor inercial, especificado como uno de estos objetos utilizados para construir el objeto de filtro insEKF :

Valor de la matriz de covarianza de la parte de estado del filtro o sensor, especificado como una de estas opciones:

  • Escalar real: los elementos diagonales de la matriz de covarianza de la parte de estado resultante son todos iguales al escalar.

  • N-elemento vector de valor real: la diagonal de la matriz de covarianza de la parte de estado resultante es igual al vector, donde N es la dimensión del estado correspondiente al stateName argumento.

  • N por N matriz de valor real: la matriz de covarianza de la parte de estado resultante es igual a la matriz, donde N es el dimensión del estado correspondiente al argumento stateName .

Tipos de datos: single | double

Argumentos de salida

contraer todo

Matriz de covarianza correspondiente al nombre del estado, devuelta como una matriz de valor real N-por- N .

Capacidades ampliadas

Generación de código C/C++
Genere código C y C++ mediante MATLAB® Coder™.

Historial de versiones

Introducido en R2022a