exponenta event banner

совпадение

Алгоритм совпадения

Описание

пример

x = coincidence(res,div,maxval) возвращает скаляр x меньше или равно maxval и соответствует каждому остатку в res для соответствующего делителя в div. x удовлетворяет

mod (мод.x,div) = res.

Другими словами, деление x по каждому элементу div оставляет в качестве остатка соответствующий элемент res.

x = coincidence(res,div,maxval,tol) также задает допуск. На практике может не быть значения, удовлетворяющего всем ограничениям в res и div точно. В этом случае coincidence определяет набор кандидатов, которые приблизительно удовлетворяют ограничениям и находятся в интервале шириной 2 × tol центрировано на медиане кандидатов. Затем функция возвращает медиану как x.

Примеры

свернуть все

Найти число меньше, чем 1000 которая имеет остаток 2 при делении на 9, остаток 3 при делении на 10.4, и оставшаяся часть 6.3 при делении на 11.

Нет числа, которое бы точно удовлетворяло ограничениям, поэтому задайте допуск 1. coincidence определяет набор чисел, которые приблизительно удовлетворяют ограничениям и находятся в пределах 2 × tol = 2 от их медианы. Затем функция выводит медиану.

tol = 1;

x = coincidence([2 3 6.3],[9 10.4 11],1000,tol)
x = 127.8000

Увеличить допуск до 2.

tol = 2;

x = coincidence([2 3 6.3],[9 10.4 11],1000,tol)
x = 74

Задание допуска 3.3. Любой допуск, превышающий это значение, дает тот же ответ.

tol = 3.3;

x = coincidence([2 3 6.3],[9 10.4 11],1000,tol)
x = 3

В радиолокационной системе с частотой следования импульсов в шахматном порядке (PRF) первый PRF соответствует 70 ячейки диапазона, и второй PRF соответствует 85 дальнобойные бункеры. Цель обнаружена в ячейке 47 для первого PRF и ячейки 12 для второго PRF. Предполагается, что каждая ячейка диапазона 50 метров, вычислить целевой диапазон из этих двух измерений. Предположим, что самая дальняя цель может быть 50 в км от него.

idx = coincidence([47 12],[70 85],50e3/50);
r = 50*idx
r = 30350

Входные аргументы

свернуть все

Массив остатка, заданный как вектор строки неотрицательных чисел. res должно иметь то же количество элементов, что и div.

Типы данных: single | double

Массив делителей, заданный как вектор строки положительных целых чисел. div должно иметь то же количество элементов, что и res.

Типы данных: single | double

Верхняя граница, заданная как положительный скаляр.

Типы данных: single | double

Допуск, заданный как неотрицательный скаляр.

Типы данных: single | double

Выходные аргументы

свернуть все

Конгруэнтное значение, возвращаемое как скаляр.

Расширенные возможности

Создание кода C/C + +
Создайте код C и C++ с помощью MATLAB ® Coder™

.

См. также

|

Представлен в R2021a