coincidence

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

Описание

пример

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 и bin 12 для второго PRF. Предположение, что каждый интервал области значений 50 meters, вычислите целевую область значений из этих двух измерений. Предположим, что самая дальняя цель может быть 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++ с помощью Coder™ MATLAB ®

.

См. также

|

Введенный в R2021a