Читать онлайн «Вычислительный эксперимент в задачах нелинейной динамики»

Автор Кондратьев А.С.

Если в процессе экспериментальных исследований, проводимых небольшой фуппой ученых, возникает необходимость проведения численного эксперимента для исследования модели, КОМПЬЮТЕР В УЧЕБНОМ ПРОЦЕССЕ 53 Кондратьев А. С, Ляпцев А. В. объясняющей новые качественные экспериментальные результаты, то возникает естественный вопрос: стоит ли подключать специалистов, математиков и программистов или можно попробовать обойтись «своими силами». Выбор второго варианта может оказаться целесообразным в силу нескольких причин. Во-первых, часто для численного исследования достаточно не создавать принципиально новую математическую модель, а внести некоторые коррективы в уже существующую модель. Например, часто физические и биологические процессы моделируются системами балансных уравнений (см. [1, 2]), и для объяснения нового качественного эффекта может оказаться достаточным добавить дополнительные члены в эту систему. Во-вторых, экспоненциальный рост мощности компьютеров привел к соответствующему росту программного обеспечения, в результате чего были разработаны интегрированные вычислительные среды, значительно упрощающие проведение этапов, связанных с разработкой алгоритмов численного решения задачи и программирования. Большинство интегрированных сред, например, такие как Mathcad, Mathematica, Matlab, Maple, Derive, содержат встроенные процедуры, реализующие наиболее часто встречающиеся численные методы, включая такие сложные методы, как численное решение дифференциальных уравнений в частных производных.
Используя стандартные процедуры этих сред можно выводить разнообразную графическую информацию, касающуюся полученных результатов, включая анимацию различных временных процессов. Использование встроенных процедур значительно упрощает этапы вычислительного эксперимента, относящиеся к разработке алгоритма, программирования и тестирования программы. По сути, вместо досконального изучения численных методов и создания алгоритмов, реализующих их, требуется научиться грамотно обращаться к соответствующей процедуре, что является, несомненно, более простой задачей. Проводя аналогию с реальным экспериментом, можно сказать, что от исследователя требуется не заново конструировать свой прибор из различных деталей, а научиться пользоваться уже готовым прибором, предназначенным для данных исследований. Конечно же, для проведения уникальных экспериментов требуется создание новых приборов, однако во многих исследованиях целесообразно использовать уже имеющееся надежное и апробированное оборудование. Важной особенностью вычислительных сред является использование языка программирования более высокого уровня, чем традиционно изучаемые языки (Паскаль, СИ и др. ) Так, например, в среде Matlab реализован язык программирования сверхвысокого уровня, ориентированный на работу с матрицами. Программирование на таком языке, с одной стороны, сокращает объем программы и, соответственно, временные затраты по ее созданию в той же пропорции, как переход с языка программирования низкого уровня (Ассемблер) на язык программирования высокого уровня (Паскаль, СИ), а с другой стороны, не является принципиально более сложным, чем профаммирование на языках высокого уровня.