Расследование и предупреждение техногенных катастроф. Научный детектив | страница 37



2. Многочисленные расчетные алгоритмы, использующие цепочки эквивалентных преобразований, реализуемые в популярных прикладных программах, могут привести к ошибкам, если хотя бы одно из использованных преобразований изменит чувствительность решений к малым погрешностям округления. Более подробно о возникающих ошибках и несложных методах их предотвращения рассказано в работах [7], [8].

Не меньшее значение имеет и задача вычисления собственных значений (или собственных чисел) различных матриц. К необходимости решать эту математическую задачу приводят многие важные практические проблемы — такие, как вычисление частот собственных колебаний различных технических объектов, проверка условий возможного опасного резонанса между внешними воздействиями и собственными колебаниями, проверка устойчивости и многие другие проблемы. Возникают эти проблемы и в строительной механике, и при проверке прочности и устойчивости различных деталей и устройств, и в автоматическом управлении.

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

Поэтому пакеты прикладных программ обязательно должны быть дополнены небольшими дополнительными программами, которые выделяли бы «особые» системы уравнений, «особые» объекты, и предупреждали бы об этом пользователей компьютера. Эта дополнительная программа может, например, высветить на мониторе компьютера предостерегающую надпись: «Вы ведете расчет «особого» объекта, поведение которого может сильно меняться при малых неточностях в исходных данных. Советуем изменить параметры или структуру объекта и повторить расчет».

Виды «особых» матриц, для которых собственные значения очень чувствительны к малым неточностям исходных данных, и методы выделения «особых» матриц и «особых» объектов описаны в книгах [2, 3, 7].

3. В пакетах прокладных программ широко используются разнообразные алгоритмы, § 12. Опасные ошибки, обнаруженные в популярных пакетах прикладных программ, используют цепочки эквивалентных преобразований математической модели рассчитываемого объекта. При этом не уделяется должного внимания тому, что если хотя бы одно из использованных преобразований изменит чувствительность решений к малым неточностям исходных данных, или к погрешностям округления, то все решение окажется ошибочным. Примеры и методы предотвращения подобных ошибок исследовались Б. Г. Чертковым и рассмотрены в публикациях [7, 8].