Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СОДЕРЖАНИЕ 3 (2).doc
Скачиваний:
28
Добавлен:
31.08.2019
Размер:
5.65 Mб
Скачать

1. Введение

    1. Место и роль Арифметики цифровых вычислительных машин в современной науке

Фундаментальная наука включает научные знания о Мире окружающем Человека, о самом Человеке и обо всем, что создано Человеком. Предметом Фундаментальной науки является, в том числе, Чистая математика.

Прикладная наука описывает научные знания о том, как применить фундаментальные научные знания для решения практических, т.е. прикладных, задач стоящих перед Человечеством. Соответственно Прикладная математика описывает совокупность теорий, методов, алгоритмов, методик и способов применения Чистой математики для решения прикладных задач.

До создания ЭВМ Прикладная математика развивалась, ориентируясь на выполнение вычислений вручную или с помощью простых приспособлений и устройств, таких как таблицы, графики, счеты, логарифмическая линейка, арифмометры и механические счетно-решающие устройства. Толчком для бурного развития Прикладной математики послужило создание первых электронных программируемых ЭВМ. Появилась возможность выполнять столь сложные и громоздкие вычисления, которые не могли выполнить никакие реальные коллективы счетно-решающих работников за приемлемые интервалы времени. Потребность в подобных вычислениях испытывали, прежде всего, научные работники и высококвалифицированные инженеры, занятые развитием прикладной физики и созданием новой техники, в том числе ЭВМ. Именно этим специалистам стали доступны первые ЭВМ.

Прикладная математика развивается по многим направлениям и включает в себя множество разделов. В их числе Вычислительная математика и Арифметика ЭВМ. Эти два раздела связаны друг с другом.

Арифметика возникла многие тысячелетия назад, быть может, когда человек учился считать на пальцах – один, два, три, много, и стала чем-то привычным и само собой разумеющимся. Многим казалось, что в этой науке все дорожки уже протоптаны. Ее даже серьезной наукой считать перестали. Довольно подробно и интересно история Арифметики со времен Вавилона описана во втором русском издании трехтомника Д.Э. Кнута “Искусство программирования” в начале главы 4 “Арифметика”.

Создатели первых ЭВМ столкнулись с особенностями представления чисел и выполнения арифметических операций в аппаратуре. Старая Арифметика их не устраивала, и пошел творческий процесс создания Новой Арифметики. Оказалось, что возможности для поиска решений в этой области знаний неисчерпаемо велики. За работу взялись конструкторы ЭВМ и математики Прикладники. Сложилось новое научное направление Машинная арифметика.

В Машинной арифметике, закладываемой в конкретные ЭВМ, наступил полный хаос. Каждый конструктор стремился вложить в свою Машину что-нибудь новенькое и лучшее и упорно отстаивал свои предложения. Как следствие этому оказалось, что одни и те же вычисления при одних и тех же исходных данных выполненные на ЭВМ разного типа приводят порой к совершенно разным результатам. Какой же из них правильный, и есть ли среди них правильный? Какова достоверность информации выдаваемой ЭВМ?

Результат выполнения программы зависит не только от метода Вычислительной математики положенного в ее основу, а и от того, какой Арифметикой владеет ЭВМ, на которой выполнялась программа. Поэтому результаты выполнения одной и той же программы на ЭВМ разного типа, использующих разную Арифметику, могут очень сильно отличаться и быть весьма далекими от правильного.

В Чистой математике крестикам (+ ×) и черточкам (– /) приводят в соответствие вполне определенные операции сложения, умножения, вычитания и деления и все интерпретируют их совершенно одинаково, считая, что операции выполняются абсолютно точно и значения любых выражений в земных условиях и в любой другой звездной системе всегда совпадают. Только воспользоваться ее достижениями в интересах практики весьма сложно. Рассмотрим пример.

Шеф показал на медный круг и сказал:

– “Мне нужно знать его площадь с погрешностью не более 0,2%. Измерь диаметр и посчитай”.

Я взял метровую линейку и стал измерять диаметр. Получилось толи 903, толи 904 мм.

Чистая математика определяет площадь круга

(1-01)

и делает это очень точно. Я стал считать.

Вычислил радиус. Получил 903/2=451,5 мм.

На всякий случай 904/2=452 мм.

Вычислил квадрат радиуса:

451,52=203852,25 мм2 или 4522=204304 мм2.

Больно уж много цифр. Ну и что, решил я. Я ведь вычислил точно.

Умножаю на . Но число имеет бесконечно много цифр. Моей жизни не хватит, чтобы их все записать. Как быть? Округлить, как меня учили в школе. А сколько взять цифр? Одну, две или больше? По какому правилу округлить? Не знаю. Но поскольку 451,52 имеет 8 цифр, возьму я в тоже 8 цифр и округлю до ближайшего числа (так точнее). Тогда .1

Умножаю и получаю:

мм2;

мм2.

