Операция eigen::vector3d или eigen::matrix3d, приводящая к случайному результату nan или -nanC++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 Операция eigen::vector3d или eigen::matrix3d, приводящая к случайному результату nan или -nan

Сообщение Anonymous »

Я получаю случайное значение -nan или nan после выполнения матричного умножения. Я использую DCM для поворота координат, скорости и ускорения, а результат сохраняется в файлах HarmonizeCoordinates, HarmonizeVelocity и HarmonizeAceleration соответственно.

Я получаю случайное значение -nan< /code> или nan после умножения DCM. Любой из этих векторов приводит к результату nan, и он совершенно случайен и совершенно непредсказуем.

Во время одного события выполнения они составляют около 6000-10000 итераций, где DCM применяется 2 раза за итерацию, и в среднем я получаю 6-8 нан< /код> вывод. Я также заметил, что из 10 событий выполнения я сталкиваюсь с этой проблемой nan с 4-6 событиями.

Язык: C++17

Операционная система: vxWorks 7

Библиотека: Eigen 3.4.0

ЦП: Intel i7 11-го поколения

Флаги включения CMake AVX2

Код: Выделить всё

SET(CLANG_AVX_FLAGS    "-O3 -march=native -mprefer-vector-width=256 -ffast-math")
set(CMAKE_CXX_FLAGS "${CLANG_AVX_FLAGS} -Wall -pedantic -g")
set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DEIGEN_NO_DEBUG")
Результат:

Код: Выделить всё

DCM :
0.707107    -0.707107   0
0.707107    0.707107    0
0           0           1

Coordinate:
-nan
-nan
-nan

Velocity
-83.3332
-83.3332
-83.3333

Acceleration
0
0
0
Код:

Код: Выделить всё

#include "Eigen/Dense"
#include 

Eigen::Vector3d harmonizeCoordinates, harmonizeVelocity, harmonizeAcceleration;
Eigen::Vector3d coordinates, velocity, accceleration;

coordinates 

Подробнее здесь: [url]https://stackoverflow.com/questions/79339015/eigenvector3d-or-eigenmatrix3d-operation-resulting-nan-or-nan-randomly[/url]
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Операция eigen::vector3d или eigen::matrix3d, приводящая к случайному результату nan или -nan
    Anonymous » » в форуме C++
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous
  • Построение Eigen Matrix3d ​​из двойного 2D-массива
    Anonymous » » в форуме C++
    0 Ответы
    5 Просмотры
    Последнее сообщение Anonymous
  • Построение Eigen Matrix3d ​​из двойного 2D-массива
    Anonymous » » в форуме C++
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous
  • Как получить доступ к случайному значению порта vert.x в Quarkus?
    Anonymous » » в форуме JAVA
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous
  • Отправленный номер не регистрируется по случайному числу?
    Anonymous » » в форуме Python
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C++»