Создание эффективного кода C/C + + из кода MATLAB ® иногда приводит к различиям в поведении между сгенерированным кодом и кодом MATLAB. При запуске программы проверки ошибок во время выполнения могут выявить некоторые из этих различий. Чтобы помочь определить и устранить различия перед развертыванием кода, генератор кода сообщает подмножество различий как потенциальные различия. Разность потенциалов - это разница, которая возникает во время выполнения только при определенных условиях.
Если генератор кода обнаруживает разность потенциалов, на закладке «Потенциальные различия» отчета выводится сообщение о разнице. Чтобы выделить код MATLAB, соответствующий сообщению, щелкните сообщение.
Наличие сообщения о потенциальной разнице не обязательно означает, что разница возникнет при запуске созданного кода. Чтобы определить, влияет ли потенциальная разница на приложение, выполните следующие действия.
Проанализируйте поведение кода MATLAB для диапазона данных приложения.
Протестируйте функцию MEX, созданную на основе кода MATLAB. Используйте диапазон данных, используемый приложением. Если разница возникает, функция MEX сообщает об ошибке.
Если анализ или тестирование подтвердят выявленную разницу, рассмотрите возможность изменения кода. Некоторые сообщения о потенциальных различиях предоставляют обходной путь. Дополнительные сведения о некоторых сообщениях о потенциальных различиях см. в разделе Сообщения о потенциальных различиях. Даже если изменить код для предотвращения возникновения разницы во время выполнения, генератор кода может по-прежнему сообщать о потенциальной разнице.
Набор потенциальных разностей, которые обнаруживает генератор кода, является подмножеством разностей, которые функции MEX сообщают как ошибки. Рекомендуется тестировать функцию MEX по всему диапазону данных приложения.
По умолчанию отчеты о потенциальных различиях включены для ускорения кода с помощью fiaccel. Чтобы отключить его, в объекте конфигурации ускорения кода установите ReportPotentialDifferences кому false.