Больно много цифр, и только две первые совпадают. Как быть? Возьму я их полусумму, и поскольку Шеф хочет получить площадь круга с погрешностью не более 0,2%, округлю до 4 разрядов, поточнее. Посчитал:

.

Округлил до 4 разрядов, получил: S=641100 мм2, и с этим пошел к Шефу.2

Шеф спросил:

– “Как ты считал?”.

Я рассказал, он выслушал и предложил мне написать Заявление об увольнении по собственному желанию.

“За что так?”, – спросил я.

“За безграмотность”, – ответил шеф.

Я взмолился. Шеф пожалел и сказал:

– “Тогда освой теорию и практику измерений, вычислительную математику и научись вычислять на ЭВМ. Запомни, за достоверность результатов вычислений отвечаешь ты, а не ЭВМ. ЭВМ железка, с нее не спросишь”.

Потом я понял, что вначале следовало определить способ вычисления результата и предельно допустимые погрешности исходных данных (в примере: диаметр и ), чтобы можно было вычислить результат с заданной предельно допустимой погрешностью. Затем выбрать инструмент требуемого класса точности для измерения диаметра круга. Так как круг не круг, его только хотели изготовить кругом, и его окружность не окружность, а сложная замкнутая кривая, то измерение диаметра следует выполнить в нескольких разных местах и усреднить. В скольких местах, и в каких местах, на эти вопросы ищи ответы в Теории измерений. Там же прописано, что линейные размеры деталей должны быть даны при температуре 20оС, а я измерял при +30оС да еще на солнышке. А если бы я измерял зимой, да при -40оС? Следовательно, необходимо измерять не только диаметр, а и температуру. С какой точностью, каким прибором, в каких точках, какова должна быть точность коэффициента температурного расширения меди? А если это сплав? Это ведь я решил, что он медный.

Формула (1-01) незаметно обрастает другими. Исходных данных не два, а много. Они приближенные действительные числа.

Для вычисления S можно написать разные программы, вычисляющие в разной последовательности. Например, можно вначале внести поправку на температуру в каждый результат измерения диаметра, а потом усреднить. Можно усреднить диаметры, а потом внести поправку. Казалось бы, какая разница, в какой последовательности вычислять. Но ЭВМ при выполнении программ переводит числа из одной системы счисления в другую и выполняет арифметические операции, округляя промежуточные и конечные результаты по правилам, заложенным в нее конструктором. Результат вычислений зависит от порядка вычислений, от способов представления и округления чисел в ЭВМ. Какой из них имеет требуемую точность? Какова достоверность результата?

Необходимо учитывать особенности Арифметики ЭВМ. Ведь отвечать за достоверность результата буду я, а не ЭВМ. А что если не достоверный результат приведет к катастрофе.

“Какой кошмар, какая сложность”, – подумал Начинающий.

“Тоже мне пример, элементарщина. Нужные мне вычисления ЭВМ выполняет порой за час и выдает достоверные результаты”, – подумал Профессионал.

“Вы оба правы”, – сказал бы я им. И молодому, Начинающему добавил, – “В третьем классе таблица умножения это был кошмар, а теперь? “Не Боги горшки обжигают”. “Взялся за гуж, не говори, что не дюж”.

Пример действительно элементарный, но показательный. Он вскрывает теснейшую взаимосвязь тройки прикладных дисциплин: Теории и практики измерений, Вычислительной математики и Арифметики ЭВМ. В конечном итоге эта тройка призвана обеспечивать достоверное решение практических задач с применением ЭВМ в теснейшей взаимосвязи, но, к сожалению, до сей поры она не обеспечивает в полном объеме стоящую перед ней задачу. Не правда ли, уважаемый Профессионал, Вам хотелось бы иметь программу, автоматически определяющую по математической модели исходных данных и функции оптимальный порядок вычислений для получения результата с заданной точностью. Программу, указывающую достижима ли требуемая точность результата, и какие требования необходимо предъявить к точности исходных данных, способам представления и округления промежуточных результатов в ЭВМ, чтобы получить требуемую точность результата. Где она? Что мешает написать подобную программу? Отсутствие единой теории приближенных вычислений на ЭВМ, охватывающей все три дисциплины. Этот недостаток зачастую приводит к недопустимо большим ошибкам в результатах выполнения программ и к невосполнимым потерям, в том числе к гибели людей.

Единая теория приближенных вычислений должна учесть особенности Арифметики современных ЭВМ или предъявить к Арифметике ЭВМ обоснованные требования. В последнем случае конструкторы ЭВМ должны их неукоснительно соблюдать. К сожалению Арифметика современных ЭВМ и Теория приближенных вычислений не обеспечивают необходимую взаимную поддержку.

Молодым и Начинающим. Именно Вы решите эту задачу сближения двух математик, и Ваши ЭВМ будут гарантировать достоверность вычислений. Но для того, чтобы это сделать и научиться пользоваться правильно тем, что имеем, нужно хорошо овладеть всей тройкой дисциплин такой, какова она есть сегодня.