Партнерка на США и Канаду по недвижимости, выплаты в крипто

  • 30% recurring commission
  • Выплаты в USDT
  • Вывод каждую неделю
  • Комиссия до 5 лет за каждого referral

(1) округление к ближайшему со стороны нуля машинному числу, получаемое отсечением младших разрядов мантиссы, и

(2) округление к ближайшему машинному числу;

(II) поведение вблизи нуля Если результат вещественной операции оказывается меньше по абсолютной величине, чем минимальное положительное машинное число, то мы различаем

(3) установление результата в нуль и

(4) установление результата равным минимальному по абсо­лютной величине машинному числy со знаком, совпадающим со знаком вещественного результата,

(III) поведение в случае выхода за диапазон машинных чи­сел. Осмысленное расширение машинных интервальных опера­ций возможно лишь в исключительных случаях. Поэтому в подобной ситуации будем всегда останавливать вычисления. В теле процедуры LOW можно применить следующую конструк­цию, вызывающую останов:

'IF'X'NOTGREATER' lowerbound THEN'

'BEGIN' X:=Ø, X:=l/X 'END'

Здесь lowerbound обозначает наименьшее число с плавающей точкой, т. е..

Пyсть k — количество цифр в мантиссе, основание степени b равно 2 или 10. В тексте процедуры LOW будyт использоваться следующие обозначения:

Две последние константы на двоичной машине должны быть порождены как частное от деления двух целых чисел.

Пункты (I) и (П) дают четыре возможные комбинации их под­пунктов (1) —(3), (1) —(4), (2) —(3) и (2) —(4). Поэтому мы приводим четыре варианта для тела процедуры LOW.

У Криста можно найти доказательство того, что при­веденные тела процедур действительно реализуют округление ↓ в случае, когда X получен в результате выполнения обычной машинной операции

НЕ нашли? Не то? Что вы ищете?

Теперь, используя процедуру-функцию LOW и определяемую через нее машинную арифметику с округлениями, мы можем без труда реализовать машинные интервальные операции. Ин­тервал А=[а1, а2] представляется в виде 'ARRAY′1, где A[1] равно а1, А [2] равно а2. Заголовки процедур содержат как опи­сание интервалов-операндов А и В, так и описание результи­рующего интервала С (Текст вышеупомянутых процедур приведен ниже):

Арифметика (1), (3)

Арифмтика (1), (4)

Арифметика (2), (3)

Арифметика (2), (4)

Сложение С = А + В:

Вычитание С = А — В:

Умножение С = А × В:

Деление C = A/B:

Вкратце обсудим, как осуществить ввод интервалов. Трудность здесь состоит в том, что при чтении десятичных дроб­ных чисел может появиться погрешность при их преобразовании к внутреннему двоичному представлению. Величина этой по­грешности, вообще говоря, неизвестна. Поэтому рекомен­дуется до ввода умножить границы на величины 10п с тем, чтобы сделать их целыми числами. Эти целые числа считаются без погрешности. После ввода считанные границы делятся на 10п, а применение процедуры LOW гарантирует корректное округле­ние. Ниже приводится текст процедуры ввода, в котором <10п> обозначает выбранную соответствующим образом степень десяти.

Ввод А

Рассмотрим небольшой пример программирования интер­вальных операций. Для простоты пример оформлен таким образом, что не возни­кает необходимости во вводе и выводе интервалов.

Пример. Имеется многочлен р(х), записанный в виде

Это выражение должно быть вычислено в интервальной ариф­метике. Все коэффициенты и переменная представлены интер­валами А10=10, А9 = 9, .... А1 = 1, А0= [—0.02, —001], а X = [—0.1, —0.02]. Мы хотим определить: или нет?

(см. ниже).

Приложение С

ПРОЦЕДУРЫ НА АЛГОЛЕ

А. Локализация собственных значений

Приведем теперь текст программы, представляющей собой алгол-процедуру для итерационного уточнения границ, в кото­рых лежат собственные значения симметричных трехдиагональных вещественных матриц. Процедура реализует метод одновре­менной локализации в форме (5 из микромодуля 27). Постановка задачи приве­дена в конце микромодуля 27. Как и в микромодуле 27, собственные значения сим­метричной трехдиагональной матрицы мы будем обозначать через а характеристический многочлен для — через р(х). Его значения могут быть вычислены с помощью (10 из микромодуля 27).

При реализации метода (5 из микромодуля 27) необходимо позаботиться о том, чтобы все встречающиеся в его описании операции были заменены на соответствующие машинные интервальные опера­ции. Замену можно осуществить с помощью алгол-процедур из приложения В.

Необходимо также заметить, что все вещественные опера­ции в (5 из микромодуля 27) должны быть выполнены как операции над точеч­ными интервалами. Лишь при соблюдении этого требования можно быть уверенными в том, что локализация собственных значений будет гарантирована. Так, например, если вычисляется как интервальное выражение, то результат вычисления объемлет вещественное значение Поэтому при реализации (5 из микромодуля 27) следует различать случаи, используя функ­цию sign в виде

функция эта определена в микромодуле 27. Встречающиеся в процедуре элементы матрицы представлены как интервалы по той же са­мой причине.

Если метод (5 из микромодуля 27) выполняется так, как это указано выше, то мы получаем последовательность интервалов

которые перестают изменяться после конечного числа шагов и которые на каждом шаге содержат собственное значение λі. В процедуре EIGIMP, реализующей этот метод, в качестве кри­терия остановки выбрано выполнение равенства

Перечислим формальные параметры процедуры EIGIMP

N Целое число, задающее размерность матрицы.

А Диагональ матрицы. Компонентыслужат для представления границ, лежащих на диагонали интервалов

В Вектор элементов матрицы, лежащих над ее диагональю. Компоненты служат для представления

границ составляющих этот вектор интервалов

X Вектор, состоящий из парСлужит для

представления интервалов локализующих

собственные значения В момент вызова процедуры должен содержать первоначальные приближения После выполнения процедуры содержит локализации, уточненные согласно (5 из микромодуля 27).

ВО Булевский вектор размерности п, у которого BO[I] имеет значение 'TRUE', если на следующей итерации требуется построить новую локализацию для λі. В противном слу­чае BO[I] = 'FALSE'. Если очередная локализация ока­залась равной предыдущей, то соответствующая компо­нента ВО устанавливается в 'FALSE'. Перед вызовом EIGIMP комопненты ВО, соответствующие уточняемым компонентам X, должны быть установлены в 'TRUE', a остальные — в 'FALSE'. После выхода из EIGIMP ВО [I] = 'FALSE' для всех I.

ЕРС Вещественная неотрицательная компонента ε, такая что если ширина локализации удовлетворяет соотношению

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136