Основы Windchill > Поиск в Windchill > Справка по поиску > Диапазон поиска для чисел
  
Диапазон поиска для чисел
При выполнении поиска с использованием типов значений Вещественное число и Вещественное число с единицей измерения в системе Windchill можно задать определенный диапазон для возвращаемых результатов поиска.
* 
При поиске значений с типом Вещественное число с единицей измерения диапазон вычисляется на основе базовой единицы измерения. Эта единица измерения может отличаться от отображаемой единицы измерения.
Например, мы создаем следующие детали:
Деталь
Вес
Bearing-987
8.0377
Bearing-x55
8.0383
Bearing-n7v2
8.0388
Нужно выполнить расширенный поиск деталей на основании их веса. Укажем значения критериев 8.038:
Windchill применяет к поиску диапазон с округлением. В результате поиск возвратит веса в диапазоне от 8.0375 до 8.0385:
Деталь
Вес
Возвращен?
Bearing-987
8.0377
Да
Bearing-x55
8.0383
Да
Bearing-n7v2
8.0388
Нет
Основные правила для округления диапазонов состоят в том, что диапазон включает в себя числа, которые при округлении становятся равными входному значению поиска. В приведенном выше примере 8.0388 округляется до 8.039, поэтому оно исключается из результатов поиска.
Округление
Как и в других примерах, выполняется поиск объектов, которые имеют определенное значение атрибута. При выполнении поиска вводится 1.74 в качестве критерия поиска значения атрибута.
Значение атрибута объекта
Включается в результаты?
Объяснение
1.7408
Да
1.740 округляется до 1.74.
1.73611
Да
1.736 округляется до 1.74.
1.7308
Нет
1.730 округляется до 1.73.
1.74611
Нет
1.746 округляется до 1.75.
1.73
Нет
Подходящие числа должны быть в диапазоне округления, исходя из начального значения поиска. Его границы примерно на 0.5 больше или меньше, чем младшая значащая цифра (последний символ в значении поиска).
Например, если введено 1.74, результаты будут включать все значения, которые при округлении попадают в диапазон от 1.735 до 1.745.
Если введено 1.740, результаты будут включать все значения, которые при округлении попадают в диапазон от 1.7395 до 1.7405.
Чтобы числа 1.73 и 1.74 были возвращены в одном и том же поиске, необходимо ввести 1.7 в качестве критериев поиска. В результаты этого поиска будут включены значения, которые при округлении попадают в диапазон от 1.65 до 1.75.
* 
Диапазон округления применяется только к еще одной цифре за младшей значащей цифрой входного значения поиска. Поэтому при значении поиска 1.4 объект со значением 1.3489 не будет возвращен, несмотря на то что он в конечном счете округляется до 1.4.
Данное входное значение поиска 1.4 Windchill учитывает только до второго порядка (E-2). В этом случае значение 1.3489 рассматривается как 1.34, которое округляется до значения 1.3, что не соответствует критерию. Однако если вы ищете 1.35, тогда 1.3489 округляется, исходя из значения третьего порядка (E-3), т. е. 1.348, которое округляется до 1.35, т. е. соответствует.
Способ применения диапазонов округления означает, что можно вести очень точный поиск чисел без использования большого количества цифр в критерии поиска. Например, 1.28378 округляется до следующих значений:
1.2838
1.284
1.28
1.3
Поэтому, если нужно искать объект, который имеет значение атрибута 1.28378, можно ввести любое из приведенных выше чисел.
* 
Исключением является случай, когда критерий поиска представлен целым числом. При поиске целого числа применяется предельно ограниченный диапазон. Диапазон получается добавлением к числу и вычитанием из него 5E-14.
Например, при поиске 16 будут возвращены результаты от 15.99999999999995 до 16.00000000000005.
Округление от 5
Ключевым фактором вычисления диапазонов чисел в Windchill является способ обработки числа 5. При обычном использовании числа округляются от 5 в большую сторону. Поэтому 85 округляется до 90, а 11.5 округляется до 12 и т. д.
Однако Windchill применяет следующее правило при округлении от 5: если младшая значащая цифра равна 5, округление в большую или меньшую сторону зависит от предшествующей цифры.
Если предшествующая цифра - четная, округление производится в меньшую сторону:
4.125 округляется до 4.12
4.145 округляется до 4.14
4.165 округляется до 4.16
Если предшествующая цифра - нечетная, округление производится в большую сторону:
4.115 округляется до 4.12
4.135 округляется до 4.14
4.155 округляется до 4.16
В результате при округлении 5 число всегда округляется до четного числа.
Исключающий и включающий диапазоны
Заданы следующие правила.
Для включения в результаты поиска число должно быть внутри диапазона, значения которого при округлении равны входному значению поиска.
При округлении 5, если предшествующая цифра - четная, число округляется в меньшую сторону.
Диапазон возвращаемых значений может быть разным в зависимости от того, заканчивается ли значение поиска четной или нечетной цифрой. Диапазон может быть либо включающим, либо исключающим.
При применении включающего диапазона в него включаются верхняя и нижняя границы. Если младшая значащая цифра - четная, диапазон является включающим.
Например, если заданное входное значение поиска равно 3.4, диапазон значений включает все числа, которые при округлении больше или равны 3.35 и при этом меньше или равны 3.45.
Если применяется исключающий диапазон, из него исключаются верхняя и нижняя границы. Если младшая значащая цифра - нечетная, диапазон является исключающим.
Например, если заданное входное значение поиска равно 3.3, диапазон значений включает все числа, которые при округлении больше 3.25 и при этом меньше 3.35.
Поэтому диапазон возвращаемых значений немного больше, если входное значение поиска заканчивается четной цифрой